On 2/26/2015 9:44 AM, David F. Skoll wrote:
> Hi,
>
> I posted this a couple of weeks ago and no response... I guess it's
> quite mysterious.
>
> Anyway, behavior is consistent. It seems that long-running
> transactions on the primary (even read-only ones, because in my case
> it's a pg_dump) can block subsequent transactions from appearing on
> the hot-standby until the first transaction finishes. Is this a known
> limitation? I run 9.1; is it still present in 9.4?
>
> Regards,
>
> David.
>
> ========================================================================
> [...]
>
>> I have a monitoring script that tests the actual delay for a
>> transaction on the master to appear on the hot-standby. Every few
>> minutes, my script runs an update on the master and then sits in a
>> loop checking how long it takes to appear on the hot-standby. 99% of
>> the time, it's less than a second.
>> But every once in a while, the time spikes dramatically, to hundreds
>> or thousands of seconds, and that's too long... the delay-tolerant
>> queries are not *that* delay-tolerant, so we switch to sending them
>> all to the master.
>> See the graph: http://ibin.co/1rdm4ekiWmpM
> [...]
Apologies, David, but as I don't check this list very often, I thought you should have received an answer. Have you
triedwatching the transaction with tcpdump or wireshark? To me
this sounds like either a network problem or like you're thinking a contention problem. Also, are you running streaming
replication?If so, there shouldn't be ANY delay as the
standby gets the commit before the primary. Otherwise, how are you replicating?
--
Jay