Re: [GENERAL] Possible bug with array_agg
Hello 2009/11/19 Scott Bailey : > On 8.4.0 I found that array_agg does not return a value when fed more than > 12,000 values. (12,000 worked and 13,000 did not.) > can you send a query? postgres=# create table f(a int); CREATE TABLE postgres=# insert into f select * from generate_series(1,10); INSERT 0 10 postgres=# select count(*) from (select unnest(array_agg(a)) from f) s; count 10 (1 row) it's look well Regards Pavel Stehule > Probably not a big deal because its not something you would typically do. I > was testing something else and ran into it. But if there is a limit there, > we should probably document it. > > Scott Bailey > > -- > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general > -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
Re: [GENERAL] Possible bug with array_agg
Scott Bailey writes: > On 8.4.0 I found that array_agg does not return a value when fed more > than 12,000 values. (12,000 worked and 13,000 did not.) What do you mean by "does not return a value"? In general, giving a specific test case is a lot more helpful than this sort of vague report. Whatever you're seeing could easily depend on the specific data you're aggregating, for example. regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
Re: [GENERAL] Possible bug with array_agg
Pavel Stehule wrote: Hello 2009/11/19 Scott Bailey : On 8.4.0 I found that array_agg does not return a value when fed more than 12,000 values. (12,000 worked and 13,000 did not.) can you send a query? postgres=# create table f(a int); CREATE TABLE postgres=# insert into f select * from generate_series(1,10); INSERT 0 10 postgres=# select count(*) from (select unnest(array_agg(a)) from f) s; count 10 (1 row) it's look well As you were. Above worked for me as well. It appears to be a problem with pgAdmin. -- Returns nothing SELECT a FROM ( select array_agg(a) a from f ) s -- Works SELECT a FROM ( select array_agg(a) a from f WHERE a < 12000 ) s -- Returns nothing SELECT a FROM ( select array_agg(a) a from f WHERE a < 13000 ) s When I ran in different client all queries returned results. Scott -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
Re: [GENERAL] Possible bug with array_agg
Le jeudi 19 novembre 2009 à 20:45:36, Scott Bailey a écrit : > Pavel Stehule wrote: > > Hello > > > > 2009/11/19 Scott Bailey : > >> On 8.4.0 I found that array_agg does not return a value when fed more > >> than 12,000 values. (12,000 worked and 13,000 did not.) > > > > can you send a query? > > > > postgres=# create table f(a int); > > CREATE TABLE > > postgres=# insert into f select * from generate_series(1,10); > > INSERT 0 10 > > postgres=# select count(*) from (select unnest(array_agg(a)) from f) s; > > count > > > > 10 > > (1 row) > > > > it's look well > > As you were. Above worked for me as well. It appears to be a problem > with pgAdmin. > > -- Returns nothing > SELECT a > FROM ( > select array_agg(a) a from f > ) s > > -- Works > SELECT a > FROM ( > select array_agg(a) a from f > WHERE a < 12000 > ) s > > -- Returns nothing > SELECT a > FROM ( > select array_agg(a) a from f > WHERE a < 13000 > ) s > I'm not sure which release you use, but it works for me (1.10 and 1.11). The result of the first query is badly displayed (remember that it tries to display an array of 10 integers), but the query returns something that pgAdmin tries to display. The others work too but the display is much better. -- Guillaume. http://www.postgresqlfr.org http://dalibo.com -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
Re: [GENERAL] Possible bug with array_agg
I'm not sure which release you use, but it works for me (1.10 and 1.11). The result of the first query is badly displayed (remember that it tries to display an array of 10 integers), but the query returns something that pgAdmin tries to display. The others work too but the display is much better. Using 1.10. It displays nothing on Windows version. Displays a bunch of overlapping text on Linux. Oh well, that doesn't matter, as long as array_agg is doing what it should. Scott -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
Re: [GENERAL] Possible bug with array_agg
2009/11/19 Scott Bailey : > Pavel Stehule wrote: >> >> Hello >> >> 2009/11/19 Scott Bailey : >>> >>> On 8.4.0 I found that array_agg does not return a value when fed more >>> than >>> 12,000 values. (12,000 worked and 13,000 did not.) >>> >> >> can you send a query? >> >> postgres=# create table f(a int); >> CREATE TABLE >> postgres=# insert into f select * from generate_series(1,10); >> INSERT 0 10 >> postgres=# select count(*) from (select unnest(array_agg(a)) from f) s; >> count >> >> 10 >> (1 row) >> >> it's look well > > As you were. Above worked for me as well. It appears to be a problem with > pgAdmin. > > -- Returns nothing > SELECT a > FROM ( > select array_agg(a) a from f > ) s > > -- Works > SELECT a > FROM ( > select array_agg(a) a from f > WHERE a < 12000 > ) s > > -- Returns nothing > SELECT a > FROM ( > select array_agg(a) a from f > WHERE a < 13000 > ) s > > When I ran in different client all queries returned results. This is pgAdmin problem - to long for cell - I thing. Usually I am testing problematic queries in psql console. try SELECT ARRAY(SELECT * FROM f) it would not work in pgAdmin too - probably. Regards Pavel Stehule > > Scott > -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general