On Thu, Nov 05, 2020 at 10:11:52PM +0500, Andrey Borodin wrote: > To test that functions are actually called for sorting build we should > support directive sorting build like "CREATE INDEX ON A USING GIST(B) > WITH(sorting=surely,and fail if not)".
Maybe you could add a DEBUG1 message for that, and include that in regression tests, which would then fail if sorting wasn't used. Maybe you'd need to make it consistent by setting GUCs like work_mem / max_parallel_maintenance_workers / ?? Similar to this postgres=# SET client_min_messages =debug; postgres=# CREATE INDEX ON A USING GIST(i) WITH(buffering=off); DEBUG: building index "a_i_idx2" on table "a" serially CREATE INDEX > If we have unconditional sorting build and unconditional buffered build we > can check opclasses code better. > The problem is current reloption is called "buffering". It would be strange > if we gave this enum possible value like "not buffering, but very much like > buffering, just another way". > How do you think, is it ok to add reloption "buffering=sorting" to enhance > tests? > > Best regards, Andrey Borodin.