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 "David Brown (JIRA)" <ji...@apache.org> on 2012/09/07 03:10:07 UTC

[jira] [Created] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

David Brown created DERBY-5920:
----------------------------------

             Summary: Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
                 Key: DERBY-5920
                 URL: https://issues.apache.org/jira/browse/DERBY-5920
             Project: Derby
          Issue Type: Improvement
          Components: Network Server
    Affects Versions: 10.9.1.0
         Environment: Any
            Reporter: David Brown


Background - Refer to DERBY-5565

"Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."

This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.

This change means that we can now only use an older version of Derby until our PRDID is added.

Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

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

David Brown commented on DERBY-5920:
------------------------------------

Thank you for the responses.

We are happy to cooperate with the Derby community in ensuring interoperability.

Where are these extensions documented, and are they considered optional or mandatory?

If any of the extensions are of general utility (i.e. applicable to other databases), have they been proposed as extensions to the DRDA standard by the Open Group Database Interoperability Consortium (https://collaboration.opengroup.org/dbiop/)?

Could you point me to a starting point for running the tests that you refer to?  I am assuming that we will initially test with the older version of the derby server that doesn't reject our client.

Also, was there was a particular issue with the IBM drivers  (e.g. data corruption?) that influenced the decision to cut off access from non-Derby drivers?  Or was it just a matter of simplifying support?

                
> Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
> -----------------------------------------------------------------------------------------
>
>                 Key: DERBY-5920
>                 URL: https://issues.apache.org/jira/browse/DERBY-5920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>    Affects Versions: 10.9.1.0
>         Environment: Any
>            Reporter: David Brown
>              Labels: DRDA, SIG, StarQuest, StarSQL, client, network
>
> Background - Refer to DERBY-5565
> "Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
> Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."
> This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.
> This change means that we can now only use an older version of Derby until our PRDID is added.
> Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

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

Bryan Pendleton commented on DERBY-5920:
----------------------------------------

I'm +1 to supporting other network clients; I'd like to encourage open interoperability if at all possible.

David, several questions:
1) Have you made a proposed patch to re-enable the support for your client?
2) Have you run the existing Derby regression tests with your client?
3) Is your client freely available? Or is it a licensed product? I guess I'm wondering
how other Derby developers would go about verifying that some future modification
or enhancement to the Derby client/server behaviors works correctly with your client.

I think it would be great if you could attach a proposed patch which shows the details
of re-enabling support for your client.

Regarding testing, the starting point for learning about the Derby regression test
suite is: (a) java/testing/README.htm in the trunk source, and (b) the Derby wiki
at http://wiki.apache.org/db-derby/DerbyJUnitTesting
                
> Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
> -----------------------------------------------------------------------------------------
>
>                 Key: DERBY-5920
>                 URL: https://issues.apache.org/jira/browse/DERBY-5920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>    Affects Versions: 10.9.1.0
>         Environment: Any
>            Reporter: David Brown
>              Labels: DRDA, SIG, StarQuest, StarSQL, client, network
>
> Background - Refer to DERBY-5565
> "Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
> Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."
> This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.
> This change means that we can now only use an older version of Derby until our PRDID is added.
> Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

Posted by "Dag H. Wanvik (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DERBY-5920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13452094#comment-13452094 ] 

Dag H. Wanvik commented on DERBY-5920:
--------------------------------------

I think for this to be opened up again, other drivers need to implement the extensions made in the protocol in recent Derby releases. Other driver vendors would need to cooperate with the community to ensure they build in the required extension for opening to be safe.
                
> Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
> -----------------------------------------------------------------------------------------
>
>                 Key: DERBY-5920
>                 URL: https://issues.apache.org/jira/browse/DERBY-5920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>    Affects Versions: 10.9.1.0
>         Environment: Any
>            Reporter: David Brown
>              Labels: DRDA, SIG, StarQuest, StarSQL, client, network
>
> Background - Refer to DERBY-5565
> "Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
> Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."
> This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.
> This change means that we can now only use an older version of Derby until our PRDID is added.
> Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

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

Kathey Marsden commented on DERBY-5920:
---------------------------------------

The change was made because we got various reports on the user list from users trying to use clients that were not or no longer supported by the vendors with Derby, most prominently the DB2 runtime client.  The problem was that folks could go down the dead end path to a certain point where it would seem to work until it didn't and failed with some awful stack trace and waste a lot of time debugging and thinking they could work through it when as I said it was a dead end.  It seemed better to put up a clear barrier from the start  instead of inviting folks down that dead end path.

Also around the same time there were discussions on the dev list of using DRDA as more of a guideline than a standard.  I don't particularly agree with that position and would like to see things get back in the standard, but sometimes that process can take a very long time (as we saw with DERBY-728) so I can understand the frustration of going through it.   If that is to be the approach.  It will be important for other clients to be involved in the community and add their support specifically and monitor changes that occur.  Also having specific supported contents e.g. SIG  in the code by name might give developers considering changes pause to consider the impact, not that they have to but they might.






                
> Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
> -----------------------------------------------------------------------------------------
>
>                 Key: DERBY-5920
>                 URL: https://issues.apache.org/jira/browse/DERBY-5920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>    Affects Versions: 10.9.1.0
>         Environment: Any
>            Reporter: David Brown
>              Labels: DRDA, SIG, StarQuest, StarSQL, client, network
>
> Background - Refer to DERBY-5565
> "Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
> Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."
> This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.
> This change means that we can now only use an older version of Derby until our PRDID is added.
> Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

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

Kathey Marsden commented on DERBY-5920:
---------------------------------------

If someone would like to add  StarQuest as a recognized client, there are a few areas to consider.

First are  the areas where stored procedures or SQLSET are used to implement JDBC functionality.  These are not deviations from the protocol standard per say but just how things like database metadata and LOB support and setQueryTimeout  are implemented.

The second area is areas where we have extended the standard. I have not added these personally so don't know a lot about what has been done, but I think  it applies to UDT's. I am not sure what else.

The third is areas where we have out and out deviated. As the protocol interface is not part of our public API, we have not been strict on this point. One example I can think of where this might happen is: https://issues.apache.org/jira/browse/DERBY-4805 (not implemented yet).

If you would like to submit a patch to add SIG I personally would not be against that. I would suggest that you modify the Derby  tests to support  the  Starquest Driver support and then run them to see what is broken.   Then really you would want to commit to running those tests every release or adding in conditional code to have StarQuest connections take the path of older clients.  This code exists for older Derby clients so you could go the same path.

I know that is not a lot of detail but if you would like to pursue adding StarQuest support to Derby.  I am sure there are people in the community that would be willing to help fill in the blanks.  I have to say it is hard though to keep a proprietary codeline in sync with an open source one.  If you can frame your  questions to the community in terms of the Derby source code, perhaps giving an example with Derby client that would be probably most productive.  


Best

Kathey


                
> Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
> -----------------------------------------------------------------------------------------
>
>                 Key: DERBY-5920
>                 URL: https://issues.apache.org/jira/browse/DERBY-5920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>    Affects Versions: 10.9.1.0
>         Environment: Any
>            Reporter: David Brown
>              Labels: DRDA, SIG, StarQuest, StarSQL, client, network
>
> Background - Refer to DERBY-5565
> "Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
> Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."
> This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.
> This change means that we can now only use an older version of Derby until our PRDID is added.
> Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (DERBY-5920) Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"

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

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

I don't think we maintain a list of protocol extensions. However, in the cases where we've extended the protocol, the server should already be checking that it talks to a client that understands the extension. That is, it checks that the PRDID is DNC and that the client version is recent enough to support the extension. So it should not use the extensions when talking to a non-DNC client. The supports* methods in org.apache.derby.impl.drda.AppRequester would be a good starting point for exploring which extensions exist.
                
> Network Server should accept DRDA connections from drivers with the StarQuest PRDID "SIG"
> -----------------------------------------------------------------------------------------
>
>                 Key: DERBY-5920
>                 URL: https://issues.apache.org/jira/browse/DERBY-5920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>    Affects Versions: 10.9.1.0
>         Environment: Any
>            Reporter: David Brown
>              Labels: DRDA, SIG, StarQuest, StarSQL, client, network
>
> Background - Refer to DERBY-5565
> "Derby Network Server has been changed to reject client connections from clients that are not Derby Network Client (Those that do not send PRDID starting with DNC).
> Rationale for Change: There are currently no known supported network clients for Derby Network Server other than Derby Network Client."
> This is incorrect - StarQuest Ventures has a shipping DRDA-compliant network client "StarSQL for Java" that has supported Derby since August 2008. It is listed at http://wiki.apache.org/db-derby/UsesOfDerby.
> This change means that we can now only use an older version of Derby until our PRDID is added.
> Our PRDID is SIG - see http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fddp%2Frbal1exitpgms.htm for a list of DRDA PRDID's.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira