[ 
https://issues.apache.org/jira/browse/HIVE-26375?focusedWorklogId=794061&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-794061
 ]

ASF GitHub Bot logged work on HIVE-26375:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 22/Jul/22 05:34
            Start Date: 22/Jul/22 05:34
    Worklog Time Spent: 10m 
      Work Description: amansinha100 commented on code in PR #3420:
URL: https://github.com/apache/hive/pull/3420#discussion_r927303861


##########
itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestMaterializedViewRebuild.java:
##########
@@ -97,7 +91,7 @@ public void 
testWhenMajorCompactionThenIncrementalMVRebuildIsStillAvailable() th
     txnHandler.cleanTxnToWriteIdTable();
 
     List<String> result = execSelectAndDumpData("explain cbo alter 
materialized view " + MV1 + " rebuild", driver, "");
-    Assert.assertEquals(INCREMENTAL_REBUILD_PLAN, result);
+    Assert.assertEquals(FULL_REBUILD_PLAN, result);

Review Comment:
   Thanks for the explanation.  Makes sense that since the entries are deleted 
from the COMPLETED_TXN_COMPONENTS table at compaction, there's no way to check 
if only insert operation was done in a full ACID table. 





Issue Time Tracking
-------------------

    Worklog Id:     (was: 794061)
    Time Spent: 40m  (was: 0.5h)

> Invalid materialized view after rebuild if source table was compacted
> ---------------------------------------------------------------------
>
>                 Key: HIVE-26375
>                 URL: https://issues.apache.org/jira/browse/HIVE-26375
>             Project: Hive
>          Issue Type: Bug
>          Components: Materialized views, Transactions
>            Reporter: Krisztian Kasa
>            Assignee: Krisztian Kasa
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> After HIVE-25656 MV state depends on the number of rows deleted/updated in 
> the source tables of the view. However if one of the source tables are major 
> compacted the delete delta files are no longer available and reproducing the 
> rows should be deleted from the MV is no longer possible.
> {code}
> create table t1(a int, b varchar(128), c float) stored as orc TBLPROPERTIES 
> ('transactional'='true');
> insert into t1(a,b, c) values (1, 'one', 1.1), (2, 'two', 2.2), (NULL, NULL, 
> NULL);
> create materialized view mv1 stored as orc TBLPROPERTIES 
> ('transactional'='true') as select a,b,c from t1 where a > 0 or a is null;
> update t1 set b = 'Changed' where a = 1;
> alter table t1 compact 'major';
> alter materialized view t1 rebuild;
> select * from mv1;
> {code}
> Select should result 
> {code}
>       "1\tChanged\t1.1",
>       "2\ttwo\t2.2",
>       "NULL\tNULL\tNULL"
> {code}
> but was
> {code}
>       "1\tone\t1.1",      
>       "2\ttwo\t2.2",
>       "NULL\tNULL\tNULL",
>       "1\tChanged\t1.1"
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to