agora inbox for pgsql-hackers@postgresql.org
help / color / mirror / Atom feed[PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
210+ messages / 2 participants
[nested] [flat]
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v3 1/4] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
LGTM.
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer()
@ 2025-09-02 15:00 Melanie Plageman <melanieplageman@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Melanie Plageman @ 2025-09-02 15:00 UTC (permalink / raw)
@@ -731,6 +741,13 @@ StrategyRejectBuffer(BufferAccessStrategy
strategy, BufferDesc *buf, bool from_r
strategy->buffers[strategy->current] !=3D BufferDescriptorGetBuffe=
r(buf))
return false;
+ buf_state =3D LockBufHdr(buf);
+ lsn =3D BufferGetLSN(buf);
+ UnlockBufHdr(buf, buf_state);
+
+ if (!XLogNeedsFlush(lsn))
+ return true;
I think this should return false.
I am planning to review the other patches later and this is for the
first patch only.
--
Regards,
Nazir Bilal Yavuz
Microsoft
^ permalink raw reply [nested|flat] 210+ messages in thread
* [PATCH v5 3/6] Handle pg_get_indexdef default args in system_functions.sql
@ 2025-12-09 18:02 Mark Wong <markwkm@gmail.com>
0 siblings, 0 replies; 210+ messages in thread
From: Mark Wong @ 2025-12-09 18:02 UTC (permalink / raw)
Modernize pg_get_indexdef to use proargdefaults to handle the optional
column and pretty argument.
---
src/backend/utils/adt/ruleutils.c | 20 --------------------
src/include/catalog/pg_proc.dat | 6 ++----
2 files changed, 2 insertions(+), 24 deletions(-)
diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c
index 24c59510672..77a7b0ca769 100644
--- a/src/backend/utils/adt/ruleutils.c
+++ b/src/backend/utils/adt/ruleutils.c
@@ -1125,26 +1125,6 @@ pg_get_triggerdef_worker(Oid trigid, bool pretty)
*/
Datum
pg_get_indexdef(PG_FUNCTION_ARGS)
-{
- Oid indexrelid = PG_GETARG_OID(0);
- int prettyFlags;
- char *res;
-
- prettyFlags = PRETTYFLAG_INDENT;
-
- res = pg_get_indexdef_worker(indexrelid, 0, NULL,
- false, false,
- false, false,
- prettyFlags, true);
-
- if (res == NULL)
- PG_RETURN_NULL();
-
- PG_RETURN_TEXT_P(string_to_text(res));
-}
-
-Datum
-pg_get_indexdef_ext(PG_FUNCTION_ARGS)
{
Oid indexrelid = PG_GETARG_OID(0);
int32 colno = PG_GETARG_INT32(1);
diff --git a/src/include/catalog/pg_proc.dat b/src/include/catalog/pg_proc.dat
index c1b945cdae5..1dc0d01cc85 100644
--- a/src/include/catalog/pg_proc.dat
+++ b/src/include/catalog/pg_proc.dat
@@ -3978,9 +3978,6 @@
{ oid => '1642', descr => 'role name by OID (with fallback)',
proname => 'pg_get_userbyid', provolatile => 's', prorettype => 'name',
proargtypes => 'oid', prosrc => 'pg_get_userbyid' },
-{ oid => '1643', descr => 'index description',
- proname => 'pg_get_indexdef', provolatile => 's', prorettype => 'text',
- proargtypes => 'oid', prosrc => 'pg_get_indexdef' },
{ oid => '3415', descr => 'extended statistics object description',
proname => 'pg_get_statisticsobjdef', provolatile => 's',
prorettype => 'text', proargtypes => 'oid',
@@ -8592,7 +8589,8 @@
{ oid => '2507',
descr => 'index description (full create statement or single expression) with pretty-print option',
proname => 'pg_get_indexdef', provolatile => 's', prorettype => 'text',
- proargtypes => 'oid int4 bool', prosrc => 'pg_get_indexdef_ext' },
+ proargtypes => 'oid int4 bool', proargnames => '{index,column,pretty}',
+ proargdefaults => '{0,false}', prosrc => 'pg_get_indexdef' },
{ oid => '2508', descr => 'constraint description with pretty-print option',
proname => 'pg_get_constraintdef', provolatile => 's', prorettype => 'text',
proargtypes => 'oid bool', prosrc => 'pg_get_constraintdef_ext' },
--
2.52.0
--m23X5uHFNxthGTU3
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment;
filename=v5-0004-Handle-pg_get_constraintdef-default-args-in-syste.patch
^ permalink raw reply [nested|flat] 210+ messages in thread
end of thread, other threads:[~2025-12-09 18:02 UTC | newest]
Thread overview: 210+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v3 1/4] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-09-02 15:00 [PATCH v2 1/9] Refactor goto into for loop in GetVictimBuffer() Melanie Plageman <melanieplageman@gmail.com>
2025-12-09 18:02 [PATCH v5 3/6] Handle pg_get_indexdef default args in system_functions.sql Mark Wong <markwkm@gmail.com>
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox