agora inbox for pgsql-hackers@postgresql.org
help / color / mirror / Atom feed[PATCH v20260912 3/4] add unlikely hint for enlargeStringInfo.
210+ messages / 2 participants
[nested] [flat]
* [PATCH v20260912 3/4] add unlikely hint for enlargeStringInfo.
@ 2024-09-11 04:25 Andy Fan <zhihuifan1213@163.com>
0 siblings, 0 replies; 210+ messages in thread
From: Andy Fan @ 2024-09-11 04:25 UTC (permalink / raw)
enlargeStringInfo has a noticeable ratio in perf peport with a
"select * from pg_class" workload). So add a unlikely hint in
enlargeStringinfo to avoid some overhead.
---
src/common/stringinfo.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/common/stringinfo.c b/src/common/stringinfo.c
index ae39540e468..a725ef132d7 100644
--- a/src/common/stringinfo.c
+++ b/src/common/stringinfo.c
@@ -345,7 +345,7 @@ enlargeStringInfo(StringInfo str, int needed)
* Guard against out-of-range "needed" values. Without this, we can get
* an overflow or infinite loop in the following.
*/
- if (needed < 0) /* should not happen */
+ if (unlikely(needed < 0)) /* should not happen */
{
#ifndef FRONTEND
elog(ERROR, "invalid string enlargement request size: %d", needed);
@@ -354,7 +354,7 @@ enlargeStringInfo(StringInfo str, int needed)
exit(EXIT_FAILURE);
#endif
}
- if (((Size) needed) >= (MaxAllocSize - (Size) str->len))
+ if (unlikely(((Size) needed) >= (MaxAllocSize - (Size) str->len)))
{
#ifndef FRONTEND
ereport(ERROR,
--
2.43.0
--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment;
filename=v20260912-0001-Refactor-float8out_internval-for-better-pe.patch
^ 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 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
end of thread, other threads:[~2025-09-02 15:00 UTC | newest]
Thread overview: 210+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2024-09-11 04:25 [PATCH v20260912 3/4] add unlikely hint for enlargeStringInfo. Andy Fan <zhihuifan1213@163.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 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>
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox