You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Rick Hillegas (JIRA)" <ji...@apache.org> on 2010/04/12 20:15:49 UTC

[jira] Created: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Make client driver treat BOOLEAN columns the same way as the embedded driver does.
----------------------------------------------------------------------------------

                 Key: DERBY-4613
                 URL: https://issues.apache.org/jira/browse/DERBY-4613
             Project: Derby
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 10.6.0.0
            Reporter: Rick Hillegas


The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:

    select systemalias from sys.sysaliases;

There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Closed: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas closed DERBY-4613.
--------------------------------

    Fix Version/s: 10.7.0.0
       Resolution: Fixed

> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.1.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>             Fix For: 10.7.0.0
>
>         Attachments: derby-4613-01-ab-correctBehavior.diff, derby-4613-01-ac-correctBehavior.diff, derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

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


[jira] Commented: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866552#action_12866552 ] 

Rick Hillegas commented on DERBY-4613:
--------------------------------------

Committed derby-4613-01-ac-correctBehavior.diff at subversion revision 943465.

> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.1.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>             Fix For: 10.7.0.0
>
>         Attachments: derby-4613-01-ab-correctBehavior.diff, derby-4613-01-ac-correctBehavior.diff, derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

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


[jira] Updated: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-4613:
---------------------------------

    Attachment: derby-4613-fs.html

Attaching functional spec for the work to be done here.

> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.0.0
>            Reporter: Rick Hillegas
>         Attachments: derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Assigned: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas reassigned DERBY-4613:
------------------------------------

    Assignee: Rick Hillegas

> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.1.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>         Attachments: derby-4613-01-ab-correctBehavior.diff, derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

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


[jira] Commented: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12856327#action_12856327 ] 

Knut Anders Hatlen commented on DERBY-4613:
-------------------------------------------

Thanks for writing this clear spec, Rick. I agree that the embedded driver behaves correctly in these cases and that we should change the client driver to match, with the very reasonable exceptions mentioned in the spec. +1 from me.

> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.0.0
>            Reporter: Rick Hillegas
>         Attachments: derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-4613:
---------------------------------

    Attachment: derby-4613-01-ab-correctBehavior.diff

Attaching derby-4613-01-ab-correctBehavior.diff. This patch implements the behavior described in the functional spec attached to this issue.  This makes the embedded and network drivers treat BOOLEAN values identically provided that both the client and the server are Derby code at version 10.7 or higher. Regression tests passed cleanly for me. Compatibility tests need to be written to verify that clients and servers play well with down-rev partners.

Touches the following files:

-----------

M      java/engine/org/apache/derby/iapi/reference/DRDAConstants.java

Exposes the DRDA and DB2 constants for the BOOLEAN datatype, as described in table 5-11 of section 5.7 (FD:OCA Meta Data Summary) of Volume 1 of version 4 of the DRDA spec.


-----------

M      java/drda/org/apache/derby/impl/drda/AppRequester.java

Server-side logic for determining whether the client-side of the connection is at 10.7 or higher.


-----------

M      java/drda/org/apache/derby/impl/drda/FdocaConstants.java
M      java/drda/org/apache/derby/impl/drda/SQLTypes.java
M      java/drda/org/apache/derby/impl/drda/DRDAConnThread.java

Server-side logic for sending BOOLEAN values and their corresponding metadata.


-----------

M      java/client/org/apache/derby/client/net/NetConnection.java
M      java/client/org/apache/derby/client/net/NetDatabaseMetaData.java
M      java/client/org/apache/derby/client/am/DatabaseMetaData.java

Client-side logic determining whether the server-side of a connection is at 10.7 or higher. I found that I needed this logic in the abstract am package. While I was in there, I moved a number of similar methods out of the concrete net package up into the abstract am package. Ultimately, I think that the am package should be eliminated. See DERBY-4648.


-----------

M      java/client/org/apache/derby/client/net/Typdef.java
M      java/client/org/apache/derby/client/net/NetStatementRequest.java
M      java/client/org/apache/derby/client/am/Cursor.java
M      java/client/org/apache/derby/client/am/Types.java
M      java/client/org/apache/derby/client/am/SignedBinary.java
M      java/client/org/apache/derby/client/am/ColumnMetaData.java

Client-side logic for reading BOOLEAN values and their corresponding metadata.


-----------

M      java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/DatabaseMetaDataTest.java
M      java/testing/org/apache/derbyTesting/functionTests/master/showindex_client.out

Changes to the tests to reflect the new behavior of the network client.


> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.1.0
>            Reporter: Rick Hillegas
>         Attachments: derby-4613-01-ab-correctBehavior.diff, derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

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


[jira] Updated: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-4613:
---------------------------------

    Attachment: derby-4613-01-ac-correctBehavior.diff

Attaching derby-4613-01-ac-correctBehavior.diff. This adds compatibility tests to the previous version of the patch.

I verified the new tests by running them against combinations of the following client and server versions on jdk1.4, Java 5, and Java 6: I believe this patch is ready to be committed.

10.0.2.1
10.1.1.0
10.2.2.0
10.4.2.1
10.6.1.0
Trunk (10.7.0.0)


Touches the following additional files:

M      java/testing/org/apache/derbyTesting/functionTests/tests/junitTests/compatibility/CompatibilitySuite.java
M      java/testing/org/apache/derbyTesting/functionTests/tests/junitTests/compatibility/JDBCDriverTest.java


> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.1.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>         Attachments: derby-4613-01-ab-correctBehavior.diff, derby-4613-01-ac-correctBehavior.diff, derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

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


[jira] Updated: (DERBY-4613) Make client driver treat BOOLEAN columns the same way as the embedded driver does.

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-4613?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-4613:
---------------------------------

    Issue & fix info: [Patch Available]

> Make client driver treat BOOLEAN columns the same way as the embedded driver does.
> ----------------------------------------------------------------------------------
>
>                 Key: DERBY-4613
>                 URL: https://issues.apache.org/jira/browse/DERBY-4613
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.6.1.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>         Attachments: derby-4613-01-ab-correctBehavior.diff, derby-4613-fs.html
>
>
> The only operation currently allowed on BOOLEAN columns is to select them from the system tables. For instance, the following query selects BOOLEAN values:
>     select systemalias from sys.sysaliases;
> There are discrepancies in how the embedded and client drivers handle these BOOLEAN columns. The embedded behavior is correct and the client behavior should conform. I will attach a spec describing what needs to be done.

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