Skip to content

Support 475 Iceberg Glue REST endpoint support#98

Open
miniway wants to merge 1 commit intohotfix-423from
iceberg2
Open

Support 475 Iceberg Glue REST endpoint support#98
miniway wants to merge 1 commit intohotfix-423from
iceberg2

Conversation

@miniway
Copy link
Member

@miniway miniway commented Dec 29, 2025

This is new approach that directly modify trino-hive and some base classes to make trino-iceberg based on trino 475 that supports iam role STS.
Because it was hell of dependency to address when I copied full modules under trino-iceberg

Unless it modifies SPI or trino-main a lot(?), it would not break td-trino.

Copy link

@yajirobee yajirobee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have several questions.

  • It seems the majority of changes are for trino-hive, trino-iceberg and libraries (particularly trino-parquet and trino-filesystem*). I suppose only trino-main and trino-spi changes impact td-trino, i.e. td-trino has no dependency for trino-{hive,iceberg} and updated libraries. Is it correct?
  • Are all changes backport from 475? or are there any new code?
    • If this is true, I suppose we don't need to re-patch when we'll upgrade trino version. We can just use the latest code.
  • Do we want to merge this change into hotfix-423 now? or keep this PR open until we decide to proceed with this approach? I think we need further changes to load Iceberg catalog configuration dynamically. (or can it be implemented on td-trino side?)

@miniway
Copy link
Member Author

miniway commented Jan 15, 2026

I have several questions.

  • It seems the majority of changes are for trino-hive, trino-iceberg and libraries (particularly trino-parquet and trino-filesystem*). I suppose only trino-main and trino-spi changes impact td-trino, i.e. td-trino has no dependency for trino-{hive,iceberg} and updated libraries. Is it correct?

Yes, you're right.

  • Are all changes backport from 475? or are there any new code?

Mostly. Only one thing is a bridge on RowBlock (RowType data presentation)

In 423, it's a sparse implementation which doesn't store null in elements' data block. Memory efficient? Complex to handle elements' data.
In 475, it's a packed implementation which stores null in elements' data block. Easy to handle elements' data. I tried to backport RowType from 475, but it broke lots of modules. So I decided to add a bridge to convert the sparse RowBlock to the packed RowBlock.

  • If this is true, I suppose we don't need to re-patch when we'll upgrade trino version. We can just use the latest code.

We can simply remove the bridge at the time Trino core upgrade.

  • Do we want to merge this change into hotfix-423 now? or keep this PR open until we decide to proceed with this approach? I think we need further changes to load Iceberg catalog configuration dynamically. (or can it be implemented on td-trino side?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants