On Thu, 6 Oct 2022 at 20:32, Alvaro Herrera <alvhe...@alvh.no-ip.org> wrote: > > On 2022-Oct-06, David Rowley wrote: > > I didn't want to do it that way because all this code is in a while > > loop and the outer "now" will be reused after it's set by the code > > above. It's not really immediately obvious to me what repercussions > > that would have, but it didn't seem worth taking any risks. > > No, it's re-initialized to zero every time through the loop, so setting > it to something else at the bottom doesn't have any further effect.
Oh yeah, you're right. > If it were *not* reinitialized every time through the loop, then what > would happen is that every iteration in the loop (and each operation > within) would see exactly the same value of "now", because it's only set > "lazily" (meaning, if already set, don't change it.) On my misread, that's what I was afraid of changing, but now seeing that now = 0 at the start of each loop, I understand that pg_time_now_lazy will get an up-to-date time on each loop. I'm happy if you want to change it to use the outer scoped variable instead of the now2 one. David