The following bug has been logged on the website: Bug reference: 8451 Logged by: strexxx Email address: stephane.wust...@lip6.fr PostgreSQL version: 9.1.9 Operating system: Linux 3.8.0-27-generic #40-Ubuntu SMP x86_64 Description:
A query such as this one COPY (SELECT e,quantile(EXTRACT(EPOCH FROM(d)),ARRAY[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1]) AS d FROM (SELECT e,max(time)-min(time) AS d FROM bb RIGHT JOIN (SELECT s,e FROM ss RIGHT JOIN (SELECT e FROM ee WHERE h ~* 'blah') AS i0 USING(e)) AS i0 USING (sessionid) GROUP BY e,ei) AS i1 GROUP BY e) TO 'full_path/d.csv' WITH CSV;" generates this ... 403,"{0.101187,0.139183,0.189162,0.271442,0.405427,0.731997,1.178445,2.52971,4.288747,9.544644,8996.364885}" 404,"{8996.364885,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322}" 437,"{0.10007,0.204397,0.266877,0.48238,0.669026,0.911554,1.275652,1.656346,2.445659,3.909159,58915.291602}" 438,"{58915.291602,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322}" 440,"{58915.291602,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322,3.16202013338398e-322}" ... for row that gets corrupted, the value d, for which quantiles are computed over, is NULL (there is no such row matching conditions and JOIN). I would expect the quantiles to be NULL as well. Additionally there is a strange pattern: the last value of the row preceding a corrupted one, is repeated as the first value of the corrupted rows that comes after. The other values correspond to something somewhat close to 2^-1068 (why ?) ... This subquery corresponding to one of the corrupted case works correctly (from my understanding) SELECT s,quantile(EXTRACT(EPOCH FROM(d)),ARRAY[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1]) AS d FROM (SELECT s,max(time)-min(time) AS d FROM bb WHERE s = 440 GROUP BY s,e) AS i1 GROUP BY s; s | d -----------+---------- (0 rows) -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs