Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ctags: monitor symbol analysis and report stuck documents (#678)
This adds a monitor which will report every minute the progress of symbol analysis. Additionally, if a document is taking too long to analyse (10s) we report it. At first this is just reporting via stdlog. However, once we are comfortable with thresholds around this we can likely also include a way to kill analysis for a file. Test Plan: Adjusted monitorReportStatus to 1s then indexed the sourcegraph repo and inspected the output $ go run ./cmd/zoekt-git-index -require_ctags ../sourcegraph/ 2023/11/03 16:03:10 attempting to index 14533 total files 2023/11/03 16:03:13 DEBUG: symbol analysis still running for shard statistics: duration=1s symbols=15805 bytes=44288971 2023/11/03 16:03:14 DEBUG: symbol analysis still running for shard statistics: duration=2s symbols=26189 bytes=51564417 2023/11/03 16:03:15 DEBUG: symbol analysis still running for shard statistics: duration=3s symbols=55613 bytes=64748084 2023/11/03 16:03:16 DEBUG: symbol analysis still running for shard statistics: duration=4s symbols=86557 bytes=93771404 2023/11/03 16:03:17 DEBUG: symbol analysis still running for shard statistics: duration=5s symbols=125352 bytes=116319453 2023/11/03 16:03:18 symbol analysis finished for shard statistics: duration=5s symbols=142951 bytes=129180023 2023/11/03 16:03:22 finished shard github.com%2Fsourcegraph%2Fsourcegraph_v16.00000.zoekt: 283983298 index bytes (overhead 2.8), 14533 files processed I then added a random sleep for a minute in a file to see the stuck reporting: $ go run ./cmd/zoekt-git-index -require_ctags ../sourcegraph/ 2023/11/03 16:14:57 attempting to index 14533 total files 2023/11/03 16:15:15 WARN: symbol analysis for README.md (3485 bytes) has been running for 14s 2023/11/03 16:15:25 WARN: symbol analysis for README.md (3485 bytes) has been running for 24s 2023/11/03 16:15:45 WARN: symbol analysis for README.md (3485 bytes) has been running for 44s 2023/11/03 16:16:00 DEBUG: symbol analysis still running for shard statistics: duration=1m0s symbols=958 bytes=624329 2023/11/03 16:16:00 symbol analysis for README.md (size 3485 bytes) is done and found 4 symbols 2023/11/03 16:16:06 symbol analysis finished for shard statistics: duration=1m5s symbols=142951 bytes=129180023 2023/11/03 16:16:10 finished shard github.com%2Fsourcegraph%2Fsourcegraph_v16.00000.zoekt: 283983299 index bytes (overhead 2.8), 14533 files processed
- Loading branch information