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 b946f3414ca91db052f6f105a2ccf3f2d8f69b24 Merge: 2f07239724 16745f13c8 Author: Michael Blow <michael.b...@couchbase.com> AuthorDate: Fri Aug 15 07:26:28 2025 -0400 Merge branch 'gerrit/ionic' into 'master' * [ASTERIXDB-3627][OTH] Primary key missing from result * [NO ISSUE][OTH] Adding getters to evaluator factories * [ASTERIXDB-3601][STO] Fixing Merge failure * [NO ISSUE][COMP] Remove check-unknown for Insert/Upsert on datasets with meta part * [ASTERIXDB-3601][STO] Remove unnecessary present column calculation for flush * [NO ISSUE][COMP] Change plan to show RETAIN-UNTRUE for null placeholders * [ASTERIXDB-3628][RT] Correct subplan profiles * [ASTERIXDB-3601][STO] Fix calculation of presentColumns * [ASTERIXDB-3601][FUNC] Added column-count function * [ASTERIXDB-3392] Handle NULL/Empty types in Copy to parquet * [ASTERIXDB-3392] Fix Hdfs tests * [NO ISSUE][STO] Fixed multiple issue * [NO ISSUE][HTTP][MISC] += ClusterStateManager.isPendingRemoval, HTTP stop bind at shutdown * [NO ISSUE][COMP] Add None as quote option for CSV in external collections Change-Id: Ifbc5c7ec96e394910c57d4ffa97195073b9cc5e5 .../rules/IntroduceDynamicTypeCastRule.java | 12 +- asterixdb/asterix-app/data/csv/sample_14.csv | Bin 0 -> 78 bytes .../CollectionEstimateColumnCountDatasource.java | 83 + .../CollectionEstimateColumnCountFunction.java | 82 + .../CollectionEstimateColumnCountReader.java | 68 + .../CollectionEstimateColumnCountRewriter.java | 94 + .../message/EstimateColumnCountRequestMessage.java | 92 + .../EstimateColumnCountResponseMessage.java | 74 + .../GetEstimatedColumnCountRequestMessage.java | 75 + .../GetEstimatedColumnCountResponseMessage.java | 58 + .../asterix/util/MetadataBuiltinFunctions.java | 7 + .../java/org/apache/asterix/utils/StorageUtil.java | 60 + .../src/test/resources/runtimets/profiled.xml | 8 + .../collection-does-not-exist.000.query.sqlpp} | 16 +- .../collection-does-not-exist.001.ddl.sqlpp} | 16 +- .../collection-exists.000.ddl.sqlpp} | 22 +- .../collection-exists.001.update.sqlpp} | 19 +- .../collection-exists.002.query.sqlpp} | 16 +- .../collection-exists.003.ddl.sqlpp} | 16 +- .../row-format-collection.000.ddl.sqlpp} | 24 +- .../row-format-collection.001.query.sqlpp} | 16 +- .../row-format-collection.002.ddl.sqlpp} | 16 +- .../ASTERIXDB-3601/ASTERIXDB-3601.001.ddl.sqlpp} | 20 +- .../ASTERIXDB-3601/ASTERIXDB-3601.002.update.sqlpp | 1874 ++++++++++++++++++++ .../ASTERIXDB-3601/ASTERIXDB-3601.003.query.sqlpp} | 14 +- .../parquet-tweet/parquet-tweet.03.update.sqlpp | 181 -- .../parquet-utf8/parquet-utf8.03.update.sqlpp | 1 - .../parquet-error-checks.23.ddl.sqlpp} | 14 +- .../parquet-error-checks.24.update.sqlpp} | 17 +- .../parquet-error-checks.25.update.sqlpp} | 16 +- .../parquet-heterogeneous.02.update.sqlpp | 20 +- .../parquet-null-type.01.ddl.sqlpp} | 18 +- .../parquet-null-type.02.update.sqlpp | 29 + .../parquet-null-type.03.update.sqlpp} | 30 +- .../parquet-null-type.04.ddl.sqlpp} | 22 +- .../parquet-null-type.05.query.sqlpp} | 13 +- .../parquet-null-type.06.update.sqlpp} | 9 +- .../parquet-null-type.07.ddl.sqlpp} | 19 +- .../parquet-null-type.08.query.sqlpp} | 13 +- .../parquet-tweet/parquet-tweet.03.update.sqlpp | 181 -- .../parquet-type-hierarchy.02.update.sqlpp | 2 +- .../parquet-utf8/parquet-utf8.03.update.sqlpp | 1 - .../csv-parser-001/csv-parser-001.1.ddl.sqlpp | 1 + .../csv-parser-001/csv-parser-009.1.ddl.sqlpp} | 14 +- .../subplan/subplan.1.ddl.sqlpp} | 20 +- .../subplan/subplan.2.update.sqlpp} | 26 +- .../subplan/subplan.3.plans.sqlpp} | 24 +- .../subplan/subplan.4.plans.sqlpp} | 19 +- .../subplan/subplan.5.plans.sqlpp} | 22 +- .../collection-exists/collection-exists.002.adm | 8 + .../io/merge/ASTERIXDB-3601/ASTERIXDB-3601.003.adm | 9 + .../parquet-tweet/parquet-tweet.05.adm | 4 +- .../copy-to-hdfs/parquet-utf8/parquet-utf8.05.adm | 16 +- .../parquet-null-type/parquet-null-type.05.adm | 5 + .../parquet-null-type/parquet-null-type.08.adm | 5 + .../copy-to/parquet-tweet/parquet-tweet.05.adm | 4 +- .../parquet-type-hierarchy.05.adm | 8 +- .../copy-to/parquet-utf8/parquet-utf8.05.adm | 16 +- .../csv-parser-001/csv-parser-001.9.adm | 3 + .../results/profile/subplan/subplan.3.regex | 1 + .../results/profile/subplan/subplan.4.regex | 1 + .../results/profile/subplan/subplan.5.regex | 1 + .../runtimets/testsuite_cloud_storage.xml | 19 + .../runtimets/testsuite_external_dataset_s3.xml | 12 + .../runtimets/testsuite_single_partition_sqlpp.xml | 5 + .../resources/runtimets/testsuite_sqlpp_hdfs.xml | 2 + .../parquet/ParquetSchemaInferPoolWriter.java | 11 +- .../stream/in/MultiPageZeroByteBuffersReader.java | 3 +- .../lsm/flush/FlushColumnTupleWriter.java | 5 + .../lsm/merge/MergeColumnTupleWriter.java | 61 +- .../column/tuple/MergeColumnTupleReference.java | 20 - .../zero/readers/DefaultColumnPageZeroReader.java | 15 +- .../zero/readers/SparseColumnPageZeroReader.java | 23 +- .../DefaultColumnMultiPageZeroReader.java | 20 +- .../multipage/SparseColumnMultiPageZeroReader.java | 34 +- .../asterix/common/exceptions/ErrorCode.java | 1 + .../src/main/resources/asx_errormsg/en.properties | 1 + .../CSVToRecordWithMetadataAndPKConverter.java | 2 +- .../reader/stream/QuotedLineRecordReader.java | 12 +- .../external/parser/DelimitedDataParser.java | 10 +- .../parser/factory/DelimitedDataParserFactory.java | 4 +- .../asterix/external/util/ExternalDataUtils.java | 12 +- .../writer/printer/ParquetExternalFilePrinter.java | 5 +- .../printer/parquet/ParquetRecordLazyVisitor.java | 148 +- .../printer/parquet/ParquetSchemaLazyVisitor.java | 63 +- .../writer/printer/parquet/ParquetSchemaTree.java | 20 + .../printer/parquet/SchemaCheckerLazyVisitor.java | 48 +- .../apache/asterix/metadata/utils/DatasetUtil.java | 19 + .../data/nontagged/printers/csv/CSVUtils.java | 2 +- .../functions/CastTypeEvaluatorFactory.java | 16 + .../records/FieldAccessByNameEvalFactory.java | 16 + .../records/FieldAccessNestedEvalFactory.java | 20 + .../LogicalOperatorPrettyPrintVisitor.java | 4 +- .../LogicalOperatorPrettyPrintVisitorJson.java | 8 + .../runtime/base/IProfiledPushRuntime.java | 17 +- .../runtime/base/ProfiledPushRuntime.java | 17 +- .../meta/AlgebricksMetaOperatorDescriptor.java | 14 +- .../runtime/operators/meta/PipelineAssembler.java | 9 + .../operators/meta/SubplanRuntimeFactory.java | 24 +- .../api/dataflow/ProfiledOperatorNodePushable.java | 2 +- .../std/file/DelimitedDataTupleParserFactory.java | 2 +- .../file/FieldCursorForDelimitedDataParser.java | 45 +- .../hyracks/dataflow/std/file/CursorTest.java | 2 +- .../column/api/AbstractColumnTupleWriter.java | 8 + .../am/lsm/btree/column/cloud/ColumnRanges.java | 22 +- .../buffercache/read/CloudColumnReadContext.java | 35 +- .../buffercache/read/CloudMegaPageReadContext.java | 4 +- .../btree/column/cloud/sweep/ColumnSweeper.java | 1 + .../column/impls/btree/ColumnBTreeBulkloader.java | 18 +- .../impls/btree/ColumnBTreeLeafFrameFactory.java | 4 +- .../impls/btree/ColumnBTreeReadLeafFrame.java | 15 +- .../column/impls/btree/IColumnPageZeroReader.java | 9 +- .../lsm/btree/column/impls/lsm/LSMColumnBTree.java | 4 + 113 files changed, 3507 insertions(+), 961 deletions(-)