×
Мы обрабатываем cookies, чтобы сделать наш сайт удобнее и персонализированнее для вас. Подробнее: политика использования «cookies» и «политики конфиденциальности».

Для самостоятельной настройки ознакомьтесь с инструкцией

Дополнительные настройки cookies в браузерах

Файлы cookie автоматически загружаются в ваш браузер при посещении веб-сайта. У вас есть возможность управлять этими файлами. Если Вы не согласны с использованием файлов cookies, запретите их сохранение на своём устройстве, удалите уже имеющиеся файлы cookies через настройки браузера или прекратите использование сайта.

При отключении обработки cookie наш сайт продолжит функционировать, однако будут использоваться исключительно необходимые технические файлы, без которых работа ресурса невозможна.

Инструкция по отключению cookies
Принять
Настроить
Отклонить

ДОКУМЕНТАЦИЯ

Выберите версию, форк и язык для СУБД Digital Q.DataBase, чтобы прочитать или скачать всю документацию.
Техподдержка
Документация
Диасофт
Авторские права © 2016–2025 ООО "Диасофт Экосистема"
Скачать всю документацию:

7.16.1. Транзакции и идентификаторы

Транзакции могут быть созданы явно с помощью команд BEGIN или START TRANSACTION и завершены с помощью COMMIT или ROLLBACK. SQL-операторы вне явных транзакций автоматически используют однострочные транзакции.

Каждая транзакция идентифицируется уникальным VirtualTransactionId (также называемым virtualXID или vxid), который состоит из номера процесса бэкенда (или procNumber) и последовательно назначаемого номера, локального для каждого бэкенда, известного как localXID. Например, виртуальный идентификатор транзакции 4/12532 имеет procNumber равный 4 и localXID равный 12532.

Невиртуальные TransactionId (или xid), например, 278394, назначаются последовательно транзакциям из глобального счётчика, используемого всеми базами данных в кластере Digital Q.DataBase. Это назначение происходит, когда транзакция впервые записывает в базу данных. Это означает, что xid с меньшим номером начали запись раньше, чем xid с большим номером. Обратите внимание, что порядок, в котором транзакции выполняют первую запись в базу данных, может отличаться от порядка, в котором транзакции начались, особенно если транзакция началась с операторов, которые только читали данные из базы данных.

Внутренний тип идентификатора транзакции xid имеет ширину 32 бита и заворачивается каждые 4 миллиарда транзакций. 32-битная эпоха увеличивается при каждом завороте. Также существует 64-битный тип xid8, который включает эту эпоху и поэтому не заворачивается в течение срока жизни инсталляции; его можно преобразовать в xid приведением типа. Функции в Таблица 2.6.82 возвращают значения типа xid8. Xid используются как основа для механизма конкурентного управления версиями (MVCC) и потоковой репликации Digital Q.DataBase.

Когда транзакция верхнего уровня с (невиртуальным) xid фиксируется, она помечается как зафиксированная в каталоге pg_xact. Дополнительная информация записывается в каталог pg_commit_ts, если включён параметр track_commit_timestamp.

В дополнение к vxid и xid, подготовленным транзакциям также назначаются глобальные идентификаторы транзакций (GID). GID — это строковые литералы длиной до 200 байт, которые должны быть уникальными среди других текущих подготовленных транзакций. Соответствие между GID и xid показано в pg_prepared_xacts.

Наверх
свяжитесь
с нами
контакты
Для прямой связи с нами вы можете использовать контакты ниже, либо оставить заявку через форму обратной связи, и мы обязательно свяжемся с вами

*поля обязательные к заполнению