This is an automated email from the ASF dual-hosted git repository.

dongjoon pushed a commit to branch branch-1.7
in repository https://gitbox.apache.org/repos/asf/orc.git


The following commit(s) were added to refs/heads/branch-1.7 by this push:
     new 7a20a0907 ORC-1190: Fix `ORCWriterBenchMark` `dumpDir` initialization
7a20a0907 is described below

commit 7a20a0907deadd689b68c517b566622ba315f8b3
Author: mwlon <[email protected]>
AuthorDate: Fri May 27 08:16:58 2022 -0700

    ORC-1190: Fix `ORCWriterBenchMark` `dumpDir` initialization
    
    ### What changes were proposed in this pull request?
    Fix writer benchmark initialization
    
    ### How was this patch tested?
    This does not affect main ORC or tests, only the benchmark suite.
    
    ```$ java -jar hive/target/orc-benchmarks-hive-*-uber.jar write data
    $ java -jar hive/target/orc-benchmarks-hive-*-uber.jar write data
    # JMH version: 1.20
    # VM version: JDK 17.0.3, VM 17.0.3+7-LTS
    # VM invoker: 
/Users/dongjoon/A/jdk-release/applejdk-17.0.3.7.3.jdk/Contents/Home/bin/java
    # VM options: -server -Xms256m -Xmx2g 
-Dbench.root.dir=/Users/dongjoon/APACHE/orc-merge/java/bench/data
    # Warmup: 2 iterations, 10 s each
    # Measurement: 5 iterations, 10 s each
    # Timeout: 10 min per iteration
    # Threads: 1 thread, will synchronize iterations
    # Benchmark mode: Average time, time/op
    # Benchmark: org.apache.orc.bench.hive.ORCWriterBenchMark.dictBench
    # Parameters: (dictImpl = RBTREE, distinctCount = 10000)
    
    # Run progress: 0.00% complete, ETA 00:10:30
    # Fork: 1 of 1
    # Warmup Iteration   1: [WARN ] Unable to load native-hadoop library for 
your platform... using builtin-java classes where applicable
    ...
    ```
    
    Closes #1143 from mwlon/ORC-1190.
    
    Authored-by: mwlon <[email protected]>
    Signed-off-by: Dongjoon Hyun <[email protected]>
    (cherry picked from commit 8e4f8986c31888700c4545c230a3a3343c0137c8)
    Signed-off-by: Dongjoon Hyun <[email protected]>
---
 java/CMakeLists.txt                                              | 2 +-
 .../src/java/org/apache/orc/bench/hive/ORCWriterBenchMark.java   | 9 ++++++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/java/CMakeLists.txt b/java/CMakeLists.txt
index 43f38677d..0927c7d04 100644
--- a/java/CMakeLists.txt
+++ b/java/CMakeLists.txt
@@ -88,7 +88,7 @@ add_test(
 
 add_test(
   NAME java-bench-hive-test
-  COMMAND java -Dbench.root.dir=. ${ADD_OPENS} ${JAVA_NIO} -jar 
bench/hive/orc-benchmarks-hive-${ORC_VERSION}-uber.jar write -i 1 -I 0 -t 1 data
+  COMMAND java ${ADD_OPENS} ${JAVA_NIO} -jar 
bench/hive/orc-benchmarks-hive-${ORC_VERSION}-uber.jar write -i 1 -I 0 -t 1 data
   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
 
 install(
diff --git 
a/java/bench/hive/src/java/org/apache/orc/bench/hive/ORCWriterBenchMark.java 
b/java/bench/hive/src/java/org/apache/orc/bench/hive/ORCWriterBenchMark.java
index 766e29194..62aae9122 100644
--- a/java/bench/hive/src/java/org/apache/orc/bench/hive/ORCWriterBenchMark.java
+++ b/java/bench/hive/src/java/org/apache/orc/bench/hive/ORCWriterBenchMark.java
@@ -59,9 +59,12 @@ import java.util.concurrent.TimeUnit;
 @AutoService(OrcBenchmark.class)
 public class ORCWriterBenchMark implements OrcBenchmark {
   private static final Path root = Utilities.getBenchmarkRoot();
-  private Path dumpDir = new Path(root, "dumpDir");
   private List<VectorizedRowBatch> batches = new ArrayList<>();
 
+  private Path dumpDir() {
+    return new Path(root, "dumpDir");
+  }
+
   @Override
   public String getName() {
     return "write";
@@ -112,7 +115,7 @@ public class ORCWriterBenchMark implements OrcBenchmark {
     Configuration conf = new Configuration();
     TrackingLocalFileSystem fs = new TrackingLocalFileSystem();
     fs.initialize(new URI("file:///"), conf);
-    fs.delete(dumpDir, true);
+    fs.delete(dumpDir(), true);
   }
 
   @Override
@@ -136,7 +139,7 @@ public class ORCWriterBenchMark implements OrcBenchmark {
     fs.initialize(new URI("file:///"), conf);
     FileSystem.Statistics statistics = fs.getLocalStatistics();
     statistics.reset();
-    Path testFilePath = new Path(dumpDir, "dictBench");
+    Path testFilePath = new Path(dumpDir(), "dictBench");
 
     TypeDescription schema = TypeDescription.fromString("struct<str:string>");
     // Note that the total data volume will be around 100 * 1024 * 1024

Reply via email to