Show dataset row count for every synchronous client search #14
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Dataset-size reporting is implemented but is not displayed consistently by every remote search command.
Confirmed implementation points:
svr/svc_ccwget.py::report_dataset_rowssums cachedsystem.partsrow counts for selected physical tables and stores the total on the active queue job.report_dataset_rows.client/ccwget-local.py::SearchProgress.updateprintsDigging into ... web pages...only whentotal_rowsis non-zero.client/ccwget-remote.py::submitforwards row-count metadata to the renderer only while state isWAITINGorRUNNING. A fast job can reach a terminal state between polls, causing the client to skip the count entirely.Users therefore receive inconsistent dataset scope information across equivalent search modes. The fix must continue using cached table metadata and must not add
count()scans against Common Crawl tables.Proposed approach
total_rowsafter physical table selection and before its first data query.-e,-l,-ld,-de, and-1.-qsilent.-asyncnon-blocking; its later-statusand job-listing output should expose the stored dataset row count once available.TABLE_COUNT_REFRESH_SECONDS; do not execute full-table row counts.This requires client progress fixes, validation of server operation ordering, tests, and documentation. No ClickHouse schema or queue DB migration is expected.
Scope
client/ccwget-remote.py::submit.client/ccwget-local.py::SearchProgressso zero and unavailable counts are distinguishable.svr/svc_ccwget.py::submit_jobto ensure row metadata is stored before data-table queries.-q,-v, and-vv.Acceptance criteria
-e,-l,-ld,-de, and-1produce consistent count behavior.WAITINGdirectly toDONEbetween client polls still prints the count.-qemits no dataset count or progress output.-vand-vvretain their current diagnostic behavior while showing the dataset scope once.count()query is introduced; totals come only from cached physical-table metadata.Dependencies
Fixed in commit
61fdca2. Dataset row metadata now propagates through terminal synchronous states; valid zero-row datasets print 0, unavailable metadata does not fabricate 0. Added regression tests and operator/release documentation. Verification: 111 pytest tests passed, Black clean, Pylint 10/10.