powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
7 сообщений из 32, страница 2 из 2
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933113
Jarz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

JarzА итоговый я не знаю как посмотреть.

Повторяю медленно: включить аудит на стороне Firebird. Что ты якобы и сделал в
https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322814&msg=22090471
Тоже врал?..
Вот что сделал я:

1. В файле firebird.config прописал путь к моему fbtrace.conf
Код: sql
1.
AuditTraceConfigFile = c:\temp\fbtrace.conf


2. В файле fbtrace.conf написал
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
database = c:\\test\\test.fdb
{
	# Do we trace database events or not
	enabled = true

	# Operations log file name. For use by system audit trace only
	log_filename = c:\\test\\test.log

	# Put attach/detach log records 
	log_connections = true

	# Put transaction start/end records 
	log_transactions = true

	# Put sql statement prepare records 
	log_statement_prepare = true

	# Put sql statement free records 
	log_statement_free = true

	# Put sql statement execution start records 
	log_statement_start = true
	
	# Put sql statement execution finish\fetch to eof records 
	log_statement_finish = true

	# Put record when stored procedure is start execution 
	log_procedure_start = true

	# Put record when stored procedure is finish execution 
	log_procedure_finish = true

	# Put record when stored function is start execution 
	log_function_start = true

	# Put record when stored function is finish execution 
	log_function_finish = true

	# Put blr requests compile/execute records 
	log_blr_requests = true

	# Print blr requests or not
	print_blr = true
}


3. Перезапустил Firebird
4. Выполнил запрос "ExEcuTe PROCEDURE"
5. В логе увидел только "ExEcuTe PROCEDURE", хотя в исходниках драйвера запрос написан строчными буквами. Я, правда, не знаю - должен ли он ("драйверный" запрос) там появиться.

Вполне возможно, что я сделал не то, что Вы подразумевали под аудитом. Или сделал неправильно.

###

kdv
Jarz,
Если же где-то внутри кто-то перекручивает вызов процедуры то так то эдак, по каким-то мутным критериям, то это его проблемы.
В данном случае - мои тоже, т.к. от ODBC-драйвера отказаться по ряду причин нет возможности, а у меня подозрения , что виноват именно драйвер.

kdv
Если процедура селективная, и надо выбрать оттуда набор записей, так и вызывать её надо как select from procedure, а не как execute procedure.
Процедура неселективная. Впрочем, свою догадку я уже объяснил.

###

Ладно, благодарю всех. Пока извернусь, а потом попробую драйвер пересобрать. Хотя бы чисто из спортивного интереса :)
...
Рейтинг: 0 / 0
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933154
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JarzВполне возможно, что я сделал не то, что Вы подразумевали под аудитом. Или сделал неправильно.

Да, ты сделал именно то, что я подразумевал. И раз ты увидел в логе только свой запрос, то
должен был бы понять, что та часть кода ODBC драйвера, которую ты подозревал, не
выполнялась. Что логично, поскольку она предназначена для интерпретации ODBC синтаксиса
запросов. Значит теперь надо подозревать другие части кода ODBC драйвера (или приложений,
включая IBExpert).

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

PS: Включить протоколирование ODBC чтобы видеть что творится "по эту сторону" - тоже
хорошая идея.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933210
Jarz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Был неправ, что драйвер вызывает не ту функцию. Приношу всем извинения.
...
Рейтинг: 0 / 0
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933236
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извинения ни к чему. Лучше просто расскажи что именно было не так. Чтобы знать где грабли
лежат.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933237
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

Извинения ни к чему. Лучше просто расскажи что именно было не так. Чтобы знать где грабли
лежат.


В автокоммите Эта сладкая парочка - автостарт-автокоммит - просто неиссякаемый склад этого садового инвентаря.
...
Рейтинг: 0 / 0
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933260
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишкаВ автокоммите

Ну так он же утверждал, что коммитил принудительно. Да и ODBC спеки говорят, что при
автокоммите следует коммитить каждый запрос:
https://docs.microsoft.com/en-us/sql/odbc/reference/develop-app/auto-commit-mode?view=sql-server-ver15
То есть это таки может быть баг в драйвере.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
    #39933284
Jarz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Извинения ни к чему. Лучше просто расскажи что именно было не так. Чтобы знать где грабли
лежат.
Где грабли лежат - не знаю. Просто при попытке пересобрать драйвер я понял, что был невнимателен.
...
Рейтинг: 0 / 0
7 сообщений из 32, страница 2 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ODBC, "execute procedure", commit - не обновляются данные до дисконнекта
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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