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 "Tomohito Nakayama (JIRA)" <de...@db.apache.org> on 2005/10/08 17:00:48 UTC

[jira] Created: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not あ

Returning ByteArrayInputStream from ResultSet is not あ
------------------------------------------------------

         Key: DERBY-609
         URL: http://issues.apache.org/jira/browse/DERBY-609
     Project: Derby
        Type: Bug
    Reporter: Tomohito Nakayama




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


[jira] Commented: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Tomohito Nakayama (JIRA)" <de...@db.apache.org>.
    [ http://issues.apache.org/jira/browse/DERBY-609?page=comments#action_12331662 ] 

Tomohito Nakayama commented on DERBY-609:
-----------------------------------------

About 2: Performance of program :

I found that value of Clob and Blob are stored in memory as 
 org.apache.derby.client.am.Clob#string_ typed as String and
 org.apache.derby.client.am.Blob#binaryString_ typed as byte[]

ResultSet seems to return information retrieved from those variables.
If Clob and Blob have large size of data ,  this structure will cause performance problem.

I think we should transfer problem of this structure to another issue , because it will be much amount of work .

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>          Key: DERBY-609
>          URL: http://issues.apache.org/jira/browse/DERBY-609
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Reporter: Tomohito Nakayama
>     Assignee: Tomohito Nakayama

>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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


[jira] Updated: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Tomohito Nakayama (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-609?page=all ]

Tomohito Nakayama updated DERBY-609:
------------------------------------

    Attachment: DERBY-609.patch

I submit patch for DERBY-609 .

Description :
   * Modification to client
   Now ResultSet returrn InputStream as CloseFilterInputStream filtering original InputStream.
   CloseFilterInputStream serve functionality to be closed , even if close method of filtered InputStream have no effect .
   ResultSet close CloseFilterInputStream when getXXXX method was called .

   * Modification to test 
   Include jdbc/resultsetStream.java in DerbyNetClient suite .   

Test :
   executed derbyall and found no error .   

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>          Key: DERBY-609
>          URL: http://issues.apache.org/jira/browse/DERBY-609
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Reporter: Tomohito Nakayama
>     Assignee: Tomohito Nakayama
>  Attachments: DERBY-609.patch
>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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


[jira] Updated: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Tomohito Nakayama (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-609?page=all ]

Tomohito Nakayama updated DERBY-609:
------------------------------------

      Component: Network Client
        Summary: Returning ByteArrayInputStream from ResultSet is not appropriate  (was: Returning ByteArrayInputStream from ResultSet is not ?)
    Description: 
Point where it is not appropriate :


1: Compatibility

The InputStream returned from result set is closed when other getXXXX method was called .
http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html

However closing ByteArrayInputStream have no effect at all .
http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()

It seems intended that closable InputStream was returned from result set .
If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
and compatibility would be lost .


2: Performance of program 
Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .

If large byte[] object was created for each ByteArrayInputStream object , 
program will run in bad performance .

// I think problem is when information typed as LOB was retrieved from ResultSet .
// Because such informations typed as LOB tend to be large amount .

  was:


I misoperated and there was no description in this issue.

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>          Key: DERBY-609
>          URL: http://issues.apache.org/jira/browse/DERBY-609
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Reporter: Tomohito Nakayama

>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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


[jira] Commented: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Tomohito Nakayama (JIRA)" <de...@db.apache.org>.
    [ http://issues.apache.org/jira/browse/DERBY-609?page=comments#action_12332469 ] 

Tomohito Nakayama commented on DERBY-609:
-----------------------------------------

I have committed.

Adding         java/client/org/apache/derby/client/am/CloseFilterInputStream.java
Sending        java/client/org/apache/derby/client/am/ResultSet.java
Adding         java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/resultsetStream.out
Sending        java/testing/org/apache/derbyTesting/functionTests/suites/DerbyNetClient.exclude
Transmitting file data ....
Committed revision 326534.


> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>          Key: DERBY-609
>          URL: http://issues.apache.org/jira/browse/DERBY-609
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Reporter: Tomohito Nakayama
>     Assignee: Tomohito Nakayama
>  Attachments: DERBY-609.patch
>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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


[jira] Closed: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Kristian Waagan (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-609?page=all ]

Kristian Waagan closed DERBY-609.
---------------------------------

    Fix Version/s: 10.2.0.0
                       (was: 10.1.2.1)
       Resolution: Fixed

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>                 Key: DERBY-609
>                 URL: http://issues.apache.org/jira/browse/DERBY-609
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>            Reporter: Tomohito Nakayama
>         Assigned To: Tomohito Nakayama
>             Fix For: 10.2.0.0
>
>         Attachments: DERBY-609.patch
>
>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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

        

[jira] Assigned: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Tomohito Nakayama (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-609?page=all ]

Tomohito Nakayama reassigned DERBY-609:
---------------------------------------

    Assign To: Tomohito Nakayama

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>          Key: DERBY-609
>          URL: http://issues.apache.org/jira/browse/DERBY-609
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Reporter: Tomohito Nakayama
>     Assignee: Tomohito Nakayama

>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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


[jira] Reopened: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Kristian Waagan (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-609?page=all ]

Kristian Waagan reopened DERBY-609:
-----------------------------------

             
Reopened issue to correct fix version.

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>                 Key: DERBY-609
>                 URL: http://issues.apache.org/jira/browse/DERBY-609
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>            Reporter: Tomohito Nakayama
>         Assigned To: Tomohito Nakayama
>             Fix For: 10.2.0.0
>
>         Attachments: DERBY-609.patch
>
>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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

        

[jira] Commented: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Tomohito Nakayama (JIRA)" <de...@db.apache.org>.
    [ http://issues.apache.org/jira/browse/DERBY-609?page=comments#action_12331659 ] 

Tomohito Nakayama commented on DERBY-609:
-----------------------------------------

List of method where this problem exists are :

org.apache.derby.client.am.ResultSet:
   java.io.InputStream getBinaryStream(int column) 
   java.io.InputStream getAsciiStream(int column)
   java.io.InputStream getUnicodeStream(int column)



> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>          Key: DERBY-609
>          URL: http://issues.apache.org/jira/browse/DERBY-609
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Reporter: Tomohito Nakayama
>     Assignee: Tomohito Nakayama

>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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


[jira] Closed: (DERBY-609) Returning ByteArrayInputStream from ResultSet is not appropriate

Posted by "Kristian Waagan (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-609?page=all ]

Kristian Waagan closed DERBY-609.
---------------------------------

    Fix Version/s: 10.1.2.1
       Resolution: Fixed

Closing this, seems completed. No activity since October 2005.

> Returning ByteArrayInputStream from ResultSet is not appropriate
> ----------------------------------------------------------------
>
>                 Key: DERBY-609
>                 URL: http://issues.apache.org/jira/browse/DERBY-609
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>            Reporter: Tomohito Nakayama
>         Assigned To: Tomohito Nakayama
>             Fix For: 10.1.2.1
>
>         Attachments: DERBY-609.patch
>
>
> Point where it is not appropriate :
> 1: Compatibility
> The InputStream returned from result set is closed when other getXXXX method was called .
> http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html
> However closing ByteArrayInputStream have no effect at all .
> http://java.sun.com/j2se/1.5.0/docs/api/java/io/ByteArrayInputStream.html#close()
> It seems intended that closable InputStream was returned from result set .
> If ByteArrayInputStream was returned from result set , the stream cannot be closed, 
> and compatibility would be lost .
> 2: Performance of program 
> Information inputted from ByteArrayInputStream needs to be expanded to memory as byte[] object .
> If large byte[] object was created for each ByteArrayInputStream object , 
> program will run in bad performance .
> // I think problem is when information typed as LOB was retrieved from ResultSet .
> // Because such informations typed as LOB tend to be large amount .

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