Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
356 commits
Select commit Hold shift + click to select a range
8217d0c
[doc](catalog) HMS cutover write-chain (§4.5) decomposition: 4 dorman…
morningman Jul 8, 2026
399f59c
[refactor](catalog) HMS cutover write-chain WC1: relocate BIND_BROKER…
morningman Jul 8, 2026
c1629b6
[doc](catalog) HMS cutover write-chain: decomposition landed + WC1 (B…
morningman Jul 8, 2026
53dc3ed
[doc](catalog) Plan: fold hudi into the HMS cutover via sibling deleg…
morningman Jul 8, 2026
19ca118
[feat](catalog) HMS cutover write-chain WC2: map "hms" engine for CRE…
morningman Jul 8, 2026
b0114eb
[doc](catalog) HMS cutover write-chain WC2 DONE (650658b4ce8); next =…
morningman Jul 8, 2026
2ac818e
[feat](catalog) HMS cutover write-chain WC3: reject explicit-partitio…
morningman Jul 8, 2026
c2aea71
[doc](catalog) HMS cutover write-chain WC3 DONE (ab3b0a63ed1); next =…
morningman Jul 8, 2026
11eda04
[feat](catalog) HMS cutover write-chain WC4: wire read-ACID query-fin…
morningman Jul 8, 2026
2020dc9
[doc](catalog) HMS cutover write-chain WC4 DONE (7aeac97c8e8); §4.5 d…
morningman Jul 8, 2026
07670dc
[doc](catalog) HMS cutover hudi HD-A0: DV-005 guardrail — hudi is sib…
morningman Jul 8, 2026
3a38e95
[feat](catalog) HMS cutover hudi HD-A1: hudi sibling holder + propert…
morningman Jul 8, 2026
4a68684
[doc](catalog) HMS cutover hudi HD-A0 + HD-A1 DONE; next = Group A (A…
morningman Jul 8, 2026
922775d
[doc](catalog) HMS cutover hudi HD-B1 SIGNED = Option 1 (Connector.ow…
morningman Jul 8, 2026
a376aeb
[fix](catalog) HMS cutover hudi HD-A3: partition-value parse fidelity…
morningman Jul 8, 2026
34c00c0
[feat](catalog) HMS cutover hudi HD-A2: plugin-side Kerberos auth for…
morningman Jul 8, 2026
cf87106
[feat](catalog) HMS cutover hudi HD-A4: force_jni_scanner flag + COW/…
morningman Jul 8, 2026
afe4c1d
[feat](catalog) HMS cutover hudi HD-A5: BE HIVE_TABLE descriptor + BE…
morningman Jul 8, 2026
9ad13aa
[fix](catalog) HMS cutover hudi: HudiScanRange.populateRangeParams mu…
morningman Jul 8, 2026
70ea6cc
[doc](catalog) HMS cutover hudi Group A (HD-A0-A5) DONE; next = HD-B1…
morningman Jul 8, 2026
9841371
[feat](catalog) HMS cutover hudi HD-B1: three-way foreign-handle rout…
morningman Jul 8, 2026
beea387
[doc](catalog) HMS cutover hudi HD-B1 (three-way ownsHandle routing) …
morningman Jul 8, 2026
edafbca
[doc](catalog) HMS cutover hudi: MVCC/listPartitions/freshness step (…
morningman Jul 8, 2026
73f0030
[doc](catalog) HMS cutover hudi: sign MVCC/freshness decision = A (re…
morningman Jul 8, 2026
0d20301
[feat](catalog) HMS cutover hudi: MVCC snapshot + partition listing s…
morningman Jul 8, 2026
7be84c9
[doc](catalog) HMS cutover hudi HD-C1 (MVCC snapshot + partition list…
morningman Jul 8, 2026
cc1de5e
[feat](catalog) HMS cutover hudi HD-C2: FOR TIME AS OF time travel (d…
morningman Jul 9, 2026
ccaf103
[doc](catalog) HMS cutover hudi HD-C2 (FOR TIME AS OF time travel) DO…
morningman Jul 9, 2026
a8680b7
[doc](catalog) HMS cutover hudi HD-C3 (incremental read): recon + FE-…
morningman Jul 9, 2026
fc5faa5
[feat](catalog) HMS cutover hudi HD-C3 INC-1: @incr window resolution…
morningman Jul 9, 2026
2b5a2df
[doc](catalog) HMS cutover hudi HD-C3 INC-1 DONE; next = INC-2 (port …
morningman Jul 9, 2026
1ddf836
[feat](catalog) HMS cutover hudi HD-C3 INC-2: port IncrementalRelatio…
morningman Jul 9, 2026
06d3442
[doc](catalog) HMS cutover hudi HD-C3 INC-2 DONE; next = INC-3 (incre…
morningman Jul 9, 2026
f51f2c5
[feat](catalog) HMS cutover hudi HD-C3 INC-3: incremental planScan wi…
morningman Jul 9, 2026
2f7b374
[doc](catalog) HMS cutover hudi HD-C3 INC-3 DONE; next = INC-4 (neutr…
morningman Jul 9, 2026
d55fd2c
[feat](catalog) HMS cutover hudi HD-C3 INC-4a: neutral synthetic-pred…
morningman Jul 9, 2026
ea72630
[feat](catalog) HMS cutover hudi HD-C3 INC-4b: reverse ConnectorExpre…
morningman Jul 9, 2026
7d881d7
[feat](catalog) HMS cutover hudi HD-C3 INC-4c: neutral analysis rule …
morningman Jul 9, 2026
bf7c15f
[test](catalog) HMS cutover hudi HD-C3 INC-4 review fix: honest scope…
morningman Jul 9, 2026
2a411bb
[doc](catalog) HMS cutover hudi HD-C3 INC-4 DONE; next = INC-5 (flip-…
morningman Jul 9, 2026
3bc1457
[doc](catalog) HMS cutover hudi HD-C4/C5 schema-evolution recon + des…
morningman Jul 9, 2026
8e490ba
[feat](catalog) HMS cutover hudi HD-C4a: dormant HudiSchemaUtils sche…
morningman Jul 9, 2026
8084eef
[doc](catalog) HMS cutover hudi HD-C4a DONE; next = C4b (field-id ont…
morningman Jul 9, 2026
b60a9ff
[feat](catalog) HMS cutover hudi HD-C4b: dormant field-ids onto HudiC…
morningman Jul 9, 2026
fb832e2
[doc](catalog) HMS cutover hudi HD-C4b DONE; next = C4c (per-split TH…
morningman Jul 9, 2026
4d81aa9
[feat](catalog) HMS cutover hudi HD-C4c: dormant per-split THudiFileD…
morningman Jul 9, 2026
098f4ce
[doc](catalog) HMS cutover hudi HD-C4c DONE; next = C4d (scan-level s…
morningman Jul 9, 2026
fa04b27
[feat](catalog) HMS cutover hudi HD-C4d: dormant scan-level schema-ev…
morningman Jul 9, 2026
b5a8b9e
[doc](catalog) HMS cutover hudi HD-C4d DONE; Part 1 (C4a-C4d) complet…
morningman Jul 9, 2026
7b12415
[fix](catalog) HMS cutover hudi Part 1 review fixes: meta-column BY_F…
morningman Jul 9, 2026
72223ee
[doc](catalog) HMS cutover hudi Part 1 review + fixes DONE; next = Pa…
morningman Jul 9, 2026
0377082
[feat](catalog) HMS cutover hudi HD-C5a: schema-at-instant getTableSc…
morningman Jul 9, 2026
f1fd768
[doc](catalog) HMS cutover hudi HD-C5a DONE; next = C5b (scan-side at…
morningman Jul 9, 2026
e87a31c
[feat](catalog) HMS cutover hudi HD-C5b: scan-side schema-at-instant …
morningman Jul 9, 2026
521ea8b
[doc](catalog) HMS cutover hudi HD-C5b DONE; Part 2 (C5a-C5b) + schem…
morningman Jul 9, 2026
a23e6b9
[feat](catalog) HMS cutover hudi read-only write-reject safety net (G…
morningman Jul 9, 2026
a1bcd6f
[doc](catalog) HMS cutover hudi HD-D1 DONE (read-only reject); Group …
morningman Jul 9, 2026
d93314b
[feat](catalog) HMS cutover hudi HD-B2: getTableHandle HUDI divert (a…
morningman Jul 9, 2026
c77a748
[doc](catalog) HMS cutover hudi HD-B2 DONE (getTableHandle HUDI diver…
morningman Jul 9, 2026
dba003e
[doc](catalog) HMS cutover: record flip-planning as next step (user c…
morningman Jul 9, 2026
733c552
[doc](catalog) HMS cutover: up-to-date execution plan + user decision…
morningman Jul 9, 2026
f7e6b5e
[doc](catalog) Hive connector cache: recon + design + sign-off (plan-…
morningman Jul 9, 2026
b0a287b
[feat](catalog) Hive connector cache: add fe-connector-cache + Caffei…
morningman Jul 9, 2026
81cc4e7
[doc](catalog) Hive connector cache: record C-a DONE, next = C-b (per…
morningman Jul 9, 2026
67e4fb9
[feat](catalog) Hive connector cache: CachingHmsClient decorator (dor…
morningman Jul 10, 2026
a823790
[doc](catalog) Hive connector cache: record C-b DONE, next = C-c (per…
morningman Jul 10, 2026
ed8b8e7
[feat](catalog) Hive connector cache: wire CachingHmsClient into the …
morningman Jul 10, 2026
0e7c923
[doc](catalog) Hive connector cache: record C-c DONE, next = C-d (per…
morningman Jul 10, 2026
c2167b0
[feat](catalog) Hive connector cache: connector-owned directory-listi…
morningman Jul 10, 2026
3cecb61
[feat](catalog) Hive connector cache: arm REFRESH TABLE/CATALOG via i…
morningman Jul 10, 2026
157b899
[fix](catalog) Hive connector cache: fe-core getNewestUpdateVersionOr…
morningman Jul 10, 2026
4aebaee
[doc](catalog) Hive connector cache: record C-d/C-e/C-f DONE, next = …
morningman Jul 10, 2026
00e8d01
[doc](catalog) HANDOFF: slim to a lean rolling pointer doc (159KB->8.…
morningman Jul 10, 2026
4d08eec
[fix](catalog) Hive connector cache: restore fail-loud on FileSystem.…
morningman Jul 10, 2026
7bb5c13
[feat](catalog) Hive connector cache: arm REFRESH DATABASE via connec…
morningman Jul 10, 2026
7b28f4e
[doc](catalog) Hive connector cache: clean-room re-review DONE + 2 fi…
morningman Jul 10, 2026
57c447b
[doc](catalog) Hive connector cache: second clean-room review — delta…
morningman Jul 10, 2026
04d0ed4
[fix](catalog) Hive connector cache: forward REFRESH invalidation to …
morningman Jul 10, 2026
8ca4022
[doc](catalog) HANDOFF: record second clean-room review deltas — 1 fi…
morningman Jul 10, 2026
2318ade
[doc](catalog) Hive event pipeline: Model B step design + user sign-o…
morningman Jul 10, 2026
a5515a6
[feat](catalog) Hive event pipeline: neutral event SPI types (dormant)
morningman Jul 10, 2026
861ce2e
[feat](catalog) Hive event pipeline: plugin notification fetch on Hms…
morningman Jul 10, 2026
0e6ac6a
[feat](catalog) Hive event pipeline: plugin event source + HiveConnec…
morningman Jul 10, 2026
cedee1d
[doc](catalog) HANDOFF: Hive event pipeline E-a/E-b/E-c landed (dorma…
morningman Jul 10, 2026
b524e81
[feat](catalog) Hive event pipeline: generalize fe-core event mutator…
morningman Jul 10, 2026
6b8f118
[feat](catalog) Hive event pipeline: connector-agnostic fe-core event…
morningman Jul 10, 2026
94acc88
[fix](catalog) Hive event pipeline: restore self-heal on a poison eve…
morningman Jul 10, 2026
fa1f86f
[fix](catalog) Hive event pipeline: decompress the message body lazil…
morningman Jul 10, 2026
cc2b094
[test](catalog) Hive event pipeline: dormant parser coverage (E-f)
morningman Jul 10, 2026
b1a218f
[doc](catalog) Hive event pipeline DONE: record landing + clean-room …
morningman Jul 10, 2026
b226e41
[doc](catalog) Hive coupling-seams step design: recon + 3 parity deci…
morningman Jul 10, 2026
ba10118
[feat](catalog) Hive coupling-seams S1: partition_values() plugin-dri…
morningman Jul 10, 2026
d0291e5
[doc](catalog) Hive coupling-seams: S1 landed; HANDOFF -> S4/S2/S3 + …
morningman Jul 10, 2026
56a48bc
[feat](catalog) Hive coupling-seams S4: auto-analyze per-table gate +…
morningman Jul 10, 2026
285ecb4
[feat](catalog) Hive coupling-seams S2: hudi_meta() connector-driven …
morningman Jul 10, 2026
5af7e95
[feat](catalog) Hive coupling-seams S3: ANALYZE ... WITH SAMPLE full …
morningman Jul 10, 2026
f3ea984
[doc](catalog) Hive coupling-seams W6: soften over-cautious write-pat…
morningman Jul 10, 2026
3257b6a
[doc](catalog) Hive coupling-seams: S2/S3/S4 + W6 all landed; HANDOFF…
morningman Jul 10, 2026
edae8f2
[fix](catalog) Hive coupling-seams clean-room: hudi-on-HMS metadata-t…
morningman Jul 10, 2026
bc505f3
[test](catalog) Hive coupling-seams clean-room: pin sample/metadata c…
morningman Jul 10, 2026
6a13709
[fix](catalog) Hive coupling-seams clean-room: sampled-analyze listFi…
morningman Jul 10, 2026
06cdf84
[doc](catalog) Hive coupling-seams clean-room review DONE: 4 findings…
morningman Jul 10, 2026
98f563f
[doc](catalog) Connector-cache invalidation follow-ups: step design (…
morningman Jul 10, 2026
d608334
[fix](catalog) Connector cache: Doris-issued DROP/CREATE invalidates …
morningman Jul 10, 2026
1a3f4b3
[fix](catalog) Connector cache: hive partition-object cache keys per-…
morningman Jul 10, 2026
346ba1d
[fix](catalog) Connector cache: paimon schema-at memo invalidates on …
morningman Jul 10, 2026
7be53ef
[doc](catalog) Connector-cache invalidation follow-ups DONE: D1+D1b+D…
morningman Jul 10, 2026
a6afec6
[doc](catalog) Cache-invalidation clean-room review: 4 confirmed gaps…
morningman Jul 10, 2026
e5fb976
[fix](catalog) Connector cache: iceberg/paimon gain a db-scoped inval…
morningman Jul 10, 2026
949aba7
[fix](catalog) Connector cache: DROP/CREATE/DROP-DB invalidation prop…
morningman Jul 10, 2026
0dabe25
[fix](catalog) Connector cache: RENAME TABLE invalidates the connecto…
morningman Jul 10, 2026
ab0a992
[fix](catalog) Connector cache: hive getPartitions put is generation-…
morningman Jul 10, 2026
f1724ab
[doc](catalog) Cache-invalidation R1-R4 DONE + re-review CLEAN; HANDO…
morningman Jul 10, 2026
b8c5140
[fix](catalog) Connector event sync: follower cursor feed routes to t…
morningman Jul 10, 2026
56991fb
[fix](catalog) Connector event sync: master/follower force-init hook …
morningman Jul 10, 2026
b25b15c
[feat](catalog) HMS SPI cutover: flip type=hms to the plugin-driven p…
morningman Jul 10, 2026
8ab2a6a
[feat](catalog) HMS cutover: serve external views unconditionally + d…
morningman Jul 10, 2026
3b6985c
[doc](catalog) HMS SPI cutover flip DONE (A-D) + clean-room CLEAN; HA…
morningman Jul 10, 2026
79c489e
[doc](catalog) #65185 reverify: third-party review re-checked vs post…
morningman Jul 10, 2026
368a6f5
[doc](catalog) #65185 reverify: fix task-list series (H1-H4/M1-M8/L1-…
morningman Jul 10, 2026
17a9aaf
[fix](catalog) fe-connector-jdbc: disambiguate assertDoesNotThrow ove…
morningman Jul 10, 2026
03f4c12
[fix](catalog) hudi H4: lowercase JNI reader column names
morningman Jul 10, 2026
e398278
[doc](catalog) #65185 batch-0: H4 design + track-off; record H1/H2 hi…
morningman Jul 10, 2026
39a279e
[fix](catalog) hive+hudi H1: unescape partition value in prune matching
morningman Jul 10, 2026
e9a1875
[doc](catalog) #65185 batch-0: H1 design + track-off
morningman Jul 10, 2026
cf540ee
[fix](catalog) hive+hudi H2: render datetime partition literal as Hiv…
morningman Jul 10, 2026
b911019
[doc](catalog) #65185 batch-0: H2 design (red-team SOUND) + track-off
morningman Jul 10, 2026
9c6fc58
[fix](catalog) hudi H3: use_hive_sync_partition-aware prune partition…
morningman Jul 10, 2026
f0ee2ab
[test](catalog) batch-0 H2: DATE non-regression + hive micros-trim co…
morningman Jul 10, 2026
6e2c881
[doc](catalog) #65185 batch-0 COMPLETE: H3 design + final review + tr…
morningman Jul 10, 2026
54b764a
[doc](catalog) HANDOFF: batch-0 (H1-H4 reverify fixes) DONE; next = b…
morningman Jul 10, 2026
84f580c
[fix](catalog) iceberg table stats: restore equality-delete gate (ali…
morningman Jul 10, 2026
0387bc9
[doc](catalog) #65185 batch-1: M5 design + reconcile superseded H-4 d…
morningman Jul 10, 2026
f6de950
[fix](catalog) iceberg REST vended-cred: widen client.region alias se…
morningman Jul 11, 2026
9471be0
[doc](catalog) #65185 batch-1: M7 design + track-off
morningman Jul 11, 2026
03bd4f5
[fix](catalog) iceberg s3tables: fall back to SDK default credential …
morningman Jul 11, 2026
4d327fb
[doc](catalog) #65185 batch-1: M6 design + track-off (iceberg subgrou…
morningman Jul 11, 2026
c553c3c
[fix](catalog) maxcompute: add connector-side partition-value cache (…
morningman Jul 11, 2026
5bbb1a8
[doc](catalog) #65185 batch-1: M4 design + track-off
morningman Jul 11, 2026
7021538
[fix](catalog) hive: restore batch/async partition-split path (post-c…
morningman Jul 11, 2026
9c9d159
[doc](catalog) #65185 batch-1 COMPLETE: M2 design + track-off (all 5 …
morningman Jul 11, 2026
fca2884
[fix](catalog) maxcompute partition cache: correct TTL default to leg…
morningman Jul 11, 2026
e3ae0ff
[doc](catalog) #65185 batch-1: record final adversarial review (CLEAN…
morningman Jul 11, 2026
92004ef
[fix](catalog) hive: pin HMS metastore-client TCCL to plugin loader (…
morningman Jul 11, 2026
15d3df1
[fix](catalog) hive: pin buildPluginAuthenticator TCCL to plugin load…
morningman Jul 11, 2026
cd0c128
[doc](catalog) #991951 hive classloader split-brain: design + summary…
morningman Jul 11, 2026
6963de4
[fix](catalog) batch-mode gate: restore != NOT_PRUNED for no-predicat…
morningman Jul 11, 2026
97363fc
[doc](catalog) #65185 batch-2: M3 batch-gate NOT_PRUNED fix design + …
morningman Jul 11, 2026
4dbb8e0
[doc](regression) Document Hive regression local environment
morningman Jul 11, 2026
99e0b4a
[fix](catalog) hive: pin HiveConf classloader to plugin loader (fix M…
morningman Jul 11, 2026
17b432d
[fix](catalog) TABLESAMPLE: forward to plugin scan + connector opt-in…
morningman Jul 11, 2026
af1cb7e
[doc](catalog) #65185 batch-2: M1 TABLESAMPLE opt-in fix design + tra…
morningman Jul 11, 2026
07c1ef3
[doc](catalog) #65185 reverify-fixes: standalone task-line HANDOFF fo…
morningman Jul 11, 2026
0c4e059
[feat](catalog) hive-fs: add FileSystem.forLocation default for per-l…
morningman Jul 11, 2026
3b4f747
[feat](catalog) hive-fs: add ConnectorContext.getFileSystem(session) …
morningman Jul 11, 2026
cde4470
[doc](catalog) hive-fs: land design + task list; mark steps 0/1/2 don…
morningman Jul 11, 2026
a8ed72f
[feat](catalog) hive-fs: implement DefaultConnectorContext.getFileSys…
morningman Jul 11, 2026
1416936
[doc](catalog) hive-fs: mark engine impl done, repoint to connector r…
morningman Jul 11, 2026
7e06c2a
[feat](catalog) hive-fs: route read-scan file listing through engine …
morningman Jul 11, 2026
f617eb1
[doc](catalog) hive-fs: land HIVEFS-4 design (v2, red-team folded), m…
morningman Jul 11, 2026
7a2d871
[feat](catalog) hive-fs: route ACID directory descent through engine …
morningman Jul 11, 2026
3faa60e
[doc](catalog) hive-fs: land HIVEFS-5 design (red-team folded), mark …
morningman Jul 11, 2026
d31ceb0
[feat](catalog) hive-fs: route write-path staging/MPU through engine …
morningman Jul 11, 2026
55583f4
[doc](catalog) hive-fs: land HIVEFS-6 design (red-team folded), mark …
morningman Jul 11, 2026
23a0a5b
[doc](catalog) hive-fs: verify HIVEFS-7 (hadoop-hdfs-client already e…
morningman Jul 11, 2026
37911f2
[fix](catalog) hive-fs: pin engine HDFS conf classloader (RpcEngine s…
morningman Jul 11, 2026
f168786
[doc](catalog) hive-fs: land HIVEFS-9 design, correct stale "TCCL de-…
morningman Jul 11, 2026
cd4eeca
[fix](catalog) hive-text: decode numeric serde delimiters via getByte…
morningman Jul 11, 2026
5672d7c
[fix](catalog) hive: read enable.mapping.varbinary/timestamp_tz catal…
morningman Jul 11, 2026
d8c6eb0
[fix](catalog) hive: mark external columns isKey=true (DESC parity)
morningman Jul 11, 2026
b036c60
[test](catalog) hive: align stale DDL/transactional error messages to…
morningman Jul 11, 2026
20513d3
[doc](catalog) hive-fs: hand off HIVEFS-8 e2e first-run results (37/111)
morningman Jul 11, 2026
3be2865
[fix](catalog) hive: restore db-LOCATION / decimal+special-char prune…
morningman Jul 11, 2026
70c1116
[fix](catalog) hive: validate meta-cache ttl-second at catalog create
morningman Jul 11, 2026
e0e94ee
[test](catalog) hive: align case_sensibility truncate errors to conne…
morningman Jul 11, 2026
3bc5ed1
[doc](catalog) hive-e2e round-2 triage + batch-1 handoff
morningman Jul 11, 2026
db01b9f
[fix](catalog) hive: re-emit cardinality/avgRowSize/numNodes in plugi…
morningman Jul 11, 2026
142f285
[doc](catalog) hive-e2e: record R5 done + design notes for remaining …
morningman Jul 11, 2026
4df95ad
[fix](catalog) hive: SHOW PARTITIONS lists fresh partition names (byp…
morningman Jul 11, 2026
e8f4f00
[doc](catalog) hive-e2e: land FIX-R7 design + red-team, mark R7 done,…
morningman Jul 11, 2026
9c70d4a
[fix](catalog) hive: honor OpenX JSON ignore.malformed.json (skip mal…
morningman Jul 11, 2026
ca2ac90
[doc](catalog) hive-e2e: land FIX-R10 design + red-team, mark R10 don…
morningman Jul 11, 2026
3936434
[fix](catalog) hive: flatten OpenCSVSerde table columns to STRING (se…
morningman Jul 11, 2026
85a2852
[doc](catalog) hive-e2e: land FIX-R12 design + red-team, mark R12 don…
morningman Jul 11, 2026
e1d4804
[fix](catalog) hive/hudi: remap LZ4FRAME->LZ4BLOCK on read via connec…
morningman Jul 11, 2026
ce30d12
[doc](catalog) hive-e2e: land text_write(LZ4) design; record SHOW CRE…
morningman Jul 11, 2026
17764d0
[fix](catalog) hive: native SHOW CREATE TABLE via lazy fresh-fetch co…
morningman Jul 11, 2026
dbd9b41
[doc](catalog) hive-e2e: land FIX-R2 (SHOW CREATE) design, mark done,…
morningman Jul 11, 2026
e697f18
[fix](catalog) hive: expose $partitions sys table via partition_value…
morningman Jul 11, 2026
8c177e3
[doc](catalog) hive-e2e: land FIX-R3 ($partitions sys table) design, …
morningman Jul 11, 2026
2bc7ad9
[fix](catalog) hive: honor hive.recursive_directories in partition fi…
morningman Jul 11, 2026
e2fdd65
[doc](catalog) hive-e2e: land recursive-directories design + red-team…
morningman Jul 11, 2026
58f3e36
[fix](catalog) hive/paimon: connector-supplied per-value NULL partiti…
morningman Jul 12, 2026
394f3f1
[doc](catalog) hive-e2e: land default_partition design (variant B) + …
morningman Jul 12, 2026
c9a8633
[fix](catalog) query-cache: recognize SPI plugin tables via MTMVRelat…
morningman Jul 12, 2026
bd1ab5a
[doc](catalog) query-cache: land SPI-migration design + red-team, mar…
morningman Jul 12, 2026
36721c9
fix test_hive_varbinary_type.groovy
morningman Jul 12, 2026
8ba3520
[fix](catalog) hive: honor hive.ignore_absent_partitions in partition…
morningman Jul 12, 2026
6c1e570
fix test_hive_ddl.groovy
morningman Jul 12, 2026
6a65a64
[fix](catalog) hive: honor legacy meta-cache ttl-second properties in…
morningman Jul 12, 2026
9cd07c3
[fix](test) hive: make partition_values_tvf and ctas_to_doris idempotent
morningman Jul 12, 2026
d7d2528
[fix](catalog) hive: exclude *.lzo.index sidecars and keep LZO non-sp…
morningman Jul 12, 2026
63121ec
[fix](catalog) hudi: wire catalog s3.* credentials into FE metaClient…
morningman Jul 12, 2026
705d8cb
[fix](catalog) hudi: bundle parquet-hadoop/parquet-avro child-first f…
morningman Jul 12, 2026
748f678
[fix](catalog) hudi: bundle hadoop-aws + AWS SDK v2 child-first for F…
morningman Jul 12, 2026
a26eaf4
[fix](catalog) hudi: normalize s3a:// native scan path to s3:// for B…
morningman Jul 12, 2026
19a8098
[fix](catalog) hudi: emit translated fs.s3a.* creds to BE for the JNI…
morningman Jul 12, 2026
b905b70
[doc](catalog) HANDOFF: hudi s3a BE-scan 2 fixes DONE (native scheme …
morningman Jul 12, 2026
f22f822
[fix](catalog) hive: object-store native read — normalize s3a scheme …
morningman Jul 12, 2026
1388568
[doc](catalog) HANDOFF: hive object-store read fix DONE (scheme + can…
morningman Jul 12, 2026
a96dd8a
[fix](catalog) hms: auto-enable metastore SASL for kerberos catalogs
morningman Jul 12, 2026
a634c5c
[fix](mtmv) name genuine-NULL partition pn_NULL to avoid collision wi…
morningman Jul 12, 2026
b9f2e20
[fix](planner) FileSplit.getSelfSplitWeight: null-safe -1 to fix @Dat…
morningman Jul 12, 2026
5004724
fix hudi partition table
morningman Jul 12, 2026
88aa55b
[fix](build) connector-imports gate: close 4 leaks + add self-test
morningman Jul 12, 2026
a706f16
[doc](catalog) #65185 reverify: L1 done (import-gate, +4th hole), M8 …
morningman Jul 12, 2026
4cd63c6
[fix](catalog) trino: release read-only metadata transactions (no mor…
morningman Jul 12, 2026
be96adf
[fix](catalog) trino: de-duplicate listTableNames (restore LinkedHash…
morningman Jul 12, 2026
18048f7
[fix](catalog) trino: publish guard field last to close init NPE window
morningman Jul 12, 2026
e27602d
[fix](catalog) trino: fail loud when TrinoBootstrap plugin dir differs
morningman Jul 12, 2026
367f6d5
[doc](catalog) #65185 reverify: land trino cluster designs (L3/L4/L5/…
morningman Jul 12, 2026
59697ce
[fix](catalog) kerberos: restore interrupt flag in doAs
morningman Jul 12, 2026
9e4f299
[fix](catalog) kerberos: first-writer-wins guard on UGI.setConfiguration
morningman Jul 12, 2026
f62ccf2
[doc](catalog) #65185 reverify: land kerberos cluster designs (L7/L8)…
morningman Jul 12, 2026
017d1af
[fix](catalog) maxcompute: partial predicate pushdown for top-level AND
morningman Jul 12, 2026
ca77ea7
[doc](catalog) #65185 reverify: land L9 design (mc partial pushdown),…
morningman Jul 12, 2026
4a8650b
[fix](catalog) paimon: JNI/COUNT range file_format from data-file suffix
morningman Jul 12, 2026
ced4775
[fix](catalog) paimon: preserve nested nullability in Doris->Paimon m…
morningman Jul 12, 2026
478718a
[fix](catalog) paimon: honor ignore_split_type session variable
morningman Jul 12, 2026
dffd51a
[doc](catalog) #65185 reverify: land paimon designs (L11/L13/L14), ma…
morningman Jul 12, 2026
a691d02
[doc](catalog) #65185 reverify: sync progress table for L3-L9 (alread…
morningman Jul 12, 2026
83674a8
[doc](catalog) #65185 reverify: mark L2 done (query-cache SPI capabil…
morningman Jul 12, 2026
e3d8838
[doc](catalog) #65185 reverify: L10 accept as display-only deviation …
morningman Jul 12, 2026
801d8cd
[fix](catalog) hms: surface root cause in HMS client creation errors
morningman Jul 12, 2026
4291a48
[fix](mtmv) paimon: regenerate null_partition golden for genuine-NULL…
morningman Jul 12, 2026
b2cdf97
[fix](catalog) remove dangling PAIMON_SCAN_METRICS profile key
morningman Jul 12, 2026
4e6c08d
[doc](catalog) #65185 reverify: L15 done + L12 recon (await decision)
morningman Jul 12, 2026
e5de7ae
[fix](catalog) report connector-real scanned-partition count for sele…
morningman Jul 13, 2026
1b9e0c8
[doc](catalog) #65185 reverify: L12 done (option B, scannedPartitionC…
morningman Jul 13, 2026
8d42098
[feature](catalog) restore paimon/iceberg scan metrics via connector-…
morningman Jul 13, 2026
63f3c19
[doc](catalog) restore paimon/iceberg scan metrics: design + summary …
morningman Jul 13, 2026
0166877
[fix](catalog) strip reserved partition_columns magic-key from source…
morningman Jul 13, 2026
1c9c99c
[fix](catalog) iceberg: pin unknown/v3 types to UNSUPPORTED by design…
morningman Jul 13, 2026
76afd6f
[fix](catalog) iceberg: guard-comment the pinned-schema fallback symm…
morningman Jul 13, 2026
3627556
[fix](catalog) fail-loud on same-table multi-version schema skew (L17)
morningman Jul 13, 2026
f82d6ee
[doc](catalog) #65185 reverify: L16-L19 done (designs, DV-051, HANDOF…
morningman Jul 13, 2026
2c58d83
[fix](catalog) namespace reserved connector control keys under __inte…
morningman Jul 13, 2026
65d3d64
[doc](catalog) reserved-key rename: design + supersede L19 silent-strip
morningman Jul 13, 2026
b2786fa
[fix](catalog) maxcompute: EQ predicate push '=' via SDK operator des…
morningman Jul 13, 2026
e2527e4
[doc](catalog) #65185 L20 done: maxcompute EQ '=' via SDK op descript…
morningman Jul 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
266 changes: 266 additions & 0 deletions .claude/wf-d2-cache-recon.js

Large diffs are not rendered by default.

17 changes: 17 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1082,6 +1082,23 @@ if [[ "${BUILD_FE}" -eq 1 ]]; then
done
unset CONN_PLUGIN_DIR conn_module conn_plugin_target conn_module_dir conn_zip

# RC-4: self-contain the paimon connector plugin for OSS. The connector sets
# fs.oss.impl=com.aliyun.jindodata.oss.JindoOssFileSystem; that impl lives in the jindofs jars,
# which are packaged from thirdparty by post-build.sh into fe/lib/jindofs (NOT a maven artifact).
# The plugin runs child-first, so without its OWN copy JindoOssFileSystem resolves from the parent
# 'app' classloader and cannot be cast to the plugin's child-loaded org.apache.hadoop.fs.FileSystem.
# Copy the jindofs jars into the paimon plugin lib so JindoOssFileSystem loads child-first alongside
# the plugin's own hadoop FileSystem (same self-contained intent as the bundled hadoop-aws/S3A).
# Naturally gated: a no-op unless jindofs was packaged (--jindofs / DISABLE_BUILD_JINDOFS=OFF).
# CAVEAT (docker-gated, enablePaimonTest=true): jindo-core ships a native lib that can bind to only one
# classloader per JVM, so this is safe only while no concurrent non-paimon path loads jindo from
# fe/lib/jindofs in the same FE process.
PAIMON_CONN_LIB="${DORIS_OUTPUT}/fe/plugins/connector/paimon/lib"
if [[ -d "${PAIMON_CONN_LIB}" && -d "${DORIS_OUTPUT}/fe/lib/jindofs" ]]; then
cp -p "${DORIS_OUTPUT}/fe/lib/jindofs/"*.jar "${PAIMON_CONN_LIB}/" 2>/dev/null || true
fi
unset PAIMON_CONN_LIB

if [ "${TARGET_SYSTEM}" = "Darwin" ] || [ "${TARGET_SYSTEM}" = "Linux" ]; then
mkdir -p "${DORIS_OUTPUT}/fe/arthas"
rm -rf "${DORIS_OUTPUT}/fe/arthas/*"
Expand Down
162 changes: 162 additions & 0 deletions docker/thirdparties/hive-regression-local-env.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# Hive Regression Local Environment

This document records the local Docker and regression configuration needed to run:

```bash
regression-test/suites/external_table_p0/hive/
```

## Required Thirdparty Components

Run Hive2 and Hive3 through the thirdparty launcher:

```bash
./docker/thirdparties/run-thirdparties-docker.sh -c hive2,hive3 --hive-mode refresh
```

The Hive startup script may also start `mysql` automatically. Both
`docker-compose/hive/hive-2x_settings.env` and
`docker-compose/hive/hive-3x_settings.env` default `JFS_CLUSTER_META` to:

```bash
mysql://root:123456@(127.0.0.1:3316)/juicefs_meta
```

Because of that setting, `run-thirdparties-docker.sh` treats local MySQL 5.7 as
an implicit dependency for Hive.

Each Hive version starts its own compose services:

- Hive2: `hive2-server`, `hive2-metastore`, `hadoop2-namenode`,
`hadoop2-datanode`, `hive2-metastore-postgresql`
- Hive3: `hive3-server`, `hive3-metastore`, `hadoop3-namenode`,
`hadoop3-datanode`, `hive3-metastore-postgresql`
- MySQL 5.7: required by the default JuiceFS metadata URI when using the local
`127.0.0.1:3316` endpoint

The Hive p0 directory does not require these components by default:

- `pg`
- `iceberg`
- `minio`
- `hudi`
- `kerberos`
- `ranger`

`test_external_catalog_hive.groovy` has a Ranger-specific branch guarded by
`enableRangerTest`; if this option is not set to `true`, that branch is skipped.

## Current Running Containers Observed

The following relevant containers were running when checked with
`sudo docker ps`:

- Hive3 stack: `hive3-server`, `hive3-metastore`, `hadoop3-datanode`,
`hadoop3-namenode`, `hive3-metastore-postgresql`; all healthy
- Hive2 stack: `hive2-server`, `hive2-metastore`, `hadoop2-datanode`,
`hadoop2-namenode`, `hive2-metastore-postgresql`; all healthy
- MySQL 5.7: `mysql-doris--syt--mysql_57-1`, healthy, published as
`127.0.0.1:3316 -> 3306`

Other Doris thirdparty containers were also running, but they are not required
for `external_table_p0/hive/`:

- PostgreSQL 14 on `5442`
- Iceberg REST, Spark, Postgres, and MinIO
- Oracle on `1521`
- ClickHouse on `8123`
- SQLServer on `1433`
- OceanBase on `2881`

The observed Hive2/Hive3 and MySQL compose projects came from another checkout
under `/mnt/disk2/suyiteng/doris`, not from this worktree. PostgreSQL and
Iceberg compose projects came from this worktree.

## Regression Configuration

The Hive p0 suite directly reads these keys from
`regression-test/conf/regression-conf.groovy`:

```groovy
enableHiveTest
externalEnvIp
hive2HmsPort
hive2HdfsPort
hive3HmsPort
hive3HdfsPort
hdfsUser
```

It also uses framework helpers backed by:

```groovy
brokerName
hdfsPasswd
hdfsFs
```

For local Hive2/Hive3 Docker with default ports, the relevant values are:

```groovy
enableHiveTest = true

hive2HmsPort = 9083
hive2HdfsPort = 8020
hive2ServerPort = 10000
hive2PgPort = 5432

hive3HmsPort = 9383
hive3HdfsPort = 8320
hive3ServerPort = 13000
hive3PgPort = 5732

hdfsUser = "doris-test"
brokerName = "broker_name"
hdfsPasswd = ""
```

`externalEnvIp` must be the address that Doris BE can use to reach the Hive
Docker services. For a fully local setup this is usually:

```groovy
externalEnvIp = "127.0.0.1"
```

If BE runs in a context where `127.0.0.1` is not the Docker host, use the host
IP selected by `run-thirdparties-docker.sh` through `IP_HOST`.

## Config Gaps Noted In regression-conf.groovy.bak

`regression-test/conf/regression-conf.groovy.bak` already contains the core Hive
keys listed above. The notable follow-ups are:

- `externalEnvIp` was set to `172.20.32.136`; verify this is reachable from BE,
or replace it with `127.0.0.1` for local host-mode Docker.
- FE/JDBC addresses in the file used `9033`, `9022`, and `8033`; align these
with the current Doris worktree cluster ports before running regression.
- `enableRangerTest` is not present. This is acceptable for the Hive p0 suite
because the Ranger-specific branch is guarded and skipped unless explicitly
enabled.

## Thirdparty Script Settings

Before starting Hive through `run-thirdparties-docker.sh`, set a unique
`CONTAINER_UID` in:

```bash
docker/thirdparties/custom_settings.env
```

The default `CONTAINER_UID="doris--"` is rejected by the startup script.

Hive baseline restore also depends on these settings:

```bash
s3Endpoint
s3BucketName
HIVE_BASELINE_VERSION
HIVE_BASELINE_TARBALL_CACHE
```

If baseline download is unavailable, place the matching tarball manually under
`HIVE_BASELINE_TARBALL_CACHE`.
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
import org.apache.doris.common.classloader.ThreadClassLoaderContext;
import org.apache.doris.common.jni.JniScanner;
import org.apache.doris.common.jni.vec.ColumnType;
import org.apache.doris.common.security.authentication.PreExecutionAuthenticator;
import org.apache.doris.common.security.authentication.PreExecutionAuthenticatorCache;
import org.apache.doris.kerberos.PreExecutionAuthenticator;
import org.apache.doris.kerberos.PreExecutionAuthenticatorCache;

import com.google.common.base.Joiner;
import com.google.common.base.Preconditions;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
import org.apache.doris.common.jni.JniScanner;
import org.apache.doris.common.jni.vec.ColumnType;
import org.apache.doris.common.jni.vec.ColumnValue;
import org.apache.doris.common.security.authentication.PreExecutionAuthenticator;
import org.apache.doris.common.security.authentication.PreExecutionAuthenticatorCache;
import org.apache.doris.kerberos.PreExecutionAuthenticator;
import org.apache.doris.kerberos.PreExecutionAuthenticatorCache;

import com.google.common.base.Preconditions;
import org.apache.iceberg.FileScanTask;
Expand Down
5 changes: 5 additions & 0 deletions fe/be-java-extensions/java-common/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,11 @@ under the License.
</properties>

<dependencies>
<dependency>
<groupId>org.apache.doris</groupId>
<artifactId>fe-kerberos</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.doris</groupId>
<artifactId>fe-common</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,9 @@
// specific language governing permissions and limitations
// under the License.

package org.apache.doris.common.maxcompute;
package org.apache.doris.maxcompute;

import org.apache.doris.common.maxcompute.MCProperties;

import com.aliyun.auth.credentials.Credential;
import com.aliyun.auth.credentials.provider.EcsRamRoleCredentialProvider;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@

import org.apache.doris.common.jni.JniScanner;
import org.apache.doris.common.jni.vec.ColumnType;
import org.apache.doris.common.maxcompute.MCUtils;

import com.aliyun.odps.Odps;
import com.aliyun.odps.table.configuration.CompressionCodec;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
import org.apache.doris.common.jni.vec.VectorColumn;
import org.apache.doris.common.jni.vec.VectorTable;
import org.apache.doris.common.maxcompute.MCProperties;
import org.apache.doris.common.maxcompute.MCUtils;

import com.aliyun.odps.Odps;
import com.aliyun.odps.OdpsType;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
import org.apache.doris.common.jni.JniScanner;
import org.apache.doris.common.jni.vec.ColumnType;
import org.apache.doris.common.jni.vec.TableSchema;
import org.apache.doris.common.security.authentication.PreExecutionAuthenticator;
import org.apache.doris.common.security.authentication.PreExecutionAuthenticatorCache;
import org.apache.doris.kerberos.PreExecutionAuthenticator;
import org.apache.doris.kerberos.PreExecutionAuthenticatorCache;

import com.google.common.base.Preconditions;
import org.apache.paimon.CoreOptions;
Expand Down Expand Up @@ -50,6 +50,7 @@
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
Expand Down Expand Up @@ -271,6 +272,12 @@ static int getFieldIndex(List<String> fieldNames, String fieldName) {
}

private List<Predicate> getPredicates() {
// Backstop for a missing paimon_predicate param (scan with no pushed-down filter): a null here means
// "no filter", not an error. Guard the unconditional deserialize so the JNI reader never NPEs on
// deserialize(null) ("encodedStr is null"). The FE producer also always emits an (empty) predicate now.
if (paimonPredicate == null) {
return Collections.emptyList();
}
List<Predicate> predicates = PaimonUtils.deserialize(paimonPredicate);
if (LOG.isDebugEnabled()) {
LOG.debug("predicates:{}", predicates);
Expand Down
12 changes: 12 additions & 0 deletions fe/be-java-extensions/preload-extensions/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,18 @@ under the License.
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
<!-- Runtime-only: Hive-using JNI scanners (paimon-hive-connector / hudi / HiveConf)
need org.apache.commons.lang.StringUtils (commons-lang 2.x) at runtime. It used to
arrive transitively via fe-common's odps-sdk-core; after P4-T09 (a53f2b17b8d) made
fe-common odps-free it was evicted from this shared preload classpath, breaking every
scanner with NoClassDefFoundError. Restore it here (version managed by fe/pom.xml) so
it lands in the preload-extensions runtime classpath, the shared parent of all JNI
scanners, while staying out of java-udf's own jar. -->
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.arrow</groupId>
<artifactId>arrow-memory-unsafe</artifactId>
Expand Down
4 changes: 4 additions & 0 deletions fe/check/checkstyle/import-control.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ under the License.
<allow pkg="org.junit.jupiter"/>
<disallow pkg="org.junit"/>
<disallow pkg="lombok"/>
<disallow pkg="org.apache.iceberg"/>
</subpackage>
<subpackage name="planner">
<disallow pkg="org.apache.iceberg"/>
</subpackage>
</import-control>

24 changes: 8 additions & 16 deletions fe/fe-common/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -139,23 +139,15 @@ under the License.
<artifactId>antlr4-runtime</artifactId>
<version>${antlr4.version}</version>
</dependency>
<!-- Used by DorisHttpException (netty) and GsonUtilsBase (protobuf); previously pulled in
transitively via odps-sdk-core, now declared directly so fe-common is odps-free. -->
<dependency>
<groupId>com.aliyun.odps</groupId>
<artifactId>odps-sdk-core</artifactId>
<exclusions>
<exclusion>
<groupId>org.apache.arrow</groupId>
<artifactId>arrow-vector</artifactId>
</exclusion>
<exclusion>
<groupId>org.ini4j</groupId>
<artifactId>ini4j</artifactId>
</exclusion>
<exclusion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
</exclusion>
</exclusions>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
</dependency>
</dependencies>
<build>
Expand Down
10 changes: 8 additions & 2 deletions fe/fe-common/src/main/java/org/apache/doris/common/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -2252,12 +2252,18 @@ public class Config extends ConfigBase {
public static boolean enable_fqdn_mode = false;

/**
* If set to true, doris will try to parse the ddl of a hive view and try to execute the query
* otherwise it will throw an AnalysisException.
* @deprecated No-op since the hms/iceberg SPI cutover: external views (hive, iceberg) are always served.
* Retained for one release so operator fe.conf that sets it still parses; will be removed later.
*/
@Deprecated
@ConfField(mutable = true)
public static boolean enable_query_hive_views = true;

/**
* @deprecated No-op since the iceberg SPI cutover: external views (hive, iceberg) are always served.
* Retained for one release so operator fe.conf that sets it still parses; will be removed later.
*/
@Deprecated
@ConfField(mutable = true)
public static boolean enable_query_iceberg_views = true;

Expand Down
Loading
Loading