hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hive QA (Jira)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-22088) Dynamic partition insert problem on table with "=" in location path spec
Date Thu, 29 Aug 2019 10:07:00 GMT

    [ https://issues.apache.org/jira/browse/HIVE-22088?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16918467#comment-16918467
] 

Hive QA commented on HIVE-22088:
--------------------------------



Here are the results of testing the latest attachment:
https://issues.apache.org/jira/secure/attachment/12978781/HIVE-22088.patch.2

{color:red}ERROR:{color} -1 due to no test(s) being added or modified.

{color:red}ERROR:{color} -1 due to 2 failed/errored test(s), 16713 tests executed
*Failed tests:*
{noformat}
TestDataSourceProviderFactory - did not produce a TEST-*.xml file (likely timed out) (batchId=232)
TestObjectStore - did not produce a TEST-*.xml file (likely timed out) (batchId=232)
{noformat}

Test results: https://builds.apache.org/job/PreCommit-HIVE-Build/18415/testReport
Console output: https://builds.apache.org/job/PreCommit-HIVE-Build/18415/console
Test logs: http://104.198.109.242/logs/PreCommit-HIVE-Build-18415/

Messages:
{noformat}
Executing org.apache.hive.ptest.execution.TestCheckPhase
Executing org.apache.hive.ptest.execution.PrepPhase
Executing org.apache.hive.ptest.execution.YetusPhase
Executing org.apache.hive.ptest.execution.ExecutionPhase
Executing org.apache.hive.ptest.execution.ReportingPhase
Tests exited with: TestsFailedException: 2 tests failed
{noformat}

This message is automatically generated.

ATTACHMENT ID: 12978781 - PreCommit-HIVE-Build

> Dynamic partition insert problem on table with "=" in location path spec
> ------------------------------------------------------------------------
>
>                 Key: HIVE-22088
>                 URL: https://issues.apache.org/jira/browse/HIVE-22088
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 4.0.0, 2.3.4
>         Environment: Hive 2.6.0.10-2 Executing on Tez.
> OS: Ubuntu 16.04.4 LTS
> Config settings used:
> SET hive.exec.dynamic.partition=true;
>  SET hive.exec.dynamic.partition.mode=nonstrict;
>            Reporter: Puneet Khatod
>            Assignee: Hui An
>            Priority: Major
>         Attachments: HIVE-22088.patch.1, HIVE-22088.patch.2
>
>
> If external table location spec has a '=' sign (coincidentally partition specifier)
in it, then dynamic partition loading fails.
> *Use cases:*
> Quite often the same data is used in different contexts by creating different external
tables on top of the data. Many times the tables have different partition depths depending
on how data is organized.
> Like in below example, there are individual customer specific tables and queries/jobs
to insert data partitioned by type. And there is another table to give the consolidated data
view of all the customers, thus have two level partition customer and type.
> The job to insert customer specific data into customer specific table fails if we use
dynamic partitioning. Static partition insert on same table works fine though.
> *Replication:*
> To replicate following simple setup could be done. Below execution is on 'Tez'.
> *Source table**-*
> CREATE EXTERNAL TABLE temp_dummy_table
>  (id STRING, type STRING)
>  ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n' STORED AS TEXTFILE
>  LOCATION '/home/source/';
>  
> *Destination Table-*
> CREATE EXTERNAL TABLE temp_dummy_dest_table
>  (id STRING)
>  PARTITIONED BY (type string)
>  ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n' STORED AS TEXTFILE
>  LOCATION '/home/destination/{color:#ff0000}customer=abc{color}/';
>  
> *Insert into destination-*
> insert overwrite table temp_dummy_dest_table partition (type)
>  select i.id as id, i.type as type
>  from temp_dummy_table i
>  where i.type in ('type1','type2');
>  
> *Log and Error Msgs on CLI*-
> Loading data to table temp_dummy_dest_table partition (type=null)
> Failed with exception Partition spec \{type=type1, customer=abc} contains non-partition
columns
> FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask
>  
> *Possible resolution:*
> The dynamic partitioning should consider only those partition specs which are under
the defined table root/base path. If the path itself has partition style format (customer=abc
in above example) then that should not be considered as partition as it is outside the scope
of the table.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Mime
View raw message