>From Suryaa Charan Shivakumar <[email protected]>:

Attention is currently required from: Suryaa Charan Shivakumar.

Hello Anon. E. Moose #1000171, Jenkins,

I'd like you to reexamine a change. Please visit

    https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/21333?usp=email

to look at the new patch set (#2).

The following approvals got outdated and were removed:
Contrib-2 by Anon. E. Moose #1000171, Integration-Tests+1 by Jenkins, 
Verified-1 by Jenkins


Change subject: [ ASTERIXDB-3781][STO] Support geometry type in columnar 
storage format
......................................................................

[ ASTERIXDB-3781][STO] Support geometry type in columnar storage format

  - user model changes: yes. The geometry type is now accepted in
    datasets with the columnar storage format, and RTREE indexes can
    be created on geometry fields of columnar datasets.
  - storage format changes: yes (additive). Columnar components may
    now contain GEOMETRY columns, encoded with Parquet delta
    byte-array as an opaque [int32 length][WKB] payload with a no-op
    (NoOp) column filter.
  - interface changes: no

  Details:
  - New GeometryColumnValuesWriter, GeometryValueReader and
    GeometryValueGetter; GEOMETRY wired into all columnar type
    dispatch sites (schema nodes, flush metadata, reader/writer
    factories, supported-types validator)
  - Allow RTREE secondary indexes on columnar datasets only when all
    key field types are geometry; point/line/rectangle RTrees remain
    rejected with ASX1194 since those types are not storable in
    columnar primaries
  - Fix SecondaryRTreeOperationsHelper bulk load to use the
    column-aware tuple projector so CREATE INDEX over existing
    columnar components opens leaf frames with QueryColumnTupleReader
    instead of MergeColumnTupleReader, which would throw NPE on
    lastTupleReached() without an endOfPageCallBack
  - Geometry remains disallowed as a primary key (ASX1022)
  - Include the geojson suite in testsuite_sqlpp_column.xml so all
    geo tests (functions, rtree index, CRS) also run under forced
    columnar storage;
  - Tests: columnar geometry round-trip (closed, nested, array, open
    field, large multi-KB WKB), rtree creation before and after data
    exists, index maintenance with deletes/upserts, CRS transform on
    columnar, negative tests; optimizer test asserting RTREE_SEARCH
    on a columnar dataset

  Some parts of this commit were Generated-by: Claude code
Change-Id: Ia6e37080a581292744ddc9020c814917612d15ac
---
M .gitignore
A 
asterixdb/asterix-app/src/test/resources/optimizerts/queries/rtree-index-geometry-column/rtree-sidx-column-01.sqlpp
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results/rtree-index-geometry-column/rtree-sidx-column-01.plan
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results_cbo/rtree-index-geometry-column/rtree-sidx-column-01.plan
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/001/001.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/001/001.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/001/001.003.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/001/001.004.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/001/001.005.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/001/001.006.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/002/002.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/002/002.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/002/002.003.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/003/003.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/003/003.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/003/003.003.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/004/004.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/005/005.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/005/005.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/005/005.003.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/005/005.004.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/006/006.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/006/006.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/006/006.003.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/006/006.004.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/006/006.005.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/006/006.006.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/007/007.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/007/007.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/007/007.003.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/008/008.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/008/008.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/008/008.003.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/009/009.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/009/009.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/009/009.003.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/010/010.001.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/010/010.002.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/column/geometry/010/010.003.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/001/001.006.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/002/002.003.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/003/003.003.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/005/005.004.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/006/006.004.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/006/006.006.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/007/007.003.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/008/008.003.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/009/009.003.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/column/geometry/010/010.003.adm
M asterixdb/asterix-app/src/test/resources/runtimets/sqlpp_queries.xml
M 
asterixdb/asterix-app/src/test/resources/runtimets/testsuite_single_partition_sqlpp.xml
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp_column.xml
A 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/assembler/value/GeometryValueGetter.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/assembler/value/ValueGetterFactory.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/metadata/schema/AbstractSchemaNode.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/operation/lsm/flush/FlushColumnMetadata.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/operation/lsm/flush/NoWriteFlushColumnMetadata.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/validation/ColumnSupportedTypesValidator.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/values/reader/ColumnValueReaderFactory.java
A 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/values/reader/value/GeometryValueReader.java
M 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/values/writer/ColumnValuesWriterFactory.java
A 
asterixdb/asterix-column/src/main/java/org/apache/asterix/column/values/writer/GeometryColumnValuesWriter.java
M asterixdb/asterix-doc/src/site/markdown/geo/functions.md
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/utils/SecondaryIndexOperationsHelper.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/utils/SecondaryRTreeOperationsHelper.java
65 files changed, 1,562 insertions(+), 10 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/33/21333/2
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/21333?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://asterix-gerrit.ics.uci.edu/settings?usp=email

Gerrit-MessageType: newpatchset
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Change-Id: Ia6e37080a581292744ddc9020c814917612d15ac
Gerrit-Change-Number: 21333
Gerrit-PatchSet: 2
Gerrit-Owner: Suryaa Charan Shivakumar <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Attention: Suryaa Charan Shivakumar <[email protected]>

Reply via email to