Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Добрый день! По старинке генерю значение, везде на других (7-ми базах) работает, а на одной нет. Тоесть на 8-ой работает через раз (конструкция ниже). Код: sql 1. Выдает такую ругачку: Не найдена подпрограмма или не верные аргументы. Код ошибки : SQLSTATE=42884 Что это может быть, почему работает через раз, как такое лечить? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 12:14 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
"не верные"? Хм. Не может она работать через раз при прочих равных. Следите за типами параметров. При сомнении используйте DBMS_UTILITY.GET_HASH_VALUE(cast(param1 as varchar(32000),cast(param2 as integer),cast(param3 as integer)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 15:45 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Victor Metelitsa, Другие функции тоже начали глючить, через раз. Думаю - базу перестартовывать нужно DB2 Stop DB2 START сделать, имхо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 16:40 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
medoedVictor Metelitsa, Другие функции тоже начали глючить, через раз. Думаю - базу перестартовывать нужно DB2 Stop DB2 START сделать, имхо! Проводился ли недавно upgrade DB2? Запускался ли после upgrade'а instance'а db2updv105 (ну, или, соответственно, db2updv97, db2updv10)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 19:01 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Описание ошибки достаточно ясное. Это повод присмотреться к аргументам. Как я понимаю, "через раз" на сервер отправляется SQL-выражение с параметрами для DBMS_UTILITY.GET_HASH_VALUE(..), которые по какой-то причине не приводятся (однозначно) к тройке типов (VARCHAR, INTEGER, INTEGER). Возможно, моё предложение с CAST'ами приведёт к тому, что будет выдаваться другое сообщение об ошибке (что не удалось привести значение к типу), и это поможет увидеть проблему. Или (худший вариант) - сообщения об ошибках уйдут, мусор будет загнан под ковёр. Возможно, конечно, что это в DB2 что-то поломалось, но проблемы в пользовательском коде как-то более вероятны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 08:53 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
CawaSPbmedoedVictor Metelitsa, Другие функции тоже начали глючить, через раз. Думаю - базу перестартовывать нужно DB2 Stop DB2 START сделать, имхо! Проводился ли недавно upgrade DB2? Запускался ли после upgrade'а instance'а db2updv105 (ну, или, соответственно, db2updv97, db2updv10)? Нет, пару последних лет ничего не трогали, версия DB2 9.7. Сегодня тьфу тьфу пока ничего не глючит, наблюдаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 10:53 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Вы ситуацию описали не очень детально. А это может быть, например, динамически конструируемый SQL c прямой подстановкой литералов. И тогда от литерала будет зависеть, например, влезет ли он в ограничение Integer, или будет чем-то другим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 11:17 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Victor MetelitsaВы ситуацию описали не очень детально. А это может быть, например, динамически конструируемый SQL c прямой подстановкой литералов. И тогда от литерала будет зависеть, например, влезет ли он в ограничение Integer, или будет чем-то другим. У нас сетка локальная глючит эту неделю - пока виним ее (связь с серваком хромает)! Если бы параметры разные то да , а у меня вчера с одними и теми же, то срабатывает, то нет! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 11:20 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
cast(1 as integer) и cast(1 as bigint) - разные вещи, причём тип может выводиться откуда-то ещё. Мне в такое проще поверить, чем в проблемы DB2. А в проблемы DB2 поверить проще, чем в проблемы сетки, которые целенаправленно меняют типы параметров, и ничего более, причём контрольные суммы пакетов не проверяются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 11:29 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Victor Metelitsacast(1 as integer) и cast(1 as bigint) - разные вещи, причём тип может выводиться откуда-то ещё. Мне в такое проще поверить, чем в проблемы DB2. А в проблемы DB2 поверить проще, чем в проблемы сетки, которые целенаправленно меняют типы параметров, и ничего более, причём контрольные суммы пакетов не проверяются. Переписал свой скрипт с приведением типов вашим способом, но думаю вы ошибаетесь! При глюках потестю ваш скрипт, дабы разрешить сомнения! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 11:44 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.messages.sql.doc/doc/msql00440n.html?lang=en sqlcode: -440 sqlstate: 42884 routine-name was either incorrectly specified or does not exist in the database. A qualified reference was made, and the qualifier was incorrectly specified. The user's SQL path does not contain the schema to which the desired function or method belongs, and an unqualified reference was used. The user's SQL path does not contain the module to which the desired routine belongs. The module-qualified routine reference is made from outside the module but the module routine is not published. The wrong number of arguments was included. The right number of arguments was included in the function or method reference, but the data types of one or more of the arguments is incorrect. Named arguments were used which do not match the parameter names of routine routine-name. There are one or more routines with the same name and number of parameters declared in the current compound statement. There are one or more routines with the same name declared in the outer compound statements within which the current compound statement declaring a routine is nested. The routine does not exist in the database with the same function id that was used when the package was bound (applies to static statements). The mutator method corresponding to an attribute assignment used in an UPDATE statement could not be found. The data type of the new value for the attribute is not a data type that is the same or promotable to the data type of the attribute. The routine invoker is not authorized to execute the routine. The server time was reset or changed. The database was restored on a server with a different time or time zone. The time associated with the members in multi-partitionned database environments is out of sync. Положим для простоты, что мы не натолкнулись на глюки сетки или баг DB2 - тогда что из этого подходит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 12:25 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Victor Metelitsa http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.messages.sql.doc/doc/msql00440n.html?lang=en Положим для простоты, что мы не натолкнулись на глюки сетки или баг DB2 - тогда что из этого подходит? Ничего что у нас 9.7 , а вы ссыль на доку от db2 10.5 даете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 12:30 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Лучше так: sqlcode: -440 sqlstate: 42884 1.routine-name was either incorrectly specified or does not exist in the database. 2.A qualified reference was made, and the qualifier was incorrectly specified. 3.The user's SQL path does not contain the schema to which the desired function or method belongs, and an unqualified reference was used. 4.The user's SQL path does not contain the module to which the desired routine belongs. 5.The module-qualified routine reference is made from outside the module but the module routine is not published. 6.The wrong number of arguments was included. 7.The right number of arguments was included in the function or method reference, but the data types of one or more of the arguments is incorrect. 8.Named arguments were used which do not match the parameter names of routine routine-name. 9.There are one or more routines with the same name and number of parameters declared in the current compound statement. 10.There are one or more routines with the same name declared in the outer compound statements within which the current compound statement declaring a routine is nested. 11.The routine does not exist in the database with the same function id that was used when the package was bound (applies to static statements). 12.The mutator method corresponding to an attribute assignment used in an UPDATE statement could not be found. The data type of the new value for the attribute is not a data type that is the same or promotable to the data type of the attribute. 13.The routine invoker is not authorized to execute the routine. 14.The server time was reset or changed. 15.The database was restored on a server with a different time or time zone. 16.The time associated with the members in multi-partitionned database environments is out of sync. С 1 по 6 отпадают. За 7-й я проголосовал. С 8-го по 16, скорее всего, тоже отпадают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 12:31 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
medoedVictor Metelitsa http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.messages.sql.doc/doc/msql00440n.html?lang=en Положим для простоты, что мы не натолкнулись на глюки сетки или баг DB2 - тогда что из этого подходит? Ничего что у нас 9.7 , а вы ссыль на доку от db2 10.5 даете? Я по этому поводу в данном конкретном случае не беспокоюсь, потому что список причин мог прибавиться, но не измениться. Но мне не жалко - http://www.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.messages.sql.doc/doc/msql00440n.html?lang=en автор 1.routine-name was either incorrectly specified or does not exist in the database. 2.A qualified reference was made, and the qualifier was incorrectly specified. 3.The user's SQL path does not contain the schema to which the desired function or method belongs, and an unqualified reference was used. 4.The user's SQL path does not contain the module to which the desired routine belongs. 5.The module-qualified routine reference is made from outside the module but the module routine is not published. 6.The wrong number of arguments was included. 7.The right number of arguments was included in the function or method reference, but the data types of one or more of the arguments is incorrect. 8.Named arguments were used which do not match the parameter names of any routine routine-name. 9.The routine does not exist in the database with the same function id that was used when the package was bound (applies to static statements). 10.The mutator method corresponding to an attribute assignment used in an UPDATE statement could not be found. The data type of the new value for the attribute is not a data type that is the same or promotable to the data type of the attribute. 11.The routine invoker is not authorized to execute the routine. 12.The server time was reset or changed. 13.The database was restored on a server with a different time or time zone. 14.The time associated with the nodes in multi-partitionned database environments is out of sync. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 12:33 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
medoedПереписал свой скрипт с приведением типов вашим способом, но думаю вы ошибаетесь! При глюках потестю ваш скрипт, дабы разрешить сомнения! Я довольно часто ошибаюсь, особенно тогда, когда не вижу ни реального кода, ни структуры. Могу ещё предложить список APAR'ов изучать, причём не только 9.7, но и более поздних. Быть может, это таки DB2-шный баг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 12:41 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
medoed, Системные функции с такими ошибками массово могут начинать отказывать, когда играются с системным временем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 13:10 |
|
||
|
Странная ошибка при вызове процедуры , через раз...
|
|||
|---|---|---|---|
|
#18+
Mark Barinsteinmedoed, Системные функции с такими ошибками массово могут начинать отказывать, когда играются с системным временем. Спасибо, Марк! Не игрались мы, а не могло оно слететь на апп сервере и обычном из за обрыва сети, типа нет синхронизации между ними!? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 13:16 |
|
||
|
|

start [/forum/topic.php?fid=43&gotonew=1&tid=1600598]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
167ms |
get topic data: |
10ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 269ms |
| total: | 538ms |

| 0 / 0 |
