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 E926F200C1C for ; Wed, 15 Feb 2017 22:10:48 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id E7CD7160B5E; Wed, 15 Feb 2017 21:10:48 +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 3E590160B4D for ; Wed, 15 Feb 2017 22:10:48 +0100 (CET) Received: (qmail 57673 invoked by uid 500); 15 Feb 2017 21:10:47 -0000 Mailing-List: contact issues-help@hive.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hive.apache.org Delivered-To: mailing list issues@hive.apache.org Received: (qmail 57664 invoked by uid 99); 15 Feb 2017 21:10:47 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 15 Feb 2017 21:10:47 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id E907FC4561 for ; Wed, 15 Feb 2017 21:10:46 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -1.199 X-Spam-Level: X-Spam-Status: No, score=-1.199 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-2.999] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id WgSuVsQUekVY for ; Wed, 15 Feb 2017 21:10:46 +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 BF5815FAE6 for ; Wed, 15 Feb 2017 21:10:45 +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 64E20E0798 for ; Wed, 15 Feb 2017 21:10:42 +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 BFD7924130 for ; Wed, 15 Feb 2017 21:10:41 +0000 (UTC) Date: Wed, 15 Feb 2017 21:10:41 +0000 (UTC) From: "Alan Gates (JIRA)" To: issues@hive.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HIVE-6590) Hive does not work properly with boolean partition columns (wrong results and inserts to incorrect HDFS path) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Wed, 15 Feb 2017 21:10:49 -0000 [ https://issues.apache.org/jira/browse/HIVE-6590?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15868568#comment-15868568 ] Alan Gates commented on HIVE-6590: ---------------------------------- cc [~owen.omalley] as he's bumped into some issues with this as well I believe. > Hive does not work properly with boolean partition columns (wrong results and inserts to incorrect HDFS path) > ------------------------------------------------------------------------------------------------------------- > > Key: HIVE-6590 > URL: https://issues.apache.org/jira/browse/HIVE-6590 > Project: Hive > Issue Type: Bug > Components: Database/Schema, Metastore > Affects Versions: 0.10.0 > Reporter: Lenni Kuff > Assignee: Zoltan Haindrich > Attachments: HIVE-6590.1.patch, HIVE-6590.2.patch, HIVE-6590.3.patch > > > Hive does not work properly with boolean partition columns. Queries return wrong results and also insert to incorrect HDFS paths. > {code} > create table bool_part(int_col int) partitioned by(bool_col boolean); > # This works, creating 3 unique partitions! > ALTER TABLE bool_table ADD PARTITION (bool_col=FALSE); > ALTER TABLE bool_table ADD PARTITION (bool_col=false); > ALTER TABLE bool_table ADD PARTITION (bool_col=False); > {code} > The first problem is that Hive cannot filter on a bool partition key column. "select * from bool_part" returns the correct results, but if you apply a filter on the bool partition key column hive won't return any results. > The second problem is that Hive seems to just call "toString()" on the boolean literal value. This means you can end up with multiple partitions (FALSE, false, FaLSE, etc) mapping to the literal value 'FALSE'. For example, if you can add three partition in have for the same logic value "false" doing: > ALTER TABLE bool_table ADD PARTITION (bool_col=FALSE) -> /test-warehouse/bool_table/bool_col=FALSE/ > ALTER TABLE bool_table ADD PARTITION (bool_col=false) -> /test-warehouse/bool_table/bool_col=false/ > ALTER TABLE bool_table ADD PARTITION (bool_col=False) -> /test-warehouse/bool_table/bool_col=False/ -- This message was sent by Atlassian JIRA (v6.3.15#6346)