Search Postgresql Archives

Re: Backend crash with user defined aggregate

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tom Lane wrote:
Ron Mayer <rm_pg@xxxxxxxxxxxxxxxxxxxxxxx> writes:
...aggregate function that concatenates any non-null strings it encounters...crashes...

I tried this example in CVS tip and didn't see any particular misbehavior.

One thing is that my table is quite large (20 GB or so of data in that
table with most of it in that column called 'val' being aggregated).
When I try it on small tables (100k rows) I get no problems.


What PG version are you running?

fli=# select version();
                                       version
-------------------------------------------------------------------------------------
 PostgreSQL 8.0.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.3.3 (SuSE Linux)
(1 row)

Does EXPLAIN show that the query is
being done with a group or hash aggregation?

Fails the same way in each case.  It was doing a HashAggregate last time; but
I just reproduced it now with a GroupAggregate.


fli=#
fli=# explain select ext_doc_id,strcat_agg(nam)||+strcat_agg(val) from facet_raw group by ext_doc_id;
                                QUERY PLAN
---------------------------------------------------------------------------
 HashAggregate  (cost=216543.88..216737.30 rows=9671 width=46)
   ->  Seq Scan on facet_raw  (cost=0.00..118746.32 rows=5588432 width=46)
(2 rows)

fli=# set enable_hashagg = false;
SET
fli=# explain select ext_doc_id,strcat_agg(nam)||+strcat_agg(val) from facet_raw group by ext_doc_id;
                                   QUERY PLAN
---------------------------------------------------------------------------------
 GroupAggregate  (cost=951426.23..1063388.29 rows=9671 width=46)
   ->  Sort  (cost=951426.23..965397.31 rows=5588432 width=46)
         Sort Key: ext_doc_id
         ->  Seq Scan on facet_raw  (cost=0.00..118746.32 rows=5588432 width=46)
(4 rows)

fli=# explain analyze select ext_doc_id,strcat_agg(nam)||+strcat_agg(val) from facet_raw group by ext_doc_id;
FATAL:  terminating connection due to administrator command
server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
The connection to the server was lost. Attempting reset: Succeeded.
fli=#


What do you have sort_mem set to?


fli=# show sort_mem;
 work_mem
----------
 51829
(1 row)

fli=#


---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux