Robert Haas wrote: > I think the key question here is the time for which the data needs to > be retained. 2^32 of anything is a lot, but why keep around that > number of records rather than more (after all, we have epochs to > distinguish one use of a given txid from another) or fewer?
The problem is not how much data we retain; is about how much data we can address. We must be able to address the data for transaction with xid=2^32-1, even if you only retain the 1000 most recent transactions. In fact, we already only retain data back to RecentXmin, if I recall correctly. All slru.c users work that way. Back when pg_multixact/members had the 5-char issue, I came up with a patch that had each slru.c user declare how many chars maximum were the filenames. I didn't push further with that because there was an issue with it, I don't remember what it was offhand (but I don't think I posted it). But this is only needed so that the filenames are all equal width, which is mostly cosmetical; the rest of the module works fine with 4- or 5-char filenames, and can be trivially expanded to support 6 or more. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers