AntiEarnie
Technical User
Hi patched from 8.1.7.3 to 8.1.7.4.1 and have been seeing a strange behavior. I am mostly trying to find out if this a behavior by design or and unexpected "feature" from what I think might be our last patch.
It appears that since around the time of the patch all of out functions that have > 25 chars in the name generate the following error:
ORA-00604: error occurred at recursive SQL level 1
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at line 11
These functions have been working with no problems for over a year in some cases.
This is where it gets strange. If we do a CREATE/REPLACE on the functions from SQL+ or resave from Forms Builder they work fine. Also once they have been recreated they may also be compiled under Toad. However, if a compile is run from SQL+ or OEM the Function goes Invalid and may no longer be compiled by anything, including Toad, until said function is either replaced or resaved from Forms.
This would not be very annoying except that OEM removes and creates partitions every night. At that point everything that calls a function with a name > 25 chars starts failing as it can not be recompiled by OEM.
The only thing that makes any sense is the last patch we did to bring the database up to 8.1.7.4.1 made 25 the max name length of functions being recompiled. Also, we have two servers still running 8.1.7.3.0 and both of them still can compile functions with names > 25 chars. So I am fairly sure it is the patch but would like to know if anyone has experienced this.
It appears that since around the time of the patch all of out functions that have > 25 chars in the name generate the following error:
ORA-00604: error occurred at recursive SQL level 1
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at line 11
These functions have been working with no problems for over a year in some cases.
This is where it gets strange. If we do a CREATE/REPLACE on the functions from SQL+ or resave from Forms Builder they work fine. Also once they have been recreated they may also be compiled under Toad. However, if a compile is run from SQL+ or OEM the Function goes Invalid and may no longer be compiled by anything, including Toad, until said function is either replaced or resaved from Forms.
This would not be very annoying except that OEM removes and creates partitions every night. At that point everything that calls a function with a name > 25 chars starts failing as it can not be recompiled by OEM.
The only thing that makes any sense is the last patch we did to bring the database up to 8.1.7.4.1 made 25 the max name length of functions being recompiled. Also, we have two servers still running 8.1.7.3.0 and both of them still can compile functions with names > 25 chars. So I am fairly sure it is the patch but would like to know if anyone has experienced this.