Skip to content

docs(15.9): engine-fused hybrid search pages up to pagination_depth (default 1000) - #558

Merged
marevol merged 1 commit into
mainfrom
docs/hybrid-paging-cap-159
Sep 27, 2026
Merged

marevol merged 1 commit into
mainfrom
docs/hybrid-paging-cap-159

Conversation

@marevol

@marevol marevol commented Sep 26, 2026

Copy link
Copy Markdown
Contributor

Summary

Document how engine-side rank fusion pages in Fess 15.9 after codelibs/fess#3506 (and #3505).

A search fused in the search engine (rank.fusion.engine.enabled=true, and the request can be fused) used to hand any page past rank.fusion.pagination_depth to Fess-side fusion, which by default meant keyword-only results. With #3506 it pages through at most min(rank.fusion.pagination_depth, indexer.max.result.window.size) results and stops there, the same way any other search stops at index.max_result_window. The default depth goes from 200 to 1000, and the semantic branch's knn k is content_chunker.search.knn.k instead of max(knn.k, pagination_depth).

Changes

All seven languages (ja, en, de, es, fr, ko, zh-cn), development tree (15.9) only.

  • config/rank-fusion.rst
    • Example and table: rank.fusion.pagination_depth default 1000; the value sent never exceeds indexer.max.result.window.size.
    • Removed the "page whose start + size exceeds pagination_depth is fused by Fess" case from the list of searches not fused in the engine.
    • New notes for engine-side fusion: paging stops at pagination_depth (page count, next page and page numbers stop there; a page starting beyond it gets the same error as a page beyond index.max_result_window; a page after the last fused hit but within the limit is empty; non-fused searches page as before); the hit count is a lower bound (GREATER_THAN_OR_EQUAL_TO) at or above the depth; a larger depth slows every fused search.
    • knn k of a fused request is content_chunker.search.knn.k.
    • Troubleshooting: the deep-page item no longer tells users to raise pagination_depth; "Slow Search" lists reducing pagination_depth for engine-side fusion.
  • config/search-semantic.rst
    • content_chunker.search.knn.k: enlarged for deep paging only when Fess performs the fusion.
    • Deep result pages: with engine-side fusion every page is fused and paging stops at pagination_depth (default 1000).
  • config/properties.rst / config/properties.po: regenerated with tools/update_properties_doc.sh against the #3506 branch. Only the rank.fusion.pagination_depth row (default and description) is taken; other differences between the generated pages and the current fess_config.properties are left for a separate update. The catalogues carry no translations yet, so only the msgid changes.

Verification

  • python3 tools/gen_properties_doc.py --check: the 7 properties pages agree
  • python3 -m unittest discover -s tools -p 'test_*.py': 79 tests OK
  • python3 tools/check_headings.py on the 15.8 and 15.9 trees: no mismatches (no headings changed)
  • Sphinx build of each language's 15.9 config/ directory before and after the change: no new warnings in the changed files, and no unrendered inline markup in the output

Dependency

This documents codelibs/fess#3506 (milestone 15.9.0), which is still open. Merge it after that PR.

…default 1000)

A search fused in the search engine no longer hands pages past
rank.fusion.pagination_depth to Fess-side fusion. It pages through at
most min(rank.fusion.pagination_depth, indexer.max.result.window.size)
results, and a page that starts beyond that is refused like a page past
index.max_result_window.

- rank-fusion.rst: default pagination_depth 1000; drop the "page past
  pagination_depth is fused by Fess" case; describe the paging limit,
  the lower-bound hit count at or above the depth, the empty page past
  the last fused hit, and the latency cost of a larger depth; the knn k
  of a fused request is content_chunker.search.knn.k; reducing the
  depth is listed under slow search
- search-semantic.rst: knn.k is no longer raised to pagination_depth;
  deep pages with engine-side fusion stop at pagination_depth
- properties.rst / properties.po: regenerated rank.fusion.pagination_depth
  row (default and description)

All seven languages of the development tree.
@marevol marevol self-assigned this Sep 27, 2026
@marevol
marevol merged commit 1ad121f into main Sep 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant