powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Короткий вопрос по internals: что такое "VXID"
5 сообщений из 5, страница 1 из 1
Короткий вопрос по internals: что такое "VXID"
    #38880383
Izya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в описалове - "virtual transaction ID". Слово "virtual" к чему относится, к транзакции или к идентификатору? Какой вариант правильный
1) существует такая отдельная штука как "виртуальная транзакция"
2) одна и та же транзакция может иметь просто ID и может иметь "виртуальный ID"
...
Рейтинг: 0 / 0
Короткий вопрос по internals: что такое "VXID"
    #38880402
/\/\/\/\/\/\
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Izya,

Пожалуйста, скопируйте то место из описания, в котором есть разночтения.

virtral transaction ID означает:
Фактический идентификатор транзакции.
...
Рейтинг: 0 / 0
Короткий вопрос по internals: что такое "VXID"
    #38880420
этта
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
/\/\/\/\/\/\Izya,

Пожалуйста, скопируйте то место из описания, в котором есть разночтения.
<>
единственное место, какое удалось найти:
http://www.postgresql.org/docs/9.2/static/view-pg-locks.html

противопоставляются "either virtual or permanent ID"
...
Рейтинг: 0 / 0
Короткий вопрос по internals: что такое "VXID"
    #38880450
/\/\/\/\/\/\
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
этта,

Хм. По поводу единственности возникают вопросы. Поэтому путь автор уточнит (особенно, какую документацию имеет ввиду).
Я нашел другое место :
описание параметра log_line_prefix (string), значения %v (Virtual transaction ID (backendID/localXID) и %x Transaction ID (0 if none is assigned)

То есть значения описывают разные явления и слабо пересекаются.

Наверняка есть еще несколько других единственных мест.
...
Рейтинг: 0 / 0
Короткий вопрос по internals: что такое "VXID"
    #38880472
Izya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разобрался. В сорсе в ридми по транзакциям

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
A transaction that has no XID still needs to be identified for various
purposes, notably holding locks.  For this purpose we assign a "virtual
transaction ID" or VXID to each top-level transaction.  VXIDs are formed from
two fields, the backendID and a backend-local counter; this arrangement allows
assignment of a new VXID at transaction start without any contention for
shared memory.  To ensure that a VXID isn't re-used too soon after backend
exit, we store the last local counter value into shared memory at backend
exit, and initialize it from the previous value for the same backendID slot
at backend start.  All these counters go back to zero at shared memory
re-initialization, but that's OK because VXIDs never appear anywhere on-disk.

Вопрос возник когда в каментах в коде нашел словосочетание "virtual transaction ID". Что, думаю за зверь такой?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Короткий вопрос по internals: что такое "VXID"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]