You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by bh...@apache.org on 2019/04/01 20:13:11 UTC
[hive] 01/02: HIVE-21205 : Tests for replace flag in insert event
messages in Metastore notifications (Bharath Krishna reviewed by Vihang
karajgaonkar)
This is an automated email from the ASF dual-hosted git repository.
bharos92 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
commit 50cdbe24fe5ec026023ea585589ee51460e79ffb
Author: Bharath Krishna <bh...@cloudera.com>
AuthorDate: Tue Feb 5 16:12:01 2019 -0800
HIVE-21205 : Tests for replace flag in insert event messages in Metastore notifications (Bharath Krishna reviewed by Vihang karajgaonkar)
---
.../hcatalog/listener/TestDbNotificationListener.java | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/itests/hcatalog-unit/src/test/java/org/apache/hive/hcatalog/listener/TestDbNotificationListener.java b/itests/hcatalog-unit/src/test/java/org/apache/hive/hcatalog/listener/TestDbNotificationListener.java
index 0c3e0466..a2f9f3f 100644
--- a/itests/hcatalog-unit/src/test/java/org/apache/hive/hcatalog/listener/TestDbNotificationListener.java
+++ b/itests/hcatalog-unit/src/test/java/org/apache/hive/hcatalog/listener/TestDbNotificationListener.java
@@ -21,6 +21,7 @@ package org.apache.hive.hcatalog.listener;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.fail;
import java.util.concurrent.TimeUnit;
@@ -1080,6 +1081,7 @@ public class TestDbNotificationListener {
data.setInsertData(insertData);
insertData.addToFilesAdded(fileAdded);
insertData.addToFilesAddedChecksum(checksumAdded);
+ insertData.setReplace(false);
FireEventRequest rqst = new FireEventRequest(true, data);
rqst.setDbName(defaultDbName);
rqst.setTableName(tblName);
@@ -1103,6 +1105,7 @@ public class TestDbNotificationListener {
assertEquals(defaultDbName, insertMessage.getDB());
assertEquals(tblName, insertMessage.getTable());
assertEquals(TableType.MANAGED_TABLE.toString(), insertMessage.getTableType());
+ assertFalse(insertMessage.isReplace());
// Verify the eventID was passed to the non-transactional listener
MockMetaStoreEventListener.popAndVerifyLastEventId(EventType.INSERT, firstEventId + 2);
@@ -1147,6 +1150,7 @@ public class TestDbNotificationListener {
data.setInsertData(insertData);
insertData.addToFilesAdded(fileAdded);
insertData.addToFilesAddedChecksum(checksumAdded);
+ insertData.setReplace(false);
FireEventRequest rqst = new FireEventRequest(true, data);
rqst.setDbName(defaultDbName);
rqst.setTableName(tblName);
@@ -1167,7 +1171,7 @@ public class TestDbNotificationListener {
verifyInsert(event, defaultDbName, tblName);
InsertMessage insertMessage = md.getInsertMessage(event.getMessage());
List<String> ptnValues = insertMessage.getPtnObj().getValues();
-
+ assertFalse(insertMessage.isReplace());
assertEquals(partKeyVals, ptnValues);
// Verify the eventID was passed to the non-transactional listener
@@ -1261,6 +1265,8 @@ public class TestDbNotificationListener {
assertEquals(EventType.INSERT.toString(), event.getEventType());
// Parse the message field
verifyInsert(event, defaultDbName, tblName);
+ InsertMessage insertMsg = md.getInsertMessage(event.getMessage());
+ assertFalse(insertMsg.isReplace());
event = rsp.getEvents().get(5);
assertEquals(firstEventId + 6, event.getEventId());
@@ -1387,7 +1393,9 @@ public class TestDbNotificationListener {
assertEquals(EventType.INSERT.toString(), event.getEventType());
// Parse the message field
verifyInsert(event, null, tblName);
-
+ // Verify the replace flag.
+ InsertMessage insertMsg = md.getInsertMessage(event.getMessage());
+ assertFalse(insertMsg.isReplace());
event = rsp.getEvents().get(8);
assertEquals(firstEventId + 9, event.getEventId());
assertEquals(EventType.INSERT.toString(), event.getEventType());
@@ -1433,6 +1441,9 @@ public class TestDbNotificationListener {
event = rsp.getEvents().get(28);
assertEquals(firstEventId + 29, event.getEventId());
assertEquals(EventType.INSERT.toString(), event.getEventType());
+ // Verify the replace flag.
+ insertMsg = md.getInsertMessage(event.getMessage());
+ assertTrue(insertMsg.isReplace());
// replace-overwrite introduces no new files
assertTrue(event.getMessage().matches(".*\"files\":\\[\\].*"));