Skip to content

Commit af38d16

Browse files
author
Arseny Kositsyn
committed
[PGPRO-11599] Fixed the build on version 18 of PostgreSQL.
Tags: rum
1 parent 49347aa commit af38d16

File tree

3 files changed

+1653
-2
lines changed

3 files changed

+1653
-2
lines changed

src/rumtidbitmap.c

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@
1919
* you need to transfer the src/backend/nodes/tidbitmap.c of the
2020
* required version to the RUM and include it here.
2121
*/
22-
#if PG_VERSION_NUM >= 170000
22+
#if PG_VERSION_NUM >= 180000
23+
#include "tidbitmap/tidbitmap18.c"
24+
#elif PG_VERSION_NUM >= 170000
2325
#include "tidbitmap/tidbitmap17.c"
2426
#elif PG_VERSION_NUM >= 160000
2527
#include "tidbitmap/tidbitmap16.c"
@@ -76,17 +78,33 @@ rum_tbm_is_empty(const RumTIDBitmap *tbm)
7678
return tbm_is_empty(tbm);
7779
}
7880

81+
#if PG_VERSION_NUM >= 180000
82+
RumTBMIterator
83+
rum_tbm_begin_iterate(RumTIDBitmap *tbm, dsa_area *dsa, dsa_pointer dsp)
84+
{
85+
return tbm_begin_iterate(tbm, dsa, dsp);
86+
}
87+
#else
7988
RumTBMIterator *
8089
rum_tbm_begin_iterate(RumTIDBitmap *tbm)
8190
{
8291
return tbm_begin_iterate(tbm);
8392
}
93+
#endif
8494

95+
#if PG_VERSION_NUM >= 180000
96+
bool
97+
rum_tbm_iterate(RumTBMIterator *iterator, RumTBMIterateResult *tbmres)
98+
{
99+
return tbm_iterate(iterator, tbmres);
100+
}
101+
#else
85102
RumTBMIterateResult *
86103
rum_tbm_iterate(RumTBMIterator *iterator)
87104
{
88105
return tbm_iterate(iterator);
89106
}
107+
#endif
90108

91109
void
92110
rum_tbm_end_iterate(RumTBMIterator *iterator)

src/rumtidbitmap.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,15 @@ extern void rum_tbm_intersect(RumTIDBitmap *a, const RumTIDBitmap *b);
4040

4141
extern bool rum_tbm_is_empty(const RumTIDBitmap *tbm);
4242

43-
extern RumTBMIterator *rum_tbm_begin_iterate(RumTIDBitmap *tbm);
43+
#if PG_VERSION_NUM >= 180000
44+
extern RumTBMIterator rum_tbm_begin_iterate(RumTIDBitmap *tbm,
45+
dsa_area *dsa, dsa_pointer dsp);
46+
extern bool rum_tbm_iterate(RumTBMIterator *iterator, RumTBMIterateResult *tbmres);
47+
#else
4448
extern RumTBMIterateResult *rum_tbm_iterate(RumTBMIterator *iterator);
49+
extern RumTBMIterator *rum_tbm_begin_iterate(RumTIDBitmap *tbm);
50+
#endif
51+
4552
extern void rum_tbm_end_iterate(RumTBMIterator *iterator);
4653

4754
extern long rum_tbm_calculate_entries(double maxbytes);

0 commit comments

Comments
 (0)