Commit 7480c9c
authored
perf: fallback to brute force FTS if filters matching fewer rows (lance-format#4551)
if the filters match only a few rows, it may cause the WAND fails to
filter out docs.
So we can evaluate only the matched rows, which would be much faster
than running WAND first, this means to decompress at most
`num_rows_matched * num_tokens` blocks
---------
Signed-off-by: BubbleCal <bubble-cal@outlook.com>1 parent 746d2dd commit 7480c9c
3 files changed
Lines changed: 180 additions & 21 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
721 | 721 | | |
722 | 722 | | |
723 | 723 | | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
724 | 756 | | |
725 | 757 | | |
726 | 758 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | 9 | | |
11 | 10 | | |
12 | 11 | | |
| |||
159 | 158 | | |
160 | 159 | | |
161 | 160 | | |
| 161 | + | |
162 | 162 | | |
163 | 163 | | |
164 | 164 | | |
| |||
390 | 390 | | |
391 | 391 | | |
392 | 392 | | |
| 393 | + | |
393 | 394 | | |
394 | 395 | | |
395 | 396 | | |
| |||
1738 | 1739 | | |
1739 | 1740 | | |
1740 | 1741 | | |
| 1742 | + | |
| 1743 | + | |
| 1744 | + | |
1741 | 1745 | | |
1742 | 1746 | | |
1743 | 1747 | | |
| |||
1759 | 1763 | | |
1760 | 1764 | | |
1761 | 1765 | | |
1762 | | - | |
1763 | | - | |
| 1766 | + | |
| 1767 | + | |
| 1768 | + | |
| 1769 | + | |
| 1770 | + | |
| 1771 | + | |
| 1772 | + | |
| 1773 | + | |
| 1774 | + | |
| 1775 | + | |
| 1776 | + | |
| 1777 | + | |
| 1778 | + | |
1764 | 1779 | | |
1765 | 1780 | | |
1766 | 1781 | | |
| |||
1829 | 1844 | | |
1830 | 1845 | | |
1831 | 1846 | | |
1832 | | - | |
| 1847 | + | |
1833 | 1848 | | |
1834 | 1849 | | |
1835 | 1850 | | |
1836 | | - | |
1837 | | - | |
1838 | | - | |
1839 | | - | |
1840 | | - | |
1841 | | - | |
1842 | | - | |
1843 | | - | |
1844 | | - | |
1845 | | - | |
1846 | | - | |
1847 | | - | |
1848 | | - | |
| 1851 | + | |
| 1852 | + | |
| 1853 | + | |
| 1854 | + | |
| 1855 | + | |
| 1856 | + | |
| 1857 | + | |
| 1858 | + | |
| 1859 | + | |
| 1860 | + | |
| 1861 | + | |
| 1862 | + | |
| 1863 | + | |
| 1864 | + | |
| 1865 | + | |
| 1866 | + | |
| 1867 | + | |
| 1868 | + | |
1849 | 1869 | | |
1850 | | - | |
| 1870 | + | |
1851 | 1871 | | |
1852 | 1872 | | |
1853 | 1873 | | |
| |||
1859 | 1879 | | |
1860 | 1880 | | |
1861 | 1881 | | |
1862 | | - | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
| 1886 | + | |
| 1887 | + | |
| 1888 | + | |
| 1889 | + | |
| 1890 | + | |
| 1891 | + | |
1863 | 1892 | | |
1864 | 1893 | | |
1865 | 1894 | | |
1866 | 1895 | | |
1867 | 1896 | | |
1868 | 1897 | | |
1869 | 1898 | | |
| 1899 | + | |
1870 | 1900 | | |
1871 | 1901 | | |
1872 | 1902 | | |
| |||
1901 | 1931 | | |
1902 | 1932 | | |
1903 | 1933 | | |
| 1934 | + | |
| 1935 | + | |
1904 | 1936 | | |
1905 | 1937 | | |
1906 | 1938 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
| 13 | + | |
12 | 14 | | |
13 | 15 | | |
14 | 16 | | |
| |||
321 | 323 | | |
322 | 324 | | |
323 | 325 | | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
324 | 337 | | |
325 | 338 | | |
326 | 339 | | |
327 | 340 | | |
328 | 341 | | |
329 | 342 | | |
330 | | - | |
331 | 343 | | |
332 | 344 | | |
333 | 345 | | |
334 | | - | |
335 | 346 | | |
336 | 347 | | |
337 | 348 | | |
| |||
379 | 390 | | |
380 | 391 | | |
381 | 392 | | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
382 | 477 | | |
383 | 478 | | |
384 | 479 | | |
| |||
0 commit comments