database finalize¶
Synopsis¶
codeql database finalize [--dbscheme=<file>] [--threads=<num>] [--mode=<mode>] <options>... [--] <database>
Description¶
[Plumbing] Final steps in database creation.
Finalize a database that was created with codeql database init and subsequently seeded with analysis data using codeql database trace-command. This needs to happen before the new database can be queried.
Options¶
-
<database>¶ [Mandatory] Path to the CodeQL database under construction to finalize.
-
-S,--dbscheme=<file>¶ [Advanced] Override the auto-detected dbscheme definition that the TRAP files are assumed to adhere to. Normally, this is taken from the database’s extractor.
-
-j,--threads=<num>¶ Use this many threads for the import operation.
Defaults to 1. You can pass 0 to use one thread per core on the machine, or -N to leave N cores unused (except still use at least one thread).
-
--no-cleanup¶ [Advanced] Suppress all database cleanup after finalization. Useful for debugging purposes.
-
--no-pre-finalize¶ [Advanced] Skip any pre-finalize script specified by the active CodeQL extractor.
Low-level dataset cleanup options¶
-
--max-disk-cache=<MB>¶ Set the maximum amount of space that the disk cache for intermediate query results can use.
If this size is not configured explicitly, the evaluator will try to use a “reasonable” amount of cache space, based on the size of the dataset and the complexity of the queries. Explicitly setting a higher limit than this default usage will enable additional caching which can speed up later queries.
-
--min-disk-free=<MB>¶ [Advanced] Set target amount of free space on file system.
If
--max-disk-cacheis not given, the evaluator will try hard to curtail disk cache usage if the free space on the file system drops below this value.
-
--min-disk-free-pct=<pct>¶ [Advanced] Set target fraction of free space on file system.
If
--max-disk-cacheis not given, the evaluator will try hard to curtail disk cache usage if the free space on the file system drops below this percentage.
-
-m,--mode=<mode>¶ Select how aggressively to trim the cache. Choices include:
brutal: Remove the entire cache, trimming down to the state of a freshly extracted datasetnormal(default): Trim everything except explicitly “cached” predicates.light: Simply make sure the defined size limits for the disk cache are observed, deleting as many intermediates as necessary.
-
--cleanup-upgrade-backups¶ Delete any backup directories resulting from database upgrades.
-
--[no-]finalize-dataset¶ Finalize this dataset, making further attempts to import data into it fail. Passing this option allows some additional on-disk state to be deleted, but at the cost of sacrificing the ability to extend the dataset later.
Options for checking imported TRAP¶
-
--[no-]check-unused-labels¶ [Advanced] Report errors for unused labels.
-
--[no-]check-repeated-labels¶ [Advanced] Report errors for repeated labels.
-
--[no-]check-redefined-labels¶ [Advanced] Report errors for redefined labels.
-
--[no-]check-use-before-definition¶ [Advanced] Report errors for labels used before they’re defined.
-
--[no-]include-location-in-star¶ [Advanced] Construct entity IDs that encode the location in the TRAP file they came from. Can be useful for debugging of TRAP generators, but takes up a lot of space in the dataset.
Common options¶
-
-h,--help¶ Show this help text.
-
-J=<opt>¶ [Advanced] Give option to the JVM running the command.
(Beware that options containing spaces will not be handled correctly.)
-
-v,--verbose¶ Incrementally increase the number of progress messages printed.
-
-q,--quiet¶ Incrementally decrease the number of progress messages printed.
-
--verbosity=<level>¶ [Advanced] Explicitly set the verbosity level to one of errors, warnings, progress, progress+, progress++, progress+++. Overrides
-vand-q.
-
--logdir=<dir>¶ [Advanced] Write detailed logs to one or more files in the given directory, with generated names that include timestamps and the name of the running subcommand.
(To write a log file with a name you have full control over, instead give
--log-to-stderrand redirect stderr as desired.)

