Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without
От | Heikki Linnakangas |
---|---|
Тема | Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without |
Дата | |
Msg-id | 4B669FF8.806@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without (Simon Riggs <simon@2ndQuadrant.com>) |
Ответы |
Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an
operation without
Re: Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without |
Список | pgsql-hackers |
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
В списке pgsql-hackers по дате отправления: