On Fri, Aug 11, 2023 at 11:18:09AM +0530, Amit Kapila wrote:
> On Fri, Aug 11, 2023 at 10:43 AM Julien Rouhaud <rjuju123@gmail.com> wrote:
> > I disagree. As I mentioned before any module registered in
> > shared_preload_libraries can spawn background workers which can perform any
> > activity. There were previous reports of corruption because of multi-xact
> > being generated by such bgworkers during pg_upgrade, I'm pretty sure that there
> > are some modules that create objects (automatic partitioning tools for
> > instance). It's also unclear to me what would happen if some writes are
> > performed by such module at various points of the pg_upgrade process. Couldn't
> > that lead to either data loss or broken slot (as it couldn't stream changes
> > from older major version)?
>
> It won't be any bad than what can happen to tables. If we know that
> such bgworkers can cause corruption if they do writes during the
> upgrade, I don't think it is the job of this patch to prevent the
> related scenarios. We can probably disallow the creation of new slots
> during the binary upgrade but that also I am not sure. I guess it
> would be better to document such hazards as a first step and then
> probably write a patch to prevent WAL writes or something along those
> lines.
Yes, if users are connecting to the clusters during pg_upgrade, we have
many more problems than slots.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com
Only you can decide what is important to you.