From: | Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com> |
---|---|
To: | Sami Imseih <samimseih(at)gmail(dot)com> |
Cc: | Nathan Bossart <nathandbossart(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Restart pg_usleep when interrupted |
Date: | 2024-08-06 09:00:03 |
Message-ID: | ZrHmE3zUSNXzoHCU@ip-10-97-1-34.eu-west-3.compute.internal |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On Mon, Aug 05, 2024 at 03:07:34PM -0500, Sami Imseih wrote:
>
> > yeah, we already have a few macros that access the .ticks, so maybe we could add
> > 2 new ones, say:
> >
> > 1. INSTR_TIME_ADD_MS(t1, msec)
> > 2. INSTR_TIME_IS_GREATER(t1, t2)
> >
> > I think the less operations is done in the while loop the better.
> >
>
> See v4. it includes 2 new instr_time.h macros to simplify the
> code insidethe while loop.
Thanks!
1 ===
+#define INSTR_TIME_IS_GREATER(x,y) \
+ ((bool) (x).ticks > (y).ticks)
Around parentheses are missing, that should be ((bool) ((x).ticks > (y).ticks)).
I did not pay attention to it initially but found it was the culprit of breaks
not occuring (while my test case produces some).
That said, I don't think the cast is necessary here and that we could get rid of
it.
2 ===
What about providing a quick comment about the 2 new macros in header of
instr_time.h? (like it is done for the others macros)
Regards,
--
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Smith | 2024-08-06 09:08:00 | Re: Logical Replication of sequences |
Previous Message | Bertrand Drouvot | 2024-08-06 08:54:23 | Fix comments in instr_time.h and remove an unneeded cast to int64 |