Autovacuum & Table List Ordering - Mailing list pgsql-hackers

From Usama Dar
Subject Autovacuum & Table List Ordering
Date
Msg-id ff0e67090801020700p3d48c893wff24df2284436778@mail.gmail.com
Whole thread Raw
Responses Re: Autovacuum & Table List Ordering
List pgsql-hackers
OK, so i was going through the autovacuum code and i noticed that when we construct the table list to vacuum in a
databaseper run, we don't process them in a particular order. I mean since we pick the list up from pg_class so it may
beordered on oid? but when we select a database we have a priority  algo, which select the db's in XID wraparound 
dangerfirst, and that too the in an order that the db nearest to the XID wraparound is picked first <br /><br />So
wouldn'tit make sense to pick up the tables in a similar order as well? like sorting the list on (deadtuples -
calculatedthreshold) this way we will be vacuuming the tables in more need first.<br /><br />Without an order i can
imaginea scenario where a table which is near a wrap-around or has more dead-rows waiting  or possible having the XID
warparoundwhile another big table takes a lot of time. <br /><br />With the launcher - worker architecture in 8.3 the
situationwill improve as you can have multiple workers vacuuming multiple tables in parallel, but having some order
therewould also help , i would think.<br /><br clear="all" /> Thanks,<br />-- <br />Usama Munir Dar <a
href="http://www.linkedin.com/in/usamadar">http://www.linkedin.com/in/usamadar</a><br/>Consultant Architect<br
/>Cell:+92321 5020666<br />Skype: usamadar <br /> 

pgsql-hackers by date:

Previous
From: Martijn van Oosterhout
Date:
Subject: Re: Index Page Split logging
Next
From: "Abraham, Danny"
Date:
Subject: Slow count(*)