On Tue, 2003-08-05 at 17:40, Christopher Browne wrote: > Unfortunately, a "configurable-via-tables" pg_autovacuum is also going > to be quite different from the current "unconfigurable" version.
true, however I would like to preserve the "unconfigured" functionality so that it can be run against a totally unmodified database cluster. If it finds configuration information on the server then it uses it, otherwise it just acts as it does now. > But at that point, it makes sense to add in quite a bit of > "configurable" behaviour, such as: > > -> Specifying that certain tables should _never_ be automatically > vacuumed. agreed > -> Establishing a "queue" of tables that pg_autovacuum plans to > vacuum, so that users could add in desired vacuums ("after the > other stuff being handled, force in a vacuum of app_table_foo"). > That way, vacuums can be 'forced in' without introducing the > possibility that multiple vacuums might be done at once... makes sense. > -> Making information about what vacuums have been done/planned > persistent across runs of pg_autovacuum, and even across > shutdowns of the DBMS. good. > This changes behaviour enough that I'm not sure it's the same > "program" as the unconfigurable version. Almost every option would be > substantially affected by the logic: > > if (CONFIG_DATA_IN_DB) { > /* Logic path that uses data in Vacuum Schema */ > } else { > /* More banal logic */ > } I'm not so sure it's that different. In either case we are going to have a threshold and decide to vacuum based on that threshold. The change is only that the data would be persistent, and could be customized on a per table basis. The logic only really changes if running unconfigured uses different data than the configured version, which I don't see as being proposed. > If I can store configuration in the database, then I'd like to also > make up a view or two, and possibly even base the logic used on views > that combine configuration tables with system views. In effect, that > makes for a _third_ radically different option. Not sure I see what all you are implying here. Please expand on this if you deem it worthy. I guess I'll start coding again. I'll send an email to the hackers list tomorrow evening with as much info / design as I can think of. Matthew ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings