Re: Does CLUSTER generate WAL data? - Mailing list pgsql-admin

From Craig James
Subject Re: Does CLUSTER generate WAL data?
Date
Msg-id CAFwQ8rcS-eT_oNWZPOZeKbAkSFjkTvpU8NiUDK6kEWaZ5byjbA@mail.gmail.com
Whole thread Raw
In response to Re: Does CLUSTER generate WAL data?  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: Does CLUSTER generate WAL data?
List pgsql-admin


On Wed, Aug 24, 2016 at 4:49 PM, David G. Johnston <david.g.johnston@gmail.com> wrote:
On Wed, Aug 24, 2016 at 7:06 PM, Craig James <cjames@emolecules.com> wrote:
I know the CLUSTER command essentially creates a new table, copies the data in INDEX order, then deletes the original table.

Does that mean all of the data passes through the WAL logs, or is it purely an internal operation? More specifically, if we're doing streaming replication, will all of the data for the table being clustered be transmitted across the network to the hot-standby slave?


Not looking at the code but, yes, the replica must be an exact physical duplicate of the master and since the only ongoing source of data for the replica is the WAL the actions taken as part of performing a CLUSTER must be logged.

Right, I understand that the WAL has to record the operation. But I'm not sure that answers the question. If the contents of the WAL are, "copy this table to that table in index order", then no data from the table itself will be in the WAL. On the other hand, if the contents of the WAL are "create a new table, and then insert all of this data", then the WAL records will be huge.

Which is it?

Thanks,
Craig


David J.




--
---------------------------------
Craig A. James
Chief Technology Officer
eMolecules, Inc.
---------------------------------

pgsql-admin by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Does CLUSTER generate WAL data?
Next
From: Scott Ribe
Date:
Subject: Re: Does CLUSTER generate WAL data?