From: | Nickolay <nitro(at)zhukcity(dot)ru> |
---|---|
To: | |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: transaction delays to apply |
Date: | 2009-08-13 13:31:29 |
Message-ID: | 4A8415B1.4020203@zhukcity.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
Tom Lane wrote:
> Nickolay <nitro(at)zhukcity(dot)ru> writes:
>
>> BUT it seems that rarely this transaction is being delayed to apply and
>> log entry is being inserted in wrong order:
>> ID timestamp
>> 1 2009-08-08 00:00:00.111
>> 2 2009-08-08 00:00:30.311
>> 3 2009-08-08 00:00:00.211
>> Yep, that's right - sometimes for 30 seconds or even more.
>>
>
> You haven't provided enough information to let anyone guess at the
> problem. Have you checked to see if one of the processes is blocking
> on a lock, or perhaps there's a sudden spike in system load, or what?
> Watching pg_stat_activity, pg_locks, and/or "vmstat 1" output during
> one of these events might help narrow down what's happening.
>
> regards, tom lane
>
>
Thank you, guys. Problem's solved. I'm guilty and stupid :-)
One of the SELECT's in the transaction was wrong. Its job was to select
messages from archive by several conditions, including:
date_time::date = now()::date
(i.e. timestamp field "date_time" was being converted to date type).
After first run, postgresql seems to fix my mistake by cache or
something else and futher SELECT's are being executed in a matter of
milliseconds.
Fixed the statement to:
date_time >= now()::date
and now everything seems to work just fine even at first run.
Best regards, Nick.
From | Date | Subject | |
---|---|---|---|
Next Message | Matthew Wakeling | 2009-08-13 14:16:13 | How to run this in reasonable time: |
Previous Message | Nickolay | 2009-08-13 11:54:47 | Re: transaction delays to apply |