|
|
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Добрый всем день Программа стала выдавать ошибку входных данных. Проверил процедуру, все параметры в норме. Перекомпилировал процедуру+ от неё зависящие, ошибка перестала сразу появляться,но при обработке выходит снова. Техподдержка просит сделать бэкап/рестор (был уже такой случай,проблема была решена, но рестор базы в 260 гигов.... ну вы поняли). Что можно сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 11:07 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
GallemarДобрый всем день Программа стала выдавать ошибку входных данных. Проверил процедуру, все параметры в норме. Перекомпилировал процедуру+ от неё зависящие, ошибка перестала сразу появляться,но при обработке выходит снова. Техподдержка просит сделать бэкап/рестор (был уже такой случай,проблема была решена, но рестор базы в 260 гигов.... ну вы поняли). Что можно сделать?1. научиться жать Ctrl+C вместо Alt+PrtScr 2. выставить претензию разработчикам говно-софта. 3. перестать колупать гвоздиком метаданные на продакшене. 4. убить себя ап стену (опционально). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 11:20 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Один высказался,а мысли по существу будут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 11:25 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
GallemarПроверил процедуру, все параметры в норме. Перекомпилировал процедуру+ от неё зависящие, ошибка перестала сразу появляться,но при обработке выходит снова. А перед перекомпилированием самой процедуры и всех зависимых пользователей выгонял или просто в wait транзакции выполнял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 11:57 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar... ошибка перестала сразу появляться,но при обработке выходит снова. ... Это как??? ps/ Кроме как Повыгонять всех и сделать то что делал " Перекомпилировал процедуру+ от неё зависящие" мыслей у меня нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 11:57 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
m7mGallemar... ошибка перестала сразу появляться,но при обработке выходит снова. ... Это как??? Раньше ошибку получал при запуске,сейчас софтина минут 30 думает с обработкой данных и показывает ошибку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:01 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar, Ну а сами входные данные в норме? Может там при формировании скрипта (или как оно у вас импортирует) происходит облом где-та в середине пакета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:05 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
DarkMaster,с входными порядок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:06 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar, попробуй firebird.msg подсунуть. Может текст ошибки попродробней будет. Что с процедурой делалось? Если был добавлен новый параметр, то может стоит ему значение по умолчанию прописать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:18 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисЧто с процедурой делалось? Если был добавлен новый параметр, то может стоит ему значение по умолчанию прописать. Ничего не делалось,проверял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:20 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemarс входными порядок Чем докажешь? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:21 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov,ничем,интуиция. Через 38 минут закончится рабочий день и решение проблемы ляжет на плечи саппорта. Вечером только ещё раз перекомпилирую все процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:23 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar, Я бы все-таки вместо процедуры (если это для нее формируется входной поток) поиспользовал заглушку и выбросил бы данные, что на вход пришли в табличку для анализа. То, что процедуры ломается где-то посередине говорит скорее о проблемах во входных данных - т.е. в какой-то момент вместо EXECUTE ...AAAA(1,2,3) пытается выполнится .... AAAA(1,2,3,4) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:26 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar, Ну и добавил бы еще один параметр в процедуру с default значением. Тогда можно будет поймать хотя бы несоответствие типов, если я прав и какой-то момент проце подсовывают еще один левый параметр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:29 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar, попробуй запустить трейс и в нём выбрать опцию log_errors ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 12:37 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Симонов Дениспопробуй запустить трейс и в нём выбрать опцию log_errors Лучше с фильтром на имя процедуры. Так он заодно увидит если приложение её пересоздаёт на лету. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 13:03 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
При подобной ошибке не мешало бы увидеть стек вызова. Там сразу было бы видно кто что вызывает и с какими параметрами. Но можно и погадать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 13:07 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovСимонов Дениспопробуй запустить трейс и в нём выбрать опцию log_errors Лучше с фильтром на имя процедуры . Это я слишком давно в подвале сижу, или трейс 2.5 (да и 3.0) научился фильтровать не только по "штатным" фразам типа 'SELECT|INSERT|UPDATE|DELETE', но еще и по пользовательским именам ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 17:17 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Не понял. Инклуд фильтр фильтрует всё. P.S. Даже комментарии, наверное, хотя не проверял. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 17:23 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустамне проверял.дык это... проверь, что ле... :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 17:44 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Что проверять? По имени объекта не фильтруется? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 20:24 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Воспроизводимый пример есть? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 20:45 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Query-1: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Какой должен быть include_filter в конфиге трейса, чтобы в нём вылезли данные только по query-1 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 21:10 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov"Ну, вы, блин, даёте..." (с) CORE-4370 кто заводил?..Когда в трекере мну пишут 'won`t fix', то я иду наилегчайшим путём: забываю про этот тикет. Напрочь. PS. а иногда и про соседние с ним тоже... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 21:13 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Таблоид> Какой должен быть include_filter в конфиге трейса, Таблоид> чтобы в нём вылезли данные только по query-1 ? Вестимо, include_filter = %my_very_clever_sp% Если нужно - можно весь запрос впиндюрить. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 21:26 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамТаблоид> Какой должен быть include_filter в конфиге трейса, Таблоид> чтобы в нём вылезли данные только по query-1 ? Вестимо, include_filter = %my_very_clever_sp% Так. Замечательно. А теперь создаем конфиг трейса вот с такими раскомментаренными параметрами: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Затем запускаем трейс, запускаем isql и вводим там: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 21:34 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Таблоид> И любуемся на трейс: Попробуй со скобками, я не помню требуются ли они. Если и со скобками не пашет - баг, в трекер. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 21:44 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамТаблоид> И любуемся на трейс: Попробуй со скобками, я не помню требуются ли они. Если и со скобками не пашет - баг, в трекер.Не пашет. Пробовал вот так: include_filter = (%my_very_clever_sp%) И вот эдак тоже: include_filter = %(my_very_clever_sp)% В трекер заносить - не уверен, нужно ли. Ибо Влад мну говорил как-то, что include / exclude фильтра срабатывают только на жестко прописанные в коде "ключевые слова", набор которых есть: %(SELECT|INSERT|UPDATE|DELETE)%. Но может, я и путаю опять что-то - не знаю. Пусть Влад вправит моцг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 22:03 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Таблоид> include / exclude фильтра срабатывают только на жестко прописанные Таблоид> в коде "ключевые слова" Первый раз слышу. И по коду это никак не видно, написано ровно обратное, там обычная регулярка по всему тексту запросу с пом. Similar. Таблоид> набор которых есть: %(SELECT|INSERT|UPDATE|DELETE)%. Тем более чушь какая-то, ибо ключевые слова/операторы этим коротким списком не ограничиваются. Но подожди Влада, если сомневаешься, может, он чего подскажем, может, это вообще только недавно поломали. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 22:14 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустампо коду это никак не видно, написано ровно обратное, там обычная регулярка по всему тексту запросу с пом. Similar.Ну, если бы сиё раньше работало, а теперь вдруг поломалось, то об этом бы кто-нибудь да возопил бы. Здесь или в трекере, неважно. Но народ безмолствует. А значит, два варианта: 1) никогда и не работало; 2) никто вообще эти include/exclude-фильтра не юзает, "потому и не знают". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 22:26 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Таблоид> Ну, если бы сиё раньше работало, а теперь вдруг поломалось, Таблоид> то об этом бы кто-нибудь да возопил бы. Здесь или в трекере, неважно. Ну вот ты и возопил. > 2) никто вообще эти include/exclude-фильтра не юзает, "потому и не знают". Тоже возможно. Вернее, количество исп. трейс итак не шибко велико, а среди них фильтры юзающих - ещё сильно меньше должно быть. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 22:38 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Таблоид, Такая феерическая чушь меня даже в отпуске достала... 1. regexp фильтры действуют только на текст твоего запроса , а никак не на имена объектов (процедур, таблиц и т.п.). 2. Ни одного log_statement_XXX у тебя не разрешено. Далее объяснять ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2014, 23:32 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
hvlad> 2. Ни одного log_statement_XXX у тебя не разрешено. А ларчик просто открывался. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2014, 00:00 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
hvlad1. regexp фильтры действуют только на текст твоего запроса , а никак не на имена объектов (процедур, таблиц и т.п.). 2. Ни одного log_statement_XXX у тебя не разрешено. Далее объяснять ?Да чего ж тут объяснять, всё и так понятно. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Далее запускаю трейс с конфигом: Код: plaintext 1. 2. Ну, и стартую "самую главную процедуру на свете": Код: plaintext Трейс молчит. Потому что вызов my_very_clever_sp прошёл не как statement, а внутри psql-блока app_root. А ежели вот такой конфиг: Код: plaintext 1. 2. 3. - то трейс будет выдавать вызовы и этой, и всех прочих ХП. Так что да, "ларчик просто открывается": вызовы отследить можно, только если они идут через execute statement, либо вообще с клиента дёргаются. Если я опять тут феерчушь несу, то покажи конфиг, при котором можно решить эту задачу: регистрировать вызовы только одной ХП, с именем 'my_very_clever_sp', каким бы способом она не вызывалась: напрямую из isql-подсказки, через ES, или же из PSQL-кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2014, 08:00 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
ТаблоидТак что да, "ларчик просто открывается": вызовы отследить можно, только если они идут через execute statement, либо вообще с клиента дёргаются. о чем Влад и написал русским по белому Таблоидможно решить эту задачу: регистрировать вызовы только одной ХП, с именем 'my_very_clever_sp', каким бы способом она не вызывалась: напрямую из isql-подсказки, через ES, или же из PSQL-кода. через фильтры ее решить нельзя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2014, 09:52 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
dimitrчерез фильтры ее решить нельзя Тогда вопрос: какая часть посланного с клиента запроса (EB в данном случае) считается за "statement" и подвергается фильтрации, а какая - нет? Почему в упомянутом CORE фильтр работал со строкой внутри ЕВ как ни в чём не бывало, а в примере постом выше - уже не хочет?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2014, 11:54 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, в примере постом выше процедура, а не EB ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2014, 12:35 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
dimitrв примере постом выше процедура, а не EB Тьфу. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2014, 13:10 |
|
||
|
Ошибка
|
|||
|---|---|---|---|
|
#18+
Gallemar, пару раз сталкивался именно с такой ошибкой. Возникает ввиду использования некоторыми уникумами кода вида: MyQuery.SQL.Text = Format('execute procedure my_proc(%f), [MyVar]') где MyVar значение типа float. Естественно о региональных настройках форматов при этом думают в последнюю очередь. В случае если в языковых настройках Windows разделителем целой и дробной части стоит запятая, то в результате при значении параметра, например MyVar = 1.35 на выходе имеем SQL вида: execute procedure my_proc(1,35) что естественно не проглатывается сервером. Решение зависит от возможностей. Если есть доступ к исходникам, то исправить код. Иначе только менять разделитель целой и дробной части в настройках винды на точку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 18:17 |
|
||
|
|

start [/forum/topic.php?all=1&fid=40&tid=1563337]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
178ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
75ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 529ms |

| 0 / 0 |
