Bug #2291
Could not resolve closest legacy method for function returning an extent
100%
Related issues
History
#1 Updated by Hynek Cihlar about 12 years ago
- File ProcedureManager.java.diff
added
Calling a function of extent return type is causing the error "Could not resolve closest legacy method for class XYZ".
The problem seems to be in ProcedureManager in the method resolveClosestMethod. The logic there expects a method ending with the string "function" in its name on the Java callstack. And because it compares the strings case-sensitively it fails in case of the extent-function - in which case there is "extentFunction" on the callstack.
I am attaching a fix which seems to work ok.
#2 Updated by Constantin Asofiei about 12 years ago
Hynek Cihlar wrote:
I am attaching a fix which seems to work ok.
OK, leave only the function related change, the procedure compare can be done case-sensitively.
#4 Updated by Hynek Cihlar about 12 years ago
- Status changed from New to Feedback
#5 Updated by Constantin Asofiei about 12 years ago
The change is OK, no regression testing is required. But before releasing it, make sure the code respects the 98-chars width limit for lines. It should look something like this:
if (cname.equals(bmClass)&&
((function && mname.toLowerCase().endsWith(funcApi)) ||
(!function && mname.equals(procApi))))
#6 Updated by Hynek Cihlar about 12 years ago
- File hc_upd20140425a.zip added
Attached is the final change with the fixed code formatting. Committed into bzr revision 10516. No regression test run.
#7 Updated by Hynek Cihlar about 12 years ago
- % Done changed from 0 to 100
#8 Updated by Greg Shah about 12 years ago
- Target version set to Milestone 11
- Status changed from Feedback to Closed
#9 Updated by Greg Shah over 9 years ago
- Target version changed from Milestone 11 to Cleanup and Stablization for Server Features