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

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit f6dde83a9d11844e99ba448a2fb777a8b1462f2b
Merge: 07074eab85 9ffb423df3
Author: Michael Blow <[email protected]>
AuthorDate: Thu Jun 5 07:51:39 2025 -0400

    Merge branch 'gerrit/trinity' into 'gerrit/ionic'
    
    Ext-ref: MB-66663,MB-66818
    Change-Id: Iae698ac197d9148b5f29c8c77249d71d60021857

 .../http/server/QueryServiceRequestParameters.java |  9 ++--
 .../input/record/reader/aws/AwsS3InputStream.java  |  3 +-
 .../reader/azure/blob/AzureBlobInputStream.java    |  3 +-
 .../azure/datalake/AzureDataLakeInputStream.java   |  3 +-
 .../input/record/reader/gcs/GCSInputStream.java    |  3 +-
 .../record/reader/stream/AvailableInputStream.java | 57 ++++++++++++++++++++++
 .../apache/hyracks/control/cc/job/JobManager.java  |  7 +--
 .../VariableDeletableTupleMemoryManager.java       |  4 +-
 .../std/group/HashSpillableTableFactory.java       | 12 ++---
 .../OptimizedHybridHashJoinOperatorDescriptor.java | 47 ++++++------------
 .../std/sort/AbstractExternalSortRunMerger.java    | 13 ++---
 11 files changed, 99 insertions(+), 62 deletions(-)

diff --cc 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/aws/AwsS3InputStream.java
index a9f12341ff,6b921ac026..60205ece05
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/aws/AwsS3InputStream.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/aws/AwsS3InputStream.java
@@@ -31,10 -29,10 +31,11 @@@ import org.apache.asterix.common.api.IA
  import org.apache.asterix.common.exceptions.CompilationException;
  import org.apache.asterix.common.exceptions.ErrorCode;
  import org.apache.asterix.common.exceptions.RuntimeDataException;
 +import 
org.apache.asterix.external.input.filter.embedder.IExternalFilterValueEmbedder;
  import 
org.apache.asterix.external.input.record.reader.abstracts.AbstractExternalInputStream;
+ import 
org.apache.asterix.external.input.record.reader.stream.AvailableInputStream;
  import org.apache.asterix.external.util.ExternalDataConstants;
 -import org.apache.asterix.external.util.aws.s3.S3Utils;
 +import org.apache.asterix.external.util.aws.s3.S3AuthUtils;
  import org.apache.commons.lang3.StringUtils;
  import org.apache.hyracks.api.exceptions.HyracksDataException;
  import org.apache.hyracks.api.util.CleanupUtils;
diff --cc 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/azure/blob/AzureBlobInputStream.java
index db4fdb0b7d,bf2a717de6..b952495e7a
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/azure/blob/AzureBlobInputStream.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/azure/blob/AzureBlobInputStream.java
@@@ -30,8 -30,8 +30,9 @@@ import org.apache.asterix.common.api.IA
  import org.apache.asterix.common.exceptions.CompilationException;
  import org.apache.asterix.common.exceptions.ErrorCode;
  import org.apache.asterix.common.exceptions.RuntimeDataException;
 +import 
org.apache.asterix.external.input.filter.embedder.IExternalFilterValueEmbedder;
  import 
org.apache.asterix.external.input.record.reader.abstracts.AbstractExternalInputStream;
+ import 
org.apache.asterix.external.input.record.reader.stream.AvailableInputStream;
  import org.apache.asterix.external.util.ExternalDataConstants;
  import org.apache.hyracks.api.exceptions.HyracksDataException;
  import org.apache.hyracks.util.LogRedactionUtil;
diff --cc 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/azure/datalake/AzureDataLakeInputStream.java
index 9b160265f2,ce6c0e13aa..b13213d6db
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/azure/datalake/AzureDataLakeInputStream.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/azure/datalake/AzureDataLakeInputStream.java
@@@ -30,8 -30,8 +30,9 @@@ import org.apache.asterix.common.api.IA
  import org.apache.asterix.common.exceptions.CompilationException;
  import org.apache.asterix.common.exceptions.ErrorCode;
  import org.apache.asterix.common.exceptions.RuntimeDataException;
 +import 
org.apache.asterix.external.input.filter.embedder.IExternalFilterValueEmbedder;
  import 
org.apache.asterix.external.input.record.reader.abstracts.AbstractExternalInputStream;
+ import 
org.apache.asterix.external.input.record.reader.stream.AvailableInputStream;
  import org.apache.asterix.external.util.ExternalDataConstants;
  import org.apache.hyracks.api.exceptions.HyracksDataException;
  import org.apache.hyracks.util.LogRedactionUtil;
diff --cc 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/gcs/GCSInputStream.java
index 1ef3fcde9c,7d3fb2f0a0..307028a371
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/gcs/GCSInputStream.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/gcs/GCSInputStream.java
@@@ -31,10 -30,10 +31,11 @@@ import org.apache.asterix.common.api.IA
  import org.apache.asterix.common.exceptions.CompilationException;
  import org.apache.asterix.common.exceptions.ErrorCode;
  import org.apache.asterix.common.exceptions.RuntimeDataException;
 +import 
org.apache.asterix.external.input.filter.embedder.IExternalFilterValueEmbedder;
  import 
org.apache.asterix.external.input.record.reader.abstracts.AbstractExternalInputStream;
+ import 
org.apache.asterix.external.input.record.reader.stream.AvailableInputStream;
  import org.apache.asterix.external.util.ExternalDataConstants;
 -import org.apache.asterix.external.util.google.gcs.GCSUtils;
 +import org.apache.asterix.external.util.google.gcs.GCSAuthUtils;
  import org.apache.commons.lang3.StringUtils;
  import org.apache.hyracks.api.exceptions.HyracksDataException;
  import org.apache.hyracks.api.util.CleanupUtils;
diff --cc 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
index e4a5c8600f,f3aebd5062..d79af7960a
--- 
a/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
@@@ -525,13 -530,10 +525,10 @@@ public class OptimizedHybridHashJoinOpe
                                      && !isLeftOuter))) {
  
                          int tabSize = -1;
 -                        if (!forceRoleReversal && (isLeftOuter || 
(buildPartSize < probePartSize))) {
 +                        if ((isLeftOuter || (buildPartSize < probePartSize))) 
{
                              //Case 1.1 - InMemHJ (without Role-Reversal)
-                             if (LOGGER.isTraceEnabled()) {
-                                 LOGGER.trace(
-                                         "\t>>>Case 1.1 (IsLeftOuter || 
buildSize<probe) AND ApplyInMemHJ - [Level {}]",
-                                         level);
-                             }
+                             LOGGER.trace("\t>>>Case 1.1 (IsLeftOuter || 
buildSize<probe) AND ApplyInMemHJ - [Level {}]",
+                                     level);
                              tabSize = buildSizeInTuple;
                              if (tabSize == 0) {
                                  throw new HyracksDataException(
@@@ -558,16 -558,12 +553,12 @@@
                      }
                      //Apply (Recursive) HHJ
                      else {
-                         if (LOGGER.isTraceEnabled()) {
-                             LOGGER.trace("\t>>>Case 2. ApplyRecursiveHHJ - 
[Level {}]", level);
-                         }
+                         LOGGER.trace("\t>>>Case 2. ApplyRecursiveHHJ - [Level 
{}]", level);
 -                        if (!forceRoleReversal && (isLeftOuter || 
buildPartSize < probePartSize)) {
 +                        if ((isLeftOuter || buildPartSize < probePartSize)) {
                              //Case 2.1 - Recursive HHJ (without Role-Reversal)
-                             if (LOGGER.isTraceEnabled()) {
-                                 LOGGER.trace(
-                                         "\t\t>>>Case 2.1 - RecursiveHHJ WITH 
(isLeftOuter || build<probe) - [Level {}]",
-                                         level);
-                             }
+                             LOGGER.trace(
+                                     "\t\t>>>Case 2.1 - RecursiveHHJ WITH 
(isLeftOuter || build<probe) - [Level {}]",
+                                     level);
                              applyHybridHashJoin((int) buildPartSize, 
PROBE_REL, BUILD_REL, probeKeys, buildKeys,
                                      probeRd, buildRd, probeHpc, buildHpc, 
probeSideReader, buildSideReader, level,
                                      beforeMax, probComp);
@@@ -639,13 -633,11 +628,11 @@@
                          int afterMax = Math.max(maxAfterBuildSize, 
maxAfterProbeSize);
  
                          BitSet rPStatus = rHHj.getPartitionStatus();
 -                        if (!forceNLJ && (afterMax < (NLJ_SWITCH_THRESHOLD * 
beforeMax))) {
 +                        if ((afterMax < (NLJ_SWITCH_THRESHOLD * beforeMax))) {
                              //Case 2.1.1 - Keep applying HHJ
-                             if (LOGGER.isTraceEnabled()) {
-                                 LOGGER.trace(
-                                         "\t\t>>>Case 2.1.1 - KEEP APPLYING 
RecursiveHHJ WITH (isLeftOuter || build<probe) - [Level {}]",
-                                         level);
-                             }
+                             LOGGER.trace(
+                                     "\t\t>>>Case 2.1.1 - KEEP APPLYING 
RecursiveHHJ WITH (isLeftOuter || build<probe) - [Level {}]",
+                                     level);
                              for (int rPid = rPStatus.nextSetBit(0); rPid >= 
0; rPid = rPStatus.nextSetBit(rPid + 1)) {
                                  RunFileReader rbrfw = 
rHHj.getBuildRFReader(rPid);
                                  RunFileReader rprfw = 
rHHj.getProbeRFReader(rPid);

Reply via email to