Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 37B71200C7F for ; Wed, 24 May 2017 20:22:09 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 366FF160BB6; Wed, 24 May 2017 18:22:09 +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 7D4CC160BA5 for ; Wed, 24 May 2017 20:22:08 +0200 (CEST) Received: (qmail 86864 invoked by uid 500); 24 May 2017 18:22:07 -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 86851 invoked by uid 99); 24 May 2017 18:22:07 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 24 May 2017 18:22:07 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 982D21A7ACE for ; Wed, 24 May 2017 18:22:06 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.202 X-Spam-Level: X-Spam-Status: No, score=-99.202 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id 0UJyU7QLmK9a for ; Wed, 24 May 2017 18:22:05 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 23F5E5F2AB for ; Wed, 24 May 2017 18:22:05 +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 70CACE0D2B for ; Wed, 24 May 2017 18:22:04 +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 229FD21B58 for ; Wed, 24 May 2017 18:22:04 +0000 (UTC) Date: Wed, 24 May 2017 18:22:04 +0000 (UTC) From: "Samarth Jain (JIRA)" To: dev@phoenix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (PHOENIX-3822) Surface byte and row estimates in a machine readable way when doing EXPLAIN PLAN MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Wed, 24 May 2017 18:22:09 -0000 [ https://issues.apache.org/jira/browse/PHOENIX-3822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Samarth Jain updated PHOENIX-3822: ---------------------------------- Attachment: PHOENIX-3822_v5.patch Updated patch. Changed the interface to reflect that the two methods return null only when the estimate cannot be provided (for example when stats information is not available for queries whose scans are executed in parallel). {code} /** * @return estimated number of rows that will be scanned when this statement plan is been executed. * Returns null if the estimate cannot be provided. * @throws SQLException */ public Long getEstimatedRowsToScan() throws SQLException; /** * @return estimated number of bytes that will be scanned when this statement plan is been executed. * Returns null if the estimate cannot be provided. */ public Long getEstimatedBytesToScan() throws SQLException; {code} For queries that are executed serially, estimates can still be provided. I have added tests for these scenarios in this patch. Also removed changes in PhoenixStatement where I was previously returning null for the estimates by moving the code to BaseMutationPlan. This removed the need of having a base class with zero estimates for now. > Surface byte and row estimates in a machine readable way when doing EXPLAIN PLAN > -------------------------------------------------------------------------------- > > Key: PHOENIX-3822 > URL: https://issues.apache.org/jira/browse/PHOENIX-3822 > Project: Phoenix > Issue Type: Improvement > Reporter: Samarth Jain > Assignee: Samarth Jain > Attachments: PHOENIX-3822.patch, PHOENIX-3822_v2.patch, PHOENIX-3822_v3.patch, PHOENIX-3822_v4.patch, PHOENIX-3822_v5.patch > > -- This message was sent by Atlassian JIRA (v6.3.15#6346)