Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 37708 invoked from network); 9 Mar 2010 00:50:13 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 9 Mar 2010 00:50:13 -0000 Received: (qmail 6756 invoked by uid 500); 9 Mar 2010 00:49:48 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 6733 invoked by uid 500); 9 Mar 2010 00:49:48 -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 6726 invoked by uid 99); 9 Mar 2010 00:49:48 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Mar 2010 00:49:48 +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; Tue, 09 Mar 2010 00:49:47 +0000 Received: from brutus.apache.org (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 3DC8F234C4A9 for ; Tue, 9 Mar 2010 00:49:27 +0000 (UTC) Message-ID: <1054547263.143871268095767251.JavaMail.jira@brutus.apache.org> Date: Tue, 9 Mar 2010 00:49:27 +0000 (UTC) From: "Knut Anders Hatlen (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Commented: (DERBY-4422) Extremely slow subqueries when subquerying on strings In-Reply-To: <1043357842.1256319539373.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/DERBY-4422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12842858#action_12842858 ] Knut Anders Hatlen commented on DERBY-4422: ------------------------------------------- The DISTINCT keyword in the query is redundant and will be removed before flattening is considered (see the section "DISTINCT elimination in IN, ANY, and EXISTS subqueries" linked from that manual page). The rewriting logic therefore doesn't regard it as a DISTINCT subquery. > Extremely slow subqueries when subquerying on strings > ----------------------------------------------------- > > Key: DERBY-4422 > URL: https://issues.apache.org/jira/browse/DERBY-4422 > Project: Derby > Issue Type: Bug > Affects Versions: 10.5.3.0 > Environment: Suse Unix 10.3. > Reporter: Tony Brusseau > Attachments: badqp.txt, derby.log, fixed-time-derby.log, goodqp.txt, SQLFile1.sqlaa.gz, SQLFile1.sqlab.gz, SQLFile2.sqlaa.gz, SQLFile2.sqlab.gz, SQLFile2.sqlac.gz, tmp2.sql, unlimited-time-derby.log > > > SELECT DISTINCT C.INTERNAL_ID > FROM OC_CONCEPTS C > WHERE > (C.INTERNAL_ID IN (SELECT DISTINCT OCS.CONCEPT_ID FROM OC_CONCEPT_STRINGS OCS WHERE OCS.CONCEPT_ID=1)) > Both queries above are trivial and they are both acting on fully indexed primary key columns. This query runs just fine. > However, when I make the small modification of searching on an indexed text column in the sub query, it takes over 6 seconds to run, even though both queries independently take < 1ms run. > SELECT DISTINCT C.INTERNAL_ID > FROM OC_CONCEPTS C > WHERE > (C.INTERNAL_ID IN (SELECT DISTINCT OCS.CONCEPT_ID FROM OC_CONCEPT_STRINGS OCS WHERE OCS.NL_LC = 'dash')) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.