Hi,

On 2025-09-17 12:01:47 -0400, Robert Haas wrote:
> > I keep thinking about how we handle parallelism in index builds. The
> > index AM API did not get a bunch of new callbacks, it's all handled
> > within the existing ambuild() callback. Shouldn't we be doing something
> > like that for relation_vacuum()?
> 
> I have a feeling that we might have made the wrong decision there.

You might be right.

> That approach will probably require a good deal of code to be
> duplicated for each AM. I'm not sure what the final solution should
> look like here, but we want the common parts like worker setup to use
> common code, while allowing each AM to insert its own logic in the
> places where that is needed. The challenge in my view is to figure out
> how best to arrange things so as to make that possible.

I've actually been thinking about the structure of the index build code
recently. There have been a bunch of requests, one recently on the list, to
build multiple indexes with one table scan - our current code structure would
make that a pretty hard feature to develop.

Greetings,

Andres Freund


Reply via email to