Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commita8c09da

Browse files
committed
Remove trailing zero words from Bitmapsets
Prior to this, Bitmapsets could contain trailing words which had nomembers set. Many places in bitmapset.c had to loop over trailing wordsto check for empty words. If we ensure we always remove these trailingzero words then we can perform various optimizations such as fastpathing bms_is_subset to return false when 'a' has more words than 'b'.A similar optimization is possible in bms_equal. Both of these togethercan yield quite significant performance increases in the query plannerwhen querying a partitioned table with around 100 or more partitions.While we're at it, since the minimum number of words a Bitmapset cancontain is 1, we can make use of do/while loops instead of for loopswhen looping over all words in a set. This means checking the loopcondition 1 less time, which for single-word sets cuts the loopcondition checks in half.Author: David RowleyReviewed-by: Yuya WatariDiscussion:https://postgr.es/m/CAApHDvr5O41MuUjw0DQKqmAnv7QqvmLqXReEd5o4nXTzWp8-+w@mail.gmail.com
1 parent44e73a4 commita8c09da

File tree

1 file changed

+236
-183
lines changed

1 file changed

+236
-183
lines changed

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp