On Fri, Aug 19, 2022 at 7:45 PM Ranier Vilela <ranier.vf@gmail.com> wrote: > > Em sex., 19 de ago. de 2022 às 10:28, Tom Lane <tgl@sss.pgh.pa.us> escreveu: >> >> Ranier Vilela <ranier.vf@gmail.com> writes: >> > At function parallel_vacuum_process_all_indexes there is >> > a typo with a logical connector. >> > I think that correct is &&, because both of the operators are >> > bool types [1]. >> > As a result, parallel vacuum workers can be incorrectly enabled. >> >> Since they're bools, the C spec requires them to promote to integer >> 0 or 1, therefore the & operator will yield the desired result. >> So there's not going to be any incorrect behavior. > > > So, my assumption is incorrect. >
Right, but as Tom pointed it is still better to change this.
Sorry, I expressed myself badly.
As Tom pointed out, It's not a bug, as I stated in the first post.
But even if it wasn't a small performance improvement, by avoiding the function call. The correct thing is to use logical connectors (&& ||) with boolean operands.
However, I am not sure if we should backpatch this to PG15 as this won't lead to any incorrect behavior.