Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 48469 invoked from network); 19 Feb 2010 15:16:53 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 19 Feb 2010 15:16:53 -0000 Received: (qmail 23749 invoked by uid 500); 19 Feb 2010 15:16:52 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 23697 invoked by uid 500); 19 Feb 2010 15:16:52 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 23624 invoked by uid 99); 19 Feb 2010 15:16:52 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Feb 2010 15:16:52 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Feb 2010 15:16:50 +0000 Received: from brutus.apache.org (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 7EBD329A001E for ; Fri, 19 Feb 2010 07:16:29 -0800 (PST) Message-ID: <1611636554.389561266592589518.JavaMail.jira@brutus.apache.org> Date: Fri, 19 Feb 2010 15:16:29 +0000 (UTC) From: "Kristian Waagan (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Commented: (DERBY-2017) Client driver can insert and commit partial data when a LOB stream throws IOException or does not match the specified length In-Reply-To: <18308033.1162198636492.JavaMail.root@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/DERBY-2017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12835771#action_12835771 ] Kristian Waagan commented on DERBY-2017: ---------------------------------------- I haven't looked into the details, but DRDA has a mechanism for interrupting DRDA requests. However, this requires that the client opens a new connection to the server to issue the request. Without knowing how hard this will be to implement, does this sound as a viable solution? Interrupting the server is an exceptional case, so I guess the performance of the mentioned solution isn't critical (i.e. create new connection, send the request, receive reply, throw exception and do cleanup on the client side will take a while compared to sending something on the existing connection). I suppose we can use the same mechanism if we need to be able to interrupt the server in other states. For those interested, see DRDA vol 1 - 4.4.14 Interrupting a Running DRDA Request. As I said, I haven't yet studied the spec, nor Derby's DRDA implementation, so I can't say for sure this will work. > Client driver can insert and commit partial data when a LOB stream throws IOException or does not match the specified length > ---------------------------------------------------------------------------------------------------------------------------- > > Key: DERBY-2017 > URL: https://issues.apache.org/jira/browse/DERBY-2017 > Project: Derby > Issue Type: Bug > Components: JDBC, Network Client > Affects Versions: 10.2.1.6 > Reporter: Knut Anders Hatlen > Attachments: derby2017_try1.diff, Derby_2017_v1.diff, Derby_2017_v1.stat, StreamErrRepro.java > > > When a LOB stream throws an exception or does not match the specified length, the client driver does not raise an exception until it has finished executing the statement. Therefore, the statement will be executed (and possibly committed) on the server even though the client reports that the statement failed. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.