Spec-Zone.ru › MySQL 5.7

21.6.15.4 Таблица ndbinfo cluster_locks

Таблица cluster_locks предоставляет информацию о текущих запросах блокировки, удерживаемых и ожидающих блокировок на таблицах NDB в кластере NDB и предназначена в качестве вспомогательной таблицы к cluster_operations. Информация, полученная из таблицы cluster_locks, может быть полезна при исследовании задержек и тупиковых ситуаций.

Таблица cluster_locks содержит следующие столбцы:

  • node_id

    Идентификатор узла, отправляющего отчет

  • block_instance

    Идентификатор экземпляра LDM, отправляющего отчет

  • tableid

    Идентификатор таблицы, содержащей эту строку

  • fragmentid

    Идентификатор фрагмента, содержащего заблокированную строку

  • rowid

    Идентификатор заблокированной строки

  • transid

    Идентификатор транзакции

  • mode

    Режим запроса блокировки

  • state

    Состояние блокировки

  • detail

    Является ли это первой удерживающей блокировкой в очереди блокировок строк

  • op

    Тип операции

  • duration_millis

    Миллисекунды, затраченные на ожидание или удержание блокировки

  • lock_num

    Идентификатор объекта блокировки

  • waiting_for

    Ожидание блокировки с этим идентификатором

Примечания

Идентификатор таблицы (столбец tableid) назначается внутри и совпадает с тем, который используется в других таблицах ndbinfo. Он также показан в выводе ndb_show_tables.

Идентификатор транзакции (столбец transid) — это идентификатор, сгенерированный API NDB для транзакции, запрашивающей или удерживающей текущую блокировку.

Столбец mode показывает режим блокировки; это всегда один из S (указывающий общую блокировку) или X (исключительную блокировку). Если транзакция удерживает исключительную блокировку на заданной строке, все другие блокировки на этой строке имеют тот же идентификатор транзакции.

Столбец state показывает состояние блокировки. Его значение всегда одно из H (удержание) или W (ожидание). Запрос ожидания блокировки ждет блокировку, удерживаемую другой транзакцией.

Когда столбец detail содержит * (символ звездочки), это означает, что эта блокировка является первой удерживающей блокировкой в очереди блокировок строки; в противном случае этот столбец пустой. Эта информация может быть использована для выявления уникальных записей в списке запросов на блокировку.

Столбец op показывает тип операции, запрашивающей блокировку. Это всегда одно из значений READ, INSERT, UPDATE, DELETE, SCAN или REFRESH.

Столбец duration_millis показывает количество миллисекунд, в течение которых этот запрос блокировки ожидает или удерживает блокировку. Он сбрасывается до 0, когда запрос ожидания получает блокировку.

Идентификатор блокировки (столбец lockid) уникален для этого узла и экземпляра блока.

Состояние блокировки отображается в столбце lock_state; если это W, блокировка ожидает предоставления, а столбец waiting_for отображает идентификатор объекта блокировки, которого ожидает этот запрос. В противном случае столбец waiting_for пустой. waiting_for может относиться только к блокировкам в той же строке, как определено node_id, block_instance, tableid, fragmentid и rowid.

Таблица cluster_locks была добавлена в NDB 7.5.3.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/mysql-cluster-ndbinfo-cluster-locks.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API