Tom Lane <tgl@sss.pgh.pa.us> wrote:
> The major problem with all of this is that the bgwriter has no
> idea which buffers contain heap pages. And I'm not convinced it's
> a good idea to try to let it know that. If we get to the point
> where bgwriter is trying to do catalog accesses, we are in for a
> world of pain. (Can you say "modularity violation"? How about
> "deadlock"?)
How about having a BackgroundPrepareForWriteFunction variable
associated with each page the bgwriter might see, which would be a
pointer to a function to call (if the variable is not NULL) before
writing? The bgwriter would still have no idea what kind of page it
was or what the function did....
-Kevin