Странные повисшие пишущие транзакции

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
DmitryBelkevich
Сообщения: 30
Зарегистрирован: 03 апр 2009, 21:10

Странные повисшие пишущие транзакции

Сообщение DmitryBelkevich » 15 июл 2014, 10:17

Добрый день. Смотрю по статистике базы данных, вижу одну повисшую пишущую транзакцию. В statements'ах две записи для этой транзакции:

'SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = ? AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION '

'Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = ? and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) '

к базе подлючен один локальный клиент по сетевому протоколу. использую компоненты IBX, Delphi 2010.
Я таких запросов нигде не даю, может компоненты 'чудят'? Может у кого какие мысли будут...

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Странные повисшие пишущие транзакции

Сообщение Dimitry Sibiryakov » 15 июл 2014, 14:48

IBExpert закрой.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Странные повисшие пишущие транзакции

Сообщение kdv » 15 июл 2014, 21:02

mon$ - это не "статистика". это текущее состояние сервера.
Если вы смотрите в mon$, значит вы видите, от какого коннекта эти запросы и транзакции. А значит, как минимум, видите ip и имя компьютера. А если у вас клиент и сервер FB 2.5, то вы видите и имя приложения, которое открыло этот коннект.

DmitryBelkevich
Сообщения: 30
Зарегистрирован: 03 апр 2009, 21:10

Re: Странные повисшие пишущие транзакции

Сообщение DmitryBelkevich » 05 авг 2014, 01:07

Да, смотрю не статистику, смотрю состояние (мониторинг).

> от какого коннекта эти запросы и транзакции

вижу. моё приложение и открыло. но я не делаю таких запросов.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Странные повисшие пишущие транзакции

Сообщение kdv » 05 авг 2014, 21:36

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

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Странные повисшие пишущие транзакции

Сообщение kdv » 05 авг 2014, 21:38

кстати, "таких" запросов - это запрос если не от ИБЭксперта, то от компонентов FIBPlus, которые получают информацию о метаданных. в любом случае висячих транзакций быть не должно, что ваших, что не ваших. Смотрите FIBSQLMonitor или как его, откуда эта транзакция.

DmitryBelkevich
Сообщения: 30
Зарегистрирован: 03 апр 2009, 21:10

Re: Странные повисшие пишущие транзакции

Сообщение DmitryBelkevich » 12 авг 2014, 10:14

Транзакция повисшая была, но с другим SQL запросом, не тем, что был указан в statements'ах. FIBPlus'ов не использую. Нашел транзакцию, поправил, сейчас работает нормально.

Ответить