![]() |
|
Модераторы: Akella |
![]()
|
|
| tishaishii |
|
||||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
Иногда при выполнении процедуры C_SESSION выдаётся ошибка:
Процедура:
ID_SESSION создаётся с помощью односторонней функции шифрования из информации, введённой пользователем (имя\пароль). Процедура C_SESSION вызывается каждый раз при обращении пользователя c тем, чтобы вести о нём информацию (как-то его идентифицировать). I_SESSION - добавляет новую сессию. UDT_SESSION - обновляет дату последней активности пользователя. Что не так? |
||||
|
|||||
| Esperito |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 2.9.2007 Репутация: нет Всего: 3 |
Параметры у транзакции какие?
|
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
tishaishii, покажи еще текст UDT_SESSION, потому как именно в ней ошибка.
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
|
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
tishaishii, значит в момент обновления запись уже кем-то редактировалась и транзакция не подтверждена.
С процедурой UDT_SESSION проблем нет, теперь ищи в исходниках на клиенте. Пользуешься ли конструкцией with lock в select? Возможно где-то на клиенте посылается "холостой" update для блокировки записи. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
Блокировками не пользуюсь.
На клиенте искать не знаю где. Клиент у меня Firefox, который общается с apache2, который в свою очередь с firebird2. |
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
Смотрел-засмотрелся. Проблема осталась.
Думаю, всё-таки, FB не многопоточная СУБД, в этом косяк. |
|||
|
||||
| Esperito |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 2.9.2007 Репутация: нет Всего: 3 |
Прошу прощения? Рекомендую всё-таки отыскать параметры транзакции. |
|||
|
||||
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
Какои транзакции? Какие параметры?
|
|||
|
||||
| Esperito |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 2.9.2007 Репутация: нет Всего: 3 |
Любая операция с базой в Firebird выполняется внутри какой-то транзакции с какими-то параметрами (читает/пишет, уровень изоляции транзакции). Вот в транзакции(-ях) с какими параметрами выполняются твои процедуры?
|
|||
|
||||
| Fortop |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: нет Всего: 42 |
tishaishii,
найди код в клиенте, где вызывается твоя ХП, и с каким параметром она вызывается. Очень похоже, что ты пытаешься провести одновременно две транзакции. Не завершив другую. К сожалению твой клиент на Perl, я его не знаю совсем. В PHP выглядело бы примерно так ibase_trans($flag); где $flag одно из
-------------------- Мир это Я. Живее всех живых. |
|||
|
||||
![]()
|
| Правила форума "Interbase" | |
|
|
Обязательно указание: 1. Версию InterBase (Firebird, Yaffil) 2. Способа доступа (ADO, BDE, IBX и т.д.)
Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Firebird, Interbase | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |