|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhps, примерно то же самое для "update statistics for procedure"... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 15:21 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
Вы на верном пути. Разбейте скрипт на Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 15:33 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
oncheck -cc july Validating database db Validating systables for database db ERROR: informix.systables nextsize 72 != tblspace.nxtsize 128 TBLspace name systables Owner informix TBLspace number 301abd Tabid 1 Row size 500 Number of columns 26 Number of indexes 2 Number of rows 1083695104 Date created 09.08.11 TBLspace major version number 6 TBLspace minor version number 682 TBLspace type T Locking level R Number of pages used 1080057856 First extent size 16 Next extent size 144 Flags 0 Site Database name ERROR: informix.sysprocedures nextsize 176 != tblspace.nxtsize 128 TBLspace name sysprocedures Owner informix TBLspace number 301ad1 Tabid 16 Row size 5274 Number of columns 31 Number of indexes 3 Number of rows 1084273152 Date created 18.02.05 TBLspace major version number 3 TBLspace minor version number 682 TBLspace type T Locking level R Number of pages used 1081704448 First extent size 16 Next extent size 352 Flags 0 Site Database name ERROR: informix.sysfragments nextsize 160 != tblspace.nxtsize 128 TBLspace name sysfragments Owner informix TBLspace number 301ad3 Tabid 25 Row size 759 Number of columns 23 Number of indexes 1 Number of rows 1084513792 Date created 09.08.11 TBLspace major version number 6 TBLspace minor version number 682 TBLspace type T Locking level R Number of pages used 1082150912 First extent size 16 Next extent size 320 Flags 0 Site Database name ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 15:43 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
Daugava, пока нашел вот такое для "update statistics for procedure systdistold;": >[Error] Script lines: 1-8 -------------------------- Routine (systdistold) can not be resolved. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 16:56 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
IIUG Поддержу мнение Кагеля, что кто-то руцами поменял в системных таблицах. ALTER TABLE думаю решит этот вопрос. Однако, не думаю, что именно extent-ы приводят к вашей проблеме. Все таки попробуйте сделать update statistics каждой конкретной процедуре-функции. В крайнем случае выгрузить их через dbschema и пересоздать. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 17:02 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
Daugava, сделал update statistics для всех процедур. ругнулся только на выше указанную далее, делаю alter table systables MODIFY NEXT SIZE 10000; alter table sysprocedures MODIFY NEXT SIZE 10000; alter table sysfragments MODIFY NEXT SIZE 10000; для systables и sysfragments выдает >[Error] Script lines: 1-1 -------------------------- Could not open database table (informix.sysfragments). More exceptions ... ISAM error: non-exclusive access. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 17:54 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
Daugava,после перезагрузки сервера oncheck -cc выдает теперь ошибку о двух таблицах, в которых не удалось изменить NEXT SIZE. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 18:05 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
Daugava, получилось сделать изменение всех трех таблиц в single user mode. Теперь oncheck -cc не ругается. Попробую снова сделать "update statistics;" ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 18:26 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
По поводу ошибок при выполнении запросов... Проблема связана похоже не с драйвером а с базой (попробовали 2 драйвера - 3.50 и 3.70, со старым информиксом(9.40FC6) работают, с новым(11.70FC3DE) нет). Происходит изза того что произвольным образом меняется порядок подстановки параметров в параметризованный запрос. Вот входные параметры: String sql = "SELECT \n" + "subs.regionid as id, trim(subs.regname) as name, reg.supregid as regionId, reg.country, trim(reg.supregname) as regionName\n" + " FROM regions subs INNER JOIN superregions reg ON reg.supregid = subs.supregid " + "WHERE (\n " + "(((subs.supregid in (\n" + "SELECT ss.supregid FROM wfProcessSubsidiary ps\n" + "INNER JOIN regions ss ON ss.regionid = ps.subsidiaryid\n" + "WHERE ps.processid = ?))\n" + " OR \n" + "subs.regionid in ( \n" + "SELECT subsidiaryid FROM wfProcessSubsidiary ps WHERE ps.processid = ?)) \n" + " OR \n" + " subs.supregid in (\n" + "SELECT perm.regionId FROM april_permission perm \n" + "INNER JOIN wfAction4role role2act \n" + " ON role2act.role = perm.role AND role2act.actionDefId = ?\n" + "INNER JOIN tasks app\n" + " ON app.key = ?\n" + " AND app.task = perm.sheme\n" + " WHERE perm.type = 'R' AND perm.operatorid = ?))\n" + ") \n" + " ORDER BY subs.regname"; PreparedStatement ps = null; int permitObjectId = 0; int idx = 1; int actionDefId = 23483; int operatorId = 2135; String applicationKey = "key12"; Вот выдаваемая ошибка: java.sql.SQLException: A character to numeric conversion process failed at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:413) at com.informix.jdbc.IfxSqli.a(IfxSqli.java:3494) at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3807) at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2610) at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2526) at com.informix.jdbc.IfxSqli.a(IfxSqli.java:1785) at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java:1723) at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java:1654) at com.informix.jdbc.IfxResultSet.a(IfxResultSet.java:209) at com.informix.jdbc.IfxStatement.executeQueryImpl(IfxStatement.java:1230) at com.informix.jdbc.IfxPreparedStatement.executeQuery(IfxPreparedStatement.java:382) at com.hsp.april.permission.test.TestInformixConnection.main(TestInformixConnection.java:55) Caused by: java.sql.SQLException at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:413) at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3812) ... 9 more Exception in thread "main" java.lang.NullPointerException at com.hsp.april.permission.test.TestInformixConnection.main(TestInformixConnection.java:62) Скрипт отрабатывает, если входные параметры произвольно поменять местами. А таких мест много...Может сталкивался кто? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2011, 10:57 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
DaugavaВсе таки попробуйте сделать update statistics каждой конкретной процедуре-функции. В крайнем случае выгрузить их через dbschema и пересоздать. правильно ли я понимаю, что для выгрузки только процедур надо запустить: dbschema -fp all -d db_name /file_name ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2011, 17:34 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhpsDaugavaВсе таки попробуйте сделать update statistics каждой конкретной процедуре-функции . В крайнем случае выгрузить их через dbschema и пересоздать. правильно ли я понимаю, что для выгрузки только процедур надо запустить: dbschema -fp all -d db_name /file_name dbschema -f all -d db_name /file_name ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2011, 17:49 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
АнатоЛойdbschema -f all -d db_name /file_name Сформировал скрипт. Запустил на новом сервере. Уже 17 часов делается... Это нормально? И еще попытался настроить ежедневный update statistics через OAT. Теперь каждый день мне выдается сообщение типа: "01:11:00 SCHAPI: [Auto Update Statistics Evaluation 32-18] Error -214 Cannot remove file for table (Current AUS tables are in use). 01:11:00 SCHAPI: [Auto Update Statistics Evaluation 32-18] Error -107 ISAM error: record is locked. " Что это такое? Или ткните пожалуйста, где почитать... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2011, 15:56 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhpsСформировал скрипт. Запустил на новом сервере. Уже 17 часов делается... Это нормально? ИМХО, не нормально. Посмотрите, какую строку скрипта выполняет Информикс-сессия (onstat -g sql <номер_сессии>) - с целью узнать, есть ли "продвижение" по тексту скрипта. Или на чем-то висит... Какие флаги состояния сессии? Зацитируйте, пожалуйста, начало скрипта. Как запускаете? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2011, 16:17 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
svat2, Перезапустил заново, так как были проблемы с компьютером...Выполняется уже 35 минут. -bash-3.00$ onstat -g sql 79 IBM Informix Dynamic Server Version 11.70.FC3DE -- On-Line -- Up 1 days 01:44:48 -- 1048576 Kbytes Sess SQL Current Iso Lock SQL ISAM F.E. Id Stmt type Database Lvl Mode ERR ERR Vers Explain 79 - DBname CR Not Wait 0 0 9.28 Off Last parsed SQL statement : DATABASE DBname Начало скрипта: create procedure "informix".convdateinf2plat(p_day integer, p_month integer, p_year integer) returning integer; define DatePlatinum integer; let DatePlatinum = MDY(p_month,p_day,p_year)-MDY(1,1,1)+1; return DatePlatinum; end procedure; Запускаю весь сформированный dbschema скрипт через Aqua Data Studio 4.7.2 Надо ли перед запуском скрипта дропать все процедуры? Или informix сам их пересоздаст заново? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2011, 16:53 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhpsНадо ли перед запуском скрипта дропать все процедуры? Или informix сам их пересоздаст заново? Надо. По крайней мере, случаи, когда "Информикс сам их пересоздает" мне неизвестны. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2011, 17:09 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhpsAqua Data Studio Чтобы упростить задачу порекомендую все таки пользоваться для создания процедур старым добрым dbaccess-ом, в особенности при наличии проблем с новыми версиями. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2011, 19:05 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
Daugava, скрипт я создал dbacces'ом. Запускаю на выполнение в Aqua Data Studio. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2011, 15:13 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhps, предлагают как раз для создания - dbaccess. Кроме того, чтобы пересоздать routine (procedure or function) - таки придется сначала её удалить (drop). Сформируй этот перечень для удаления или запросом к каталогу БД, или из скрипта, полученного dbschema (например, макросом в FAR :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2011, 16:04 |
|
Converting 9.40FC6 -> 11.50FC1
|
|||
---|---|---|---|
#18+
rhpsDaugava, скрипт я создал dbacces'ом. Запускаю на выполнение в Aqua Data Studio. quot, невнимательность админа до беды доведёт. не путайте dbaccess и dbschema... Скрипт вы создали с помощью dbschema, а вот выполнить его предлагают с помощью dbaccess... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2011, 16:05 |
|
|
start [/forum/topic.php?fid=44&msg=37389398&tid=1607298]: |
0ms |
get settings: |
10ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
38ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
311ms |
get tp. blocked users: |
0ms |
others: | 295ms |
total: | 666ms |
0 / 0 |