Em sex., 7 de mar. de 2025 às 16:01, Álvaro Herrera <alvhe...@alvh.no-ip.org> escreveu:
> On 2025-Mar-07, Álvaro Herrera wrote: > > > Anyway, my version of this is attached. It fixes the problems with your > > patch, but not Orlov's fundamental bug. > > And of course I forgot to actually attach the patch. Good grief. > Test with your v4 patch, on Windows 64 bits. results: reindexdb -U postgres -d postgres -j4 --echo -i foo1 -i foo2 -i bar1 -i bar2 -i baz1 -i baz2 -i baz3 -i baz4 Cut to show only REINDEX (order) cmds: RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.baz4'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.baz4; RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.baz1'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.baz1; RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.baz2'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.baz2; RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.baz3'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.baz3; SELECT pg_catalog.set_config('search_path', '', false); RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.foo1'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.foo1; RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.foo2'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.foo2; SELECT pg_catalog.set_config('search_path', '', false); RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.bar1'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.bar1; RESET search_path; SELECT c.relname, ns.nspname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace ns WHERE c.relnamespace OPERATOR(pg_catalog.=) ns.oid AND c.oid OPERATOR(pg_catalog.=) 'public.bar2'::pg_catalog.regclass; SELECT pg_catalog.set_config('search_path', '', false); REINDEX INDEX public.bar2; best regards, Ranier Vilela