You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[PGPRO-11599] Fix wrong results returned when order_by_attach=TRUE. (#164)
With order_by_attach=TRUE, the RUM index arranges the entries in the posting
lists (for keys that have additional information) in order of sorting by
additional information. For the remaining keys, the records are sorted by tid.
The scanGetItemRegular() function assumes that all posting lists have the same
sorting, so it was not suitable for sorting in this case.
In order to fix this, the appropriate TIDs for keys that are ordered by tid are
assembled in advance into a bitmap. For keys ordered in an alternative order, a
routine scan is performed, after which the appropriate tid is checked in the
bitmap.
1. Static functions from TIDBitmap were added to RUM as RumTIDBitmap.
A function has been added to search for tid inside RumTIDBitmap.
2. Added a test of scanning with keys that are ordered differently.
3. Fixed CI crashes at hardcore level.
---------
Co-authored-by: Arseny Kositsyn <a.kositsyn@postgrespro.ru>
Copy file name to clipboardExpand all lines: README.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,7 +45,9 @@ This module is available under the [license](LICENSE) similar to
45
45
46
46
Before building and installing **rum**, you should ensure following are installed:
47
47
48
-
* PostgreSQL version is 9.6+.
48
+
* PostgreSQL version is 12+.
49
+
50
+
* PostgreSQL 9.6 - 11 (but you need to transfer the `src/backend/nodes/tidbitmap.c` of the required version to the `contrib/rum/src/tidbitmap/tidbitmapXX.c` and include it to `contrib/rum/src/rumtidbitmap.c`)
49
51
50
52
Typical installation procedure may look like this:
0 commit comments