On 14.06.2013 17:01, Andres Freund wrote:
At this point we have a page that has been modified without an FPI. But
it's not marked dirty, so it won't be written out without further
cause. Which might be fine since there's no cause to write out the page
and there probably won't be anyone doing that without logging an FPI
independently.
Can anybody see a scenario where this is actually dangerous?

The code also relies on that being safe during recovery:

                         * If we're in recovery we cannot dirty a page because 
of a hint.
                         * We can set the hint, just not dirty the page as a 
result so the
                         * hint is lost when we evict the page or shutdown.
                         *
                         * See src/backend/storage/page/README for longer 
discussion.
                         */
                        if (RecoveryInProgress())
                                return;

I can't immediately see a problem with that.

- Heikki


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to