Detailed Description and Symptoms Investigation
A search for the Usage of an object which contains special caracters in its name in Operation Manager breaks up with the Oracle error message:
U0020568 Runtime error in object 'XSEARCH(SET)', line 'xxxx'. DS return code: '0003590': 'U0003590 DB error: 'OCIStmtExecute', 'ERROR ', '', 'ORA-01424: missing or illegal character following the escape character''. Error occurred in UCDSFUN at position: 'DS_SEARCH34'
In Operation Manager start a search for the use of an object which contains special characters in its name e.g. "_".
The search will not be finished but the apperars the error message shown above.
Affected will be Oracle Database Versions 10.2.
Oracle recommends following system setting:
alter system set "_optim_peek_user_binds"=FALSE;
The answer from oracle regarding our inquiry for that behavior:
Yes, this is Bug 8817517.
Abstract: ORA-1424 USING SELECT WITH LIKE AND ESCAPE CHARACTER
ORA-1424 (invalid or missing character after escape character) during optimization of a query using LIKE with a bind variable under a function, if the peeked bind value is more than 32 characters long.
It seems that the problem was introduced in fix for Bug 6163564.
So your workaround of disabling bind peeking is a good one if that is OK.
Otherwise please advise what platform you are using and I will see about a patch.
There are a few fixes for Bug 8817517, depending on the platform.