[ 
https://issues.apache.org/jira/browse/DERBY-4767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Myrna van Lunteren resolved DERBY-4767.
---------------------------------------

      Issue & fix info:   (was: [Patch Available])
    Bug behavior facts: [Embedded/Client difference]
         Fix Version/s: 10.7.0.0
            Resolution: Fixed

Thanks for the revised patch.

I reviewed it, and made some minor adjustments:

- client.am.ResultSet.java
  - checkGetterPreconditions(), you passed on the hardcoded string "operation" 
instead of the parameter passed in to the method. I changed it, I'm sure this 
was a typo
  - method lastX() is private - the operation would be "last" not "lastX".
  - method previousX() is private - the operation would be "previous"
  - relativeX - similarly, should be "relative"
  - getRowX - "getRow"
- rather than the small test you added which would result in another master, 
I've added a couple of checks for the appropriate operation string to some 
existing tests: 
M       
java\testing\org\apache\derbyTesting\functionTests\tests\lang\UpdatableResultSetTest.java
M       
java\testing\org\apache\derbyTesting\functionTests\tests\jdbc4\TestDbMetaData.java
M       
java\testing\org\apache\derbyTesting\functionTests\tests\jdbc4\ResultSetTest.java
M       
java\testing\org\apache\derbyTesting\functionTests\tests\jdbcapi\ResultSetMiscTest.java


I committed the change with revision 985550.

I have two final comments:
- I noticed that you made the operation in 
client.am.sectionManager.getPositionedUpdateResultSet "next", but I think this 
should be "update". I'm rerunning tests with that minor change, and will commit 
that too if no failures arise.

And, not relating to your change, but in looking through all the occurrences of 
LANG_RESULT_SET_NOT_OPEN I noticed in 
impl.sql.execute.ScrollInsensitiveResultSet.getPreviousRow() that the operation 
passed in is "next". I'm idly wondering if that perhaps should be "previous". 
We should ask the community and/or log a tiny bug for that.


> Detailed prompt for Error XCL16 is different between Client and Embed
> ---------------------------------------------------------------------
>
>                 Key: DERBY-4767
>                 URL: https://issues.apache.org/jira/browse/DERBY-4767
>             Project: Derby
>          Issue Type: Improvement
>          Components: JDBC
>            Reporter: Yun Lee
>            Assignee: Yun Lee
>             Fix For: 10.7.0.0
>
>         Attachments: derby-4767-1.patch, derby-4767-1.stat, derby-4767.patch, 
> derby-4767.stat
>
>
> For the sql script below:
> create table t1(c11 int, c12 int);
> -- insert data into tables
> insert into t1 values(1,1);
> insert into t1 values(2,2);
> -- set autocommit off
> autocommit off;
> get with nohold cursor jdk1 as 'SELECT * FROM t1';
> -- do fetches from the cursor
> next jdk1;
> --commit
> commit;
> -- now try the fetch on cursor again after commit
> -- cursors jdk1 will give Error XCL16
> next jdk1;
> -- clean up.
> close jdk1;
> for the line "next jdk1;", an Error XCL16 will be thrown. However, detailed 
> prompt for Error XCL16 is different between Client and Embed.
> In client mode, we get "ERROR XCL16: ResultSet not open.  Verify that 
> autocommit is OFF."
> While, in embed mode, we get "ERROR XCL16: ResultSet not open. Operation 
> 'next' not permitted. Verify that autocommit is OFF."

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to