From dev-return-49081-archive-asf-public=cust-asf.ponee.io@phoenix.apache.org Fri Feb 2 21:18:08 2018 Return-Path: X-Original-To: archive-asf-public@eu.ponee.io Delivered-To: archive-asf-public@eu.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by mx-eu-01.ponee.io (Postfix) with ESMTP id 28EB0180608 for ; Fri, 2 Feb 2018 21:18:08 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 18C73160C49; Fri, 2 Feb 2018 20:18:08 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 6BF34160C25 for ; Fri, 2 Feb 2018 21:18:07 +0100 (CET) Received: (qmail 64850 invoked by uid 500); 2 Feb 2018 20:18:06 -0000 Mailing-List: contact dev-help@phoenix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@phoenix.apache.org Delivered-To: mailing list dev@phoenix.apache.org Received: (qmail 64839 invoked by uid 99); 2 Feb 2018 20:18:06 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Feb 2018 20:18:06 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 00269198C46 for ; Fri, 2 Feb 2018 20:18:06 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -109.511 X-Spam-Level: X-Spam-Status: No, score=-109.511 tagged_above=-999 required=6.31 tests=[ENV_AND_HDR_SPF_MATCH=-0.5, KAM_ASCII_DIVIDERS=0.8, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_SPF_WL=-7.5, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id cjF565kELSB1 for ; Fri, 2 Feb 2018 20:18:05 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id A78D05FAF2 for ; Fri, 2 Feb 2018 20:18:04 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 17895E030C for ; Fri, 2 Feb 2018 20:18:03 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 1D82121E88 for ; Fri, 2 Feb 2018 20:18:01 +0000 (UTC) Date: Fri, 2 Feb 2018 20:18:01 +0000 (UTC) From: "James Taylor (JIRA)" To: dev@phoenix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (PHOENIX-3941) Filter regions to scan for local indexes based on data table leading pk filter conditions 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/PHOENIX-3941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16350902#comment-16350902 ] James Taylor commented on PHOENIX-3941: --------------------------------------- [~maryannxue] - would you mind taking a look at this v2 patch? I'm trying to keep the data plan with the query plan used for an index (so we can potentially prune local index regions when there are leading PK columns in common between the data table and index table). For joins, I'm losing the QueryCompiler.dataPlan along the way and I'm not sure how to fix it. > Filter regions to scan for local indexes based on data table leading pk filter conditions > ----------------------------------------------------------------------------------------- > > Key: PHOENIX-3941 > URL: https://issues.apache.org/jira/browse/PHOENIX-3941 > Project: Phoenix > Issue Type: Bug > Reporter: James Taylor > Assignee: James Taylor > Priority: Major > Labels: SFDC, localIndex > Fix For: 4.14.0 > > Attachments: PHOENIX-3941_v1.patch, PHOENIX-3941_v2.patch > > > Had a good offline conversation with [~ndimiduk] at PhoenixCon about local indexes. Depending on the query, we can often times prune the regions we need to scan over based on the where conditions against the data table pk. For example, with a multi-tenant table, we only need to scan the regions that are prefixed by the tenant ID. > We can easily get this information from the compilation of the query against the data table (which we always do), through the statementContext.getScanRanges() structure. We'd just want to keep a pointer to the data table QueryPlan from the local index QueryPlan. -- This message was sent by Atlassian JIRA (v7.6.3#76005)