|
ошибка пересоздания процедур
|
|||
---|---|---|---|
#18+
База SYBASE 12.5.3 / SUSE 9 При попытке изменить процедуру через rename возникает ошибка. Если делать через drop - create то все нормально. На копии базы в связке SYBASE 12.5.4 / SUSE 10 все нормально прокатывает. Что не хватает? Ну - кроме знаний... :) 05:00000:00363:2010/12/09 13:37:39.89 kernel ************************************ 05:00000:00363:2010/12/09 13:37:39.89 kernel SQL causing error : EXEC sp_rename 'Annual','Annual_12092010103736000' 05:00000:00363:2010/12/09 13:37:39.89 kernel ************************************ 05:00000:00363:2010/12/09 13:37:39.89 server SQL Text: EXEC sp_rename 'Annual','Annual_12092010103736000' 05:00000:00363:2010/12/09 13:37:39.89 kernel curdb = 4 tempdb = 2 pstat = 0x10000 05:00000:00363:2010/12/09 13:37:39.89 kernel lasterror = 0 preverror = 0 transtate = 1 05:00000:00363:2010/12/09 13:37:39.89 kernel curcmd = 224 program = DBArtisan 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000a852c9 pcstkwalk+0x289() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000a84eff ucstkgentrace+0x17f() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000a3fcdf ucbacktrace+0x8f() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000042cc33 terminate_process+0xbd3() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000a59475 kisignal+0x195() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000745337 result+0x6b7() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000076c384 pre_aggview+0x204() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000076c5d9 s_preprocess+0x109() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000074940e s_compile+0x3ce() 05:00000:00363:2010/12/09 13:37:39.89 kernel [Handler pc: 0x0x0000000000777370 s_handle installed by the following func tion:-] 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000773d31 sequencer+0xe31() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000075ce11 execproc+0xbae() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x0000000000752f09 s_execute+0x3aad() 05:00000:00363:2010/12/09 13:37:39.89 kernel [Handler pc: 0x0x0000000000777370 s_handle installed by the following func tion:-] 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000077339b sequencer+0x49b() 05:00000:00363:2010/12/09 13:37:39.89 kernel pc: 0x0x000000000045cbe0 tdsrecv_language+0x290() 05:00000:00363:2010/12/09 13:37:39.89 kernel [Handler pc: 0x0x0000000000482e80 hdl_backout installed by the following f unction:-] 05:00000:00363:2010/12/09 13:37:39.89 kernel [Handler pc: 0x0x00000000006de700 ut_handle installed by the following fun ction:-] 05:00000:00363:2010/12/09 13:37:39.89 kernel [Handler pc: 0x0x00000000006de700 ut_handle installed by the following fun ction:-] ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2010, 14:17 |
|
ошибка пересоздания процедур
|
|||
---|---|---|---|
#18+
[quot YVG19]База SYBASE 12.5.3 / SUSE 9 При попытке изменить процедуру через rename возникает ошибка. Если делать через drop - create то все нормально. На копии базы в связке SYBASE 12.5.4 / SUSE 10 все нормально прокатывает. Что не хватает? Ну - кроме знаний... :) /quot] Tip or Workaround The solution is to configure the server to allow updates to system catalogs and delete those rows having encrypted column info in syscolumns. Execute the delete inside a tran to ensure it can be rolled back if needed. sp_configure "allow updates", 1 go select count (*) from syscolumns where id = object_id("syscolumns") and colid >= 23 go //Note down number of rows // begin tran go delete from syscolumns where id = object_id("syscolumns") and colid >= 23 go //Check number of rows against number written down// commit tran / rollback tran depending on number of rows This has to be done for every database in sysdatabases. Resolution Change Request(CR) 406005 fixed in ASE 12.5.4 , 15 ESD2 and 15.0.2 This problem is seen when downgrading a 12.5.3a or 12.5.4 database to a lower version, for example 12.5.4 to 12.5.3 ESD#7 or 12.5.3a (special edition with for encrypted columns) to 12.5.3. 12.5.3a and 12.5.4 have additional columns in syscolumns that are not removed when downgrading and these columns cause this problem in the lower version. The problem is tracked under CR 406005. The following stored procs, which update syscolumns, trigger the problem: sp_bindrule sp_rename sp_setreptable sp_unbindefault sp_unbindrule ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2010, 23:25 |
|
ошибка пересоздания процедур
|
|||
---|---|---|---|
#18+
select count (*) from syscolumns where id = object_id("syscolumns") and colid >= 23 go Во всех базах выдает "0"... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2010, 10:55 |
|
ошибка пересоздания процедур
|
|||
---|---|---|---|
#18+
On 09.12.2010 14:17, YVG19 wrote: > При попытке изменить процедуру через rename возникает ошибка. Если делать через > drop - create то все нормально. Это стектрейс, лечится только инженерами Sybase. "Доктор, когда я делаю так, мне больно" -- "Ну так не делайте так, больной!". В общем, дропай/ создавай. Оно даже где-то полезно. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2010, 12:29 |
|
|
start [/forum/topic.php?fid=55&msg=37006374&tid=2010450]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
50ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 316ms |
total: | 459ms |
0 / 0 |