Commit db178da
authored
fix: Implement chunking for large SBF filters (#5944)
* fix: Implement chunking for large SBF filters
This commit adds chunking functionalities for load/save operations of
bloom filters. Additional information is added in the serialization of
each filter. Specifically, when saving each filter the total size of the
filter is written followed by chunks of the filter (max size of 64 MB
per chunk).
Signed-off-by: Eric <[email protected]>
* Implement unit test for SBF chunking logic
* Add flags for setting save format for SBF filters
Added a new flag `rdb_sbf_chunked` which determines the save format of
SBFs. Also, separate functions for saving SBFs were added.
Signed-off-by: Eric <[email protected]>
* fix: Fix issues in loading and saving logic of new SBF chunking format
There was an issue in the load logic of SBFs that resulted in load logic
being determined by flag in the generic SBF loading function. This
should have been the chunked parameter which has since been fixed to now
using the function parameter.
Ensure that the correct format is being written on save side as well.
There was a bug that resulted in the RDB_TYPE_SBF to always been saved
even if data with the new SBF chunking format was used. This has been
updated accordingly to save as a RDB_TYPE_SBF2 when using the new
chunking format.
Signed-off-by: Eric <[email protected]>
* Remove redundant flag for chunking on load side
Signed-off-by: Eric <[email protected]>
---------
Signed-off-by: Eric <[email protected]>1 parent 26275e4 commit db178da
File tree
6 files changed
+83
-7
lines changed- src/server
6 files changed
+83
-7
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
20 | | - | |
| 21 | + | |
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | | - | |
| 191 | + | |
192 | 192 | | |
193 | 193 | | |
194 | 194 | | |
| |||
1316 | 1316 | | |
1317 | 1317 | | |
1318 | 1318 | | |
| 1319 | + | |
| 1320 | + | |
| 1321 | + | |
1319 | 1322 | | |
1320 | 1323 | | |
1321 | 1324 | | |
| |||
1851 | 1854 | | |
1852 | 1855 | | |
1853 | 1856 | | |
1854 | | - | |
| 1857 | + | |
1855 | 1858 | | |
1856 | 1859 | | |
1857 | 1860 | | |
| |||
1874 | 1877 | | |
1875 | 1878 | | |
1876 | 1879 | | |
1877 | | - | |
| 1880 | + | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
| 1886 | + | |
| 1887 | + | |
| 1888 | + | |
| 1889 | + | |
| 1890 | + | |
| 1891 | + | |
| 1892 | + | |
| 1893 | + | |
| 1894 | + | |
| 1895 | + | |
| 1896 | + | |
| 1897 | + | |
| 1898 | + | |
| 1899 | + | |
| 1900 | + | |
1878 | 1901 | | |
1879 | 1902 | | |
1880 | 1903 | | |
| |||
1884 | 1907 | | |
1885 | 1908 | | |
1886 | 1909 | | |
| 1910 | + | |
| 1911 | + | |
| 1912 | + | |
| 1913 | + | |
| 1914 | + | |
| 1915 | + | |
| 1916 | + | |
| 1917 | + | |
1887 | 1918 | | |
1888 | 1919 | | |
1889 | 1920 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
169 | 169 | | |
170 | 170 | | |
171 | 171 | | |
| 172 | + | |
172 | 173 | | |
| 174 | + | |
173 | 175 | | |
174 | 176 | | |
175 | 177 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
52 | 55 | | |
53 | 56 | | |
54 | 57 | | |
| |||
198 | 201 | | |
199 | 202 | | |
200 | 203 | | |
201 | | - | |
| 204 | + | |
202 | 205 | | |
203 | 206 | | |
204 | 207 | | |
| |||
623 | 626 | | |
624 | 627 | | |
625 | 628 | | |
626 | | - | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
627 | 640 | | |
628 | 641 | | |
629 | 642 | | |
630 | | - | |
631 | 643 | | |
632 | 644 | | |
633 | 645 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
210 | 210 | | |
211 | 211 | | |
212 | 212 | | |
| 213 | + | |
213 | 214 | | |
214 | 215 | | |
215 | 216 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
38 | 39 | | |
39 | 40 | | |
40 | 41 | | |
| |||
670 | 671 | | |
671 | 672 | | |
672 | 673 | | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
673 | 702 | | |
674 | 703 | | |
675 | 704 | | |
| |||
0 commit comments