Skip to main content

Завершение работы базы данных

[Сантехника] Заключительные шаги по созданию базы данных.

Кто эту функцию можно использовать?

GitHub CodeQL лицензируется на основе каждого пользователя при установке. Вы можете использовать CodeQL только для определенных задач в соответствии с ограничениями лицензии. Дополнительные сведения см. в разделе Сведения о интерфейсе командной строки CodeQL.

Если у вас есть лицензия GitHub Advanced Security, можно использовать CodeQL для автоматического анализа, непрерывной интеграции и непрерывной доставки. Дополнительные сведения см. в разделе Сведения о GitHub Advanced Security.

Это содержимое описывает последний выпуск данных CodeQL CLI. Дополнительные сведения об этом выпуске см. в статье https://github.com/github/codeql-cli-binaries/releases.

Чтобы просмотреть сведения о параметрах, доступных для этой команды в предыдущем выпуске, выполните команду с --help параметром в терминале.

Краткие сведения

Shell
codeql database finalize [--dbscheme=<file>] [--threads=<num>] [--ram=<MB>] [--mode=<mode>] <options>... -- <database>

Description

[Сантехника] Заключительные шаги по созданию базы данных.

Завершите создание базы данных с помощью инициализации базы данных codeql и последующего заполнения данными анализа с помощью команды trace-database codeql. Это должно произойти до того, как новая база данных может быть запрошена.

Параметры

Основные параметры

<database>

[Обязательный] Путь к базе данных CodeQL в стадии разработки. Это должно быть подготовлено для извлечения с помощью инициализации базы данных codeql.

--db-cluster Если этот параметр задан, это не сама база данных, а каталог, содержащий базы данных, и все эти базы данных будут обрабатываться вместе.

--[no-]db-cluster

Указывает, что каталог, указанный в командной строке, не является самой базой данных, а каталогом, который содержит одну или несколько баз данных в стадии создания. Эти базы данных будут обрабатываться вместе.

--additional-dbs=<database>[:<database>...]

[Дополнительно] Путь к дополнительным базам данных CodeQL в стадии разработки. Они не будут завершены, но данные из них будут включены в созданную базу данных. Это расширенный вариант, который может не иметь требуемого эффекта во всех случаях. Дополнительные сведения см. в документации по импорту базы данных codeql.

Если этот --db-cluster параметр задан, ожидается, что они будут кластерами баз данных, а не отдельными базами данных CodeQL.

(Примечание. В Windows разделитель путей имеет значение ;).

--no-cleanup

[Дополнительно] Отключить очистку всех баз данных после завершения. Полезно для отладки.

--no-pre-finalize

[Дополнительно] Пропустить любой скрипт предварительного завершения, указанный активным методом извлечения CodeQL.

--[no-]skip-empty

[Дополнительно] Выводит предупреждение вместо сбоя, если база данных пуста, так как во время сборки не отображается исходный код. Пустая база данных останется неопределенной.

Параметры управления операцией импорта TRAP

-S, --dbscheme=<file>

[Дополнительно] Переопределите определение dbscheme автоматически обнаруженных dbscheme, согласно которому предполагается, что файлы TRAP соответствуют. Обычно это происходит из средства извлечения базы данных.

-j, --threads=<num>

Используйте это множество потоков для операции импорта.

По умолчанию равен 1. Вы можете передать 0 для использования одного потока на ядро на компьютере или -N, чтобы оставить неиспользуемые ядра N (за исключением того, что по-прежнему используется хотя бы один поток).

-M, --ram=<MB>

Используйте это много памяти для операции импорта.

Параметры очистки набора данных низкого уровня

--max-disk-cache=<MB>

Задайте максимальное количество места, которое может использовать кэш диска для промежуточных результатов запроса.

Если этот размер не настроен явным образом, вычислитель попытается использовать "разумное" пространство кэша на основе размера набора данных и сложности запросов. Явно устанавливая более высокий предел, чем это использование по умолчанию, позволит включить дополнительные кэширования, которые могут ускорить последующие запросы.

--min-disk-free=<MB>

[Дополнительно] Задайте целевой объем свободного места в файловой системе.

Если --max-disk-cache это не задано, средство оценки попытается ограничить использование кэша дисков, если свободное место в файловой системе снижается ниже этого значения.

--min-disk-free-pct=<pct>

[Дополнительно] Задайте целевую долю свободного места в файловой системе.

Если --max-disk-cache это не задано, средство оценки попытается ограничить использование кэша дисков, если свободное место в файловой системе снижается ниже этого процента.

-m, --mode=<mode>

Выберите, как агрессивно обрезать кэш. В число вариантов входят следующие варианты:

clear: удалите весь кэш, обрезая состояние недавно извлеченного набора данных.

trim(по умолчанию): обрезать все, кроме явно кэшированных предикатов.

fit: просто убедитесь, что определенные ограничения размера кэша дисков наблюдаются, удаляя столько промежуточных, сколько необходимо.

--cleanup-upgrade-backups

Удалите все каталоги резервных копий из-за обновлений базы данных.

Параметры проверка импортированной ЛОВУШКИ

--[no-]check-undefined-labels

[Дополнительно] Сообщить об ошибках для неопределенных меток.

--[no-]check-unused-labels

[Дополнительно] Сообщить об ошибках для неиспользуемых меток.

--[no-]check-repeated-labels

[Дополнительно] Сообщить об ошибках для повторяющихся меток.

--[no-]check-redefined-labels

[Дополнительно] Сообщить об ошибках для переопределенных меток.

--[no-]check-use-before-definition

[Дополнительно] Сообщить об ошибках для меток, используемых перед их определением.

--[no-]fail-on-trap-errors

[Дополнительно] Выход ненулевых, если ошибка возникает во время импорта ловушки.

--[no-]include-location-in-star

[Дополнительно] Создание идентификаторов сущностей, кодируемых расположением в файле TRAP, из который они были получены. Может быть полезно для отладки генераторов TRAP, но занимает много места в наборе данных.

--[no-]linkage-aware-import

[Дополнительно] Определяет, поддерживается ли импорт набора данных codeql с учетом компоновки (по умолчанию). В проектах, где эта часть создания базы данных потребляет слишком много памяти, отключение этого параметра может помочь им выполняться за счет полноты базы данных.

Доступно с момента v2.15.3.

Распространенные параметры

-h, --help

Отображение этого текста справки.

-J=<opt>

[Дополнительно] Укажите параметр JVM, выполняя команду.

(Убедитесь, что параметры, содержащие пробелы, не будут обрабатываться правильно.)

-v, --verbose

Постепенно увеличьте число отображаемых сообщений о ходе выполнения.

-q, --quiet

Постепенно уменьшайте количество отображаемых сообщений о ходе выполнения.

--verbosity=<level>

[Дополнительно] Явным образом задайте уровень детализации на одну из ошибок, предупреждений, хода выполнения, хода выполнения+, хода выполнения++, хода выполнения+++. Переопределяет -v и -q.

--logdir=<dir>

[Дополнительно] Запись подробных журналов в один или несколько файлов в указанном каталоге с созданными именами, включающими метки времени и имя выполняющегося подкоманда.

(Чтобы записать файл журнала с именем, над которым у вас есть полный контроль, вместо этого предоставьте --log-to-stderr и перенаправите stderr по мере необходимости.)

--common-caches=<dir>

[Дополнительно] Управляет расположением кэшированных данных на диске, которые будут сохраняться между несколькими запусками интерфейса командной строки, такими как скачанные пакеты QL и скомпилированные планы запросов. Если этот параметр не задан явным образом, по умолчанию используется каталог с именем .codeql в домашнем каталоге пользователя; он будет создан, если он еще не существует.

Доступно с момента v2.15.2.