Robert Haas <robertmh...@gmail.com> writes: > On Thu, Aug 5, 2010 at 7:05 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: >> One thing that I find rather distressing about this is the 25% bloat >> in sizeof(SharedInvalidationMessage). Couldn't we avoid that? Is it >> really necessary to *ever* send an SI message for a backend-local rel?
> It can be dropped or unlinked by another backend, so, yes. Really? Surely that should be illegal during normal operation. We might be doing such during crash recovery, but we don't need to broadcast sinval messages then. It might be sufficient to consider that there are "local" and "global" smgr inval messages, where the former never get out of the generating backend, so a bool is enough in the message struct. > had was that if we could count on the backend ID to fit into an int16 > we could fit it in to what's currently padding space. That would > require rather dramatically lowering the maximum number of backends > (currently INT_MAX/4), but it's a little hard to imagine that we can > really support more than 32,767 simultaneous backends anyway. Yeah, that occurred to me too. A further thought is that the id field could probably be reduced to 1 byte, leaving 3 for backendid, which would certainly be plenty. However representing that in a portable struct declaration would be a bit painful I fear. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers