C++: Total number of baseline files limit
- 主要言語
- CodeQL
- スター
- 10.1k
- フォーク
- 2.1k
- 平均マージ
- 2日 15時間
- マージ済み PR(30日)
- 141
説明
Hey friends, I have quite a large C++ database:
```
codeql database print-baseline -- ${CODEQL_DATABASE_DIR}
Counted a baseline of 27711380 lines of code for cpp.
```
Before running scans, I normally run some simple diagnostic queries to make sure the database looks fine. The queries look for things like:
* Files
* `FunctionCall`s
* `IfStmt`s
When I run these queries on this large database, I get this
```
codeql database analyze ${CODEQL_DATABASE_DIR} --format=sarif-latest --output=calls.sarif ${CODEQL_QUERIES}/qlpacks/cpp-queries/diagnostics/FunctionCalls.ql
Running queries.
[1/1 comp 7.8s] Compiled [...]/qlpacks/cpp-queries/diagnostics/FunctionCalls.ql.
Files.ql: [1/1 eval 36s] Results written to cpp-queries/diagnostics/FunctionCalls.bqrs.
Shutting down query evaluator.
Interpreting results.
Will not interpret file coverage baseline information, since the total number of baseline files is 153738, which is greater than the limit of 50000.
```
The exit code is 0 but `calls.sarif` is empty.
When I run queries from the standard C++ pack, I get the same message.
What does this limit mean? Is there any way to increase it? I didn't find anything either in the docs or in this repo unfortunately, may be missing something though. Thanks!
コントリビューションガイド
調査の方向性
Reproduce the behavior with `codeql database print-baseline`, `codeql database analyze`, and the C++ diagnostics query `diagnostics/FunctionCalls.ql`. Start by tracing how baseline file counts are interpreted during SARIF result generation and inspect the standard C++ query pack and relevant documentation. Done means the limit's meaning and configuration options are documented or the empty-result behavior is corrected, with a regression test.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp
- 領域
- tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 35/100