Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

pg_dump produces invalid SQL for "group by cast(null as numeric)"


  • From: Martin Pitt <martin(at)piware(dot)de>
  • To: PostgreSQL Bugs <pgsql-bugs(at)postgresql(dot)org>
  • Cc: ubuntubug(at)acrasis(dot)net
  • Subject: pg_dump produces invalid SQL for "group by cast(null as numeric)"
  • Date: Sat, 5 Jan 2008 21:43:57 +0100
  • Message-id: <20080105204357.GC6062@piware.de> <text/plain>

Hi PostgreSQL developers,

in [1], a user reported a failure of pg_dump:

-------- snip ----------
1. Create an empty database.

2. Connect to the database and create these views:

create view foo as select 3;
create view bar as select count(*) from foo group by cast(null as numeric);

3. pg_dump the database to a text file. The file contains

   'CREATE VIEW bar AS
       SELECT count(*) AS count FROM foo GROUP BY 2;'

4. Drop view bar from the database.

5. Run the CREATE VIEW bar..; statement from the text file.

6. The statement fails with

   'ERROR: GROUP BY position 2 is not in select list'
-------- snip ----------

I verified that this is still an issue on 8.3 CVS head.

However, I admit that I'm not sure why "group by cast(null as
numeric)" is useful. However, it actually works in the DB and fails in
pg_dump, so either it is valid and should be handled by pg_dump, or it
is invalid and should not be accepted in the first place.

Thank you!

Martin

[1] https://bugs.launchpad.net/bugs/177382

-- 
Martin Pitt        http://www.piware.de
Ubuntu Developer   http://www.ubuntu.com
Debian Developer   http://www.debian.org

Attachment: signature.asc
Description: Digital signature



Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group