You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ve...@apache.org on 2023/08/30 12:36:37 UTC
[hive] branch master updated: HIVE-27652: Fix flakyness caused by CompactorOnTezTest#getRelatedTezEvent (Laszlo Vegh, reviewed by Laszlo Bodor)
This is an automated email from the ASF dual-hosted git repository.
veghlaci05 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/master by this push:
new 156905fcd58 HIVE-27652: Fix flakyness caused by CompactorOnTezTest#getRelatedTezEvent (Laszlo Vegh, reviewed by Laszlo Bodor)
156905fcd58 is described below
commit 156905fcd588c99f596eb96a0932068df5007000
Author: veghlaci05 <ve...@gmail.com>
AuthorDate: Wed Aug 30 14:36:29 2023 +0200
HIVE-27652: Fix flakyness caused by CompactorOnTezTest#getRelatedTezEvent (Laszlo Vegh, reviewed by Laszlo Bodor)
---
.../hive/ql/txn/compactor/CompactorOnTezTest.java | 37 ++++++++++------------
1 file changed, 17 insertions(+), 20 deletions(-)
diff --git a/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorOnTezTest.java b/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorOnTezTest.java
index 56ca350b739..5a3324831e0 100644
--- a/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorOnTezTest.java
+++ b/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorOnTezTest.java
@@ -190,31 +190,28 @@ public abstract class CompactorOnTezTest {
protected HiveHookEvents.HiveHookEventProto getRelatedTezEvent(String dbTableName) throws Exception {
int retryCount = 3;
while (retryCount-- > 0) {
- try {
- List<ProtoMessageReader<HiveHookEvents.HiveHookEventProto>> readers = TestHiveProtoLoggingHook.getTestReader(conf, tmpFolder);
- for (ProtoMessageReader<HiveHookEvents.HiveHookEventProto> reader : readers) {
- HiveHookEvents.HiveHookEventProto event = reader.readEvent();
- boolean getRelatedEvent = false;
- while (!getRelatedEvent) {
- while (event != null && ExecutionMode.TEZ != ExecutionMode.valueOf(event.getExecutionMode())) {
- event = reader.readEvent();
- }
- // Tables read is the table picked for compaction.
- if (event != null && event.getTablesReadCount() > 0 && dbTableName.equalsIgnoreCase(event.getTablesRead(0))) {
- getRelatedEvent = true;
- } else {
- event = reader.readEvent();
+ List<ProtoMessageReader<HiveHookEvents.HiveHookEventProto>> readers = TestHiveProtoLoggingHook.getTestReader(conf, tmpFolder);
+ for (ProtoMessageReader<HiveHookEvents.HiveHookEventProto> reader : readers) {
+ do {
+ HiveHookEvents.HiveHookEventProto event;
+ try {
+ if ((event = reader.readEvent()) == null) {
+ break;
}
+ } catch (IOException e) {
+ //IO error, or reached end of current event file. Advancing to next.
+ break;
}
- if (getRelatedEvent) {
+ if (ExecutionMode.TEZ.equals(ExecutionMode.valueOf(event.getExecutionMode())) &&
+ event.getTablesReadCount() > 0 &&
+ dbTableName.equalsIgnoreCase(event.getTablesRead(0))) {
return event;
}
- }
- } catch (EOFException e) {
- //Since Event writing is async it may happen that the event we are looking for is not yet written out.
- //Let's retry it after waiting a bit
- Thread.sleep(2000);
+ } while (true);
}
+ //Since Event writing is async it may happen that the event we are looking for is not yet written out.
+ //Let's retry it after waiting a bit
+ Thread.sleep(3000);
}
return null;
}