Simon Riggs wrote:
> I'm seeing these messages in the standby server log:
>
> WARNING: unlogged operation performed, data may be missing
> HINT: This can happen if you temporarily disable archive_mode without
> taking a new base backup.
> CONTEXT: xlog redo unlogged operation: heap inserts on "pg_temp_65646"
>
> which connected with operations on temp tables, probably as a result of
> VACUUM FULL and CLUSTER.
>
> I don't think those messages should be there.
Hmm. The "unlogged" record is written here:
...
void
heap_sync(Relation rel)
{
char reason[NAMEDATALEN + 30];
/* temp tables never need fsync */
if (rel->rd_istemp)
return;
snprintf(reason, sizeof(reason), "heap inserts on \"%s\"",
RelationGetRelationName(rel));
XLogReportUnloggedStatement(reason);
...
So it clearly shouldn't be written for temp relations. Apparently the
rd_istemp flag not set correctly after CLUSTER / VACUUM FULL.
Can you reproduce that?
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers