On 4/28/11 11:13 AM, Lance Andersen - Oracle wrote:
Hi all,
I could use a reviewer for 7040150 which addresses a positioning issue with
CacheResultSetImpl.removeCurrentRow().
The diff is located at:
http://cr.openjdk.java.net/~lancea/7040150/webrev.00/
The change in the index value looks correct.
It's hard to say, but it looks like removeCurrentRow() doesn't throw
SQLException if the cursor is on the insert row. In that case, it might throw
ClassCastException when the InsertRow is cast to Row. Also, if the cursor is
before the first row, it might throw ArrayIndexOutOfBoundsException.
Then again, it says "this is a implementation only method" [sic] as opposed to
a public method, so it's hard to say whether it needs to handle all these
cases, as they might not actually arise in practice. I guess if the change is
sufficient to fix the customer's problem, then go ahead with it.
s'marks