And I see now that he's doing a stream of read-only queries on a slave,
presumably with no WAL even being replayed...
Sorry for the noise....
a.
* Aidan Van Dyk <aidan@highrise.ca> [100412 09:40]:
> * Robert Haas <robertmhaas@gmail.com> [100412 07:10]:
>
> > I think we need to investigate this more. It's not going to look good
> > for the project if people find that a hot standby server runs two
> > orders of magnitude slower than the primary.
>
> Yes, it's not "good", but it's a known problem. We've had people
> complaining that wal-replay can't keep up with a wal stream from a heavy
> server.
>
> The master producing the wal stream has $XXX seperate read/modify
> processes working over the data dir, and is bottle-necked by the
> serialized WAL stream. All the seek+read delays are parallized and
> overlapping.
>
> But on the slave (traditionally PITR slave, now also HS/SR), has al
> lthat read-modify-write happening in a single thread fasion, meaning
> that WAL record $X+1 waits until the buffer $X needs to modify is read
> in. All the seek+read delays are serialized.
>
> You can optimize that by keepdng more of them in buffers (shared, or OS
> cache), but the WAL producer, by it's very nature being a
> multi-task-io-load producing random read/write is always going to go
> quicker than single-stream random-io WAL consumer...
>
> a.
>
> --
> Aidan Van Dyk Create like a god,
> aidan@highrise.ca command like a king,
> http://www.highrise.ca/ work like a slave.
--
Aidan Van Dyk Create like a god,
aidan@highrise.ca command like a king,
http://www.highrise.ca/ work like a slave.