powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Имя транзакции
25 сообщений из 33, страница 1 из 2
Имя транзакции
    #40129318
sysdba22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эх, была бы возможность при старте транзакции передать на сервер ее имя, а потом посмотреть его в таблице MON$TRANSACTIONS... Золотые времена бы настали ))
...
Рейтинг: 0 / 0
Имя транзакции
    #40129320
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чем номер не угодил?
...
Рейтинг: 0 / 0
Имя транзакции
    #40129343
Фотография Дегтярев Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и где гарантия что не будет такой же второй, третей...
...
Рейтинг: 0 / 0
Имя транзакции
    #40129349
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sysdba22была бы возможность при старте транзакции передать на сервер ее имя, а потом
посмотреть его в таблице MON$TRANSACTIONS...

Ты реально способен заполнить TPB или надеешься, что кто-то из
компонентописателей будет делать это автомагически?..

Изначально его формат был простой пачкой тэгов без значений, потом его
изуродовали тэгами блокировки. По-моему, не стоит продолжать эту плохую традицию.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129356
sysdba22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

sysdba22была бы возможность при старте транзакции передать на сервер ее имя, а потом
посмотреть его в таблице MON$TRANSACTIONS...

Ты реально способен заполнить TPB или надеешься, что кто-то из


заполнял бы
...
Рейтинг: 0 / 0
Имя транзакции
    #40129359
sysdba22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дегтярев Евгений
и где гарантия что не будет такой же второй, третей...


уникальность тут не требуется. это как дополнительный инструмент поиска ситуаций, когда какой-то код держит открытой транзакцию долго или не закрыл ее по какой-то причине.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129374
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sysdba22заполнял бы

Так заполняй контекстную переменную в пространстве имён USER_TRANSACTION.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129376
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sysdba22,

можно написать трекеру, но обоснование должно быть убедительным
...
Рейтинг: 0 / 0
Имя транзакции
    #40129381
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DS> Так заполняй контекстную переменную в пространстве имён USER_TRANSACTION.


+1
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129396
sysdba22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не совсем то, хотелось бы без дополнительных запросов и обойтись только MON$ таблицами. Например, есть большая система. В рабочий день 300+ активных пользователей. Чтобы зайти в окошко (см. скриншот) и сразу понять не только, где висят долгие транзакции, но и идентифицировать что это за транзакция в коде. Чтобы быстро исправить.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129398
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так открой для себя MON$CONTEXT_VARIABLES.

И что за лицемерие: параметр в TPB он добавлять согласен, а запрос послать - нет?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129420
ggreggory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sysdba22
но и идентифицировать что это за транзакция в коде. Чтобы быстро исправить.


Если транзакция висит - значит выполняется какой-то статмент. По ид транзакции ищете статмент - разбираетесь с ним и кодом, который его запустил. Если инфы не достаточно, можно в текст SQL-запроса добавлять комментарий. Он в таблице мониторинга виден.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129422
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ggreggory
Если транзакция висит - значит выполняется какой-то статмент.
Не обязательно.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129424
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sysdba22> хотелось бы без дополнительных запросов
sysdba22> и обойтись только MON$ таблицами

Если ты про доп.запросы в клиентском ПО -
вызов rdb$set_context можно засунуть в любой
другой запрос (тем более, что у тебя наверняка
есть "служебные", не информационные запросы).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129425
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собсно, даже больше/лучше - можно засунуть
вызов буквально в каждый информационный
запрос и найти сабж (проблемное место в коде)
не только на уровне транзакции, но и на уровне
запроса (да хоть процедуры)!

Профит!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129430
ggreggory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvlad
ggreggory
Если транзакция висит - значит выполняется какой-то статмент.
Не обязательно.


Хм... Имеется ввиду, что транзакция стартовала, выполнила запрос, но её не подтвердили и не откатили? Например, транзакция блокирующая запись таблицы с помощью select with lock.

Гаджимурадов Рустам

Профит!


Мой вариант с комментарием можно и в стандартном "Database monitoring" IBExpert-а лицезреть, а потом ещё и в трассировке видеть.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129437
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ggreggory> Мой вариант с комментарием

Да, согласен, комментарий прямо в
тексте запроса ещё проще, пожалуй.
Осталось уговорить Рокфеллера. :)

Правда, транзакции без запросов он
не покажет, но такие и не интересны.
Но я не уверен, возможны ли ситуации,
когда запрос уже закрылся (и в мониторинге
его уже нет), а транзакция (точнее сервер)
ещё шуршит - думаю, что возможны -
надо у Влада уточнять.


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129445
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ggreggory
Имеется ввиду, что транзакция стартовала, выполнила запрос, но её не подтвердили и не откатили?
Да, конечно.

Гаджимурадов Рустам
Но я не уверен, возможны ли ситуации,
когда запрос уже закрылся (и в мониторинге
его уже нет), а транзакция (точнее сервер)
ещё шуршит - думаю, что возможны
Если под "тр-ция шуршит" подразумевается "тр-ция ещё активна" - то да, запросто
...
Рейтинг: 0 / 0
Имя транзакции
    #40129449
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

в снимках mon$ разных систем часто бывают ситуации - например, 100 коннектов, 90 транзакций, 10 запросов привязанных к транзакциям, и 10 тысяч запросов, которые не привязаны ни к какой транзакции.
Мне даже странно слышать, что "а могут быть транзакции, в которых нет активных запросов". Конечно могут. Стартанул транзакцию, и либо не выполняешь запрос вообще, либо выполняешь и его закрываешь.
Или разговор о чем-то другом?
...
Рейтинг: 0 / 0
Имя транзакции
    #40129542
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad> Если под "тр-ция шуршит" подразумевается "тр-ция ещё активна"

"Активна" понятие слишком расплывчатое -
так что именно шуршит, что-то там делает,
нагружает сервер (и возможно даже вполне
возможно, коннект не совсем "готов" для
следующих запросов с клиента).

Наверняка такое возможно, но сценарии
я описывать не возьмусь.


P.S. Ещё один минус предложенного
Григорием варианта с комментами в
тексте запросе - это то, что если коммент
будет "динамический" - изменяемый по
ходу работы приложения/транзакции -
то prepare будет вызываться каждый раз.
Мелочь, а неприятно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129544
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
"Активна" понятие слишком расплывчатое
Живая - понятнее ?

Гаджимурадов Рустам
так что именно шуршит, что-то там делает,
нагружает сервер
Без действий пользователя (приложения) сервер ничего не делает с пользовательской тр-цией.
Т.е. тр-ция не может "шуршать" если её об этом не просили.
Единственный вариант реальной "активности тр-ции" без наличия выполняемого SQL запроса - это её старт и завершение.
Но этим тоже управляет клиент (кроме случаев завершения сервера и принудительного отката всего).

Гаджимурадов Рустам
и возможно даже вполне
возможно, коннект не совсем "готов" для
следующих запросов с клиента.
Если сервер не занят выполнением текущего запроса клиента - он готов к выполнению следующего (опять же не рассматриваем завершение работы сервера).
Т.е. если сервер вернул ответ на запрос клиента, то он уже готов выполнять следующий запрос.

Итого - нет никакой волшебной активности сервера в контексте тр-ции\коннекта клиента, если клиент его об этом не просил. Не нужно выдумывать.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129551
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad> Живая - понятнее ?

Нет. После старта, но без/до [первого] запроса она тоже живая.

> Т.е. тр-ция не может "шуршать" если её об этом не просили.

Сброс каких-нибудь кешей, освобождение памяти и т.п.
Точно нет никаких вариантов, сценариев? Ну и отлично.


hvlad> Т.е. если сервер вернул ответ на запрос клиента,
hvlad> то он уже готов выполнять следующий запрос.

Зазор между "запрос пропал из мониторинга" и
"клиент получил ответ (сеть не учитываем) и
может отправлять след. запрос" имеется?


P.S. Я ничего не выдумываю, просто интересуюсь. :)
На всякий. Для пользы ТСа в основном и вообще. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129556
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
hvlad> Живая - понятнее ?

Нет. После старта, но без/до [первого] запроса она тоже живая.
И ? Что не понятно-то ? Тр-ция либо есть, либо её нет. Когда она есть - она "живая", "активная".


Гаджимурадов Рустам
hvlad> Т.е. если сервер вернул ответ на запрос клиента,
hvlad> то он уже готов выполнять следующий запрос.

Зазор между "запрос пропал из мониторинга" и
"клиент получил ответ (сеть не учитываем) и
может отправлять след. запрос" имеется?
Клиент не может отправить следующий запрос, пока не получил ответ на текущий.

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

Насчёт мониторинга - в принципе, посторонний коннект может выполнить запрос в мониторинг и не увидеть там
только что освобождённый запрос нашего клиента, причём до того как наш клиент об этом узнает (получит ответ).
Но как это всё связано с обсуждаемым "шуршанием тр-ции" - я так и не понял.
...
Рейтинг: 0 / 0
Имя транзакции
    #40129571
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad> пока не получил ответ на текущий.

Не, я не про клиента, я про сервер.
Если сервер отработал запрос - для
простоты представим, что это не
НД, а исполняемая процедура -
отправил ответ "клиенту", то всё, с
этого момента (и до след. API-вызова)
"в транзакции" никакой активности
быть не может, совсем-совсем?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Имя транзакции
    #40129589
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

ты о сбросе грязных страниц Cache Writer'ом что ли?
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Имя транзакции
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (2): Анонимы (2)
Пользователи онлайн (9): Анонимы (6), Yandex Bot, Bing Bot 1 мин., Google Bot 9 мин.
x
x
Закрыть


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