Zeugswetter Andreas DCP SD wrote: > > > > But what about index clearing? When do you scan each index? > > > > At the end of each iteration (or earlier, depending on > > maintenance_work_mem). So for each iteration you would need > > to scan the indexes. > > > > Maybe we could make maintenance_work_mem be the deciding > > factor; after scanning the indexes, do the release/reacquire > > locks cycle. > > But you could do the indexes first and remember how far you can > vacuum the heap later. > > So you might as well do each index separately first and remember > how far you can go with the heap for each one. > Then do the heap with a special restriction that comes from what you > remembered from the indexes. > You can now separate the heap vacuum in arbitrarily large transactions, > since the indexes are already taken care of. > > (You only vacuum to the point of the eldest vacuumed index)
I thought you need to know the heap tids to remove from the index, so how do you do the index first? -- Bruce Momjian http://candle.pha.pa.us SRA OSS, Inc. http://www.sraoss.com + If your life is a hard drive, Christ can be your backup. + ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match