Fwd: Not so simple query and a half million loop

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

 



Hi, all!

No one knows why I got "actual time=0.014..0.570 rows=30 loops=511222"
and "actual time=0.005..0.006 rows=1 loops=15158976"?

With:
 cu.cal_user_type = 'u' AND
 cu.cal_recur_date = COALESCE((SELECT cd.cal_start FROM egw_cal_dates
icd WHERE icd.cal_id = cd.cal_id AND icd.cal_start = cd.cal_start AND
icd.cal_start <> 0), 0)
 ~ 450 seconds

With
 cu.cal_user_type = 'u'
 ~ 130 ms

With
 cu.cal_recur_date = COALESCE((SELECT cd.cal_start FROM egw_cal_dates
icd WHERE icd.cal_id = cd.cal_id AND icd.cal_start = cd.cal_start AND
icd.cal_start <> 0), 0)
 ~ 1 second

I've tryied to increase statistics to maximum, with no success.

This is the eGroupware database schema, with a few records.

The complete queries and plan folows.

---------- Forwarded message ----------
From: Daniel Cristian Cruz <danielcristian@xxxxxxxxx>
Date: 2008/12/1
Subject: Not so simple query and a half million loop
To: pgsql-admin <pgsql-admin@xxxxxxxxxxxxxx>


I've tryied 4 times to post this message to pgsql-performance without
success... No return, even an error...

-- 
Daniel Cristian Cruz
クルズ  クリスチアン ダニエル

Attachment: query.sql
Description: Binary data

-- 
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux