Latest update on the release:

As discussed in the last community sync, I have waited for the Spark 4.0
release. But the RC3 has failed.
Flink 2.0 has been released, there is an open PR
<https://github.com/apache/iceberg/pull/12527> to include it at the
Iceberg. It didn't make any progress this week.

We have recently found a few issues and small requirements for Auth
manager,
Added them to the milestone: https://github.com/apache/iceberg/milestone/53
<https://github.com/apache/iceberg/milestone/53>
If we get good review support, I think 2-3 days should be sufficient to
close these and prepare a release.

- Ajantha

On Thu, Mar 20, 2025 at 1:42 PM Alex Dutra <alex.du...@dremio.com.invalid>
wrote:

> Hi Yuya,
>
> Thanks for reporting this issue, which is indeed a defect in the SigV4
> auth manager. The fix was hopefully easy:
>
> https://github.com/apache/iceberg/pull/12582
>
> Sorry for the inconvenience,
>
> Alex
>
> On Thu, Mar 20, 2025 at 5:20 AM Yuya Ebihara <
> yuya.ebih...@starburstdata.com> wrote:
>
>> S3 Tables tests in Trino with 1.9.0 nightly release throws
>> ClassCastException (RESTSigV4AuthSession → OAuth2Util$AuthSession). The
>> test works fine in 1.8.1.
>> I’m going to check if adjusting our test settings based on this PR (
>> https://github.com/apache/iceberg/pull/11995) can fix the issue.
>>
>>
>> https://github.com/trinodb/trino/actions/runs/13960201796/job/39080056606?pr=25331
>> Error:
>>  io.trino.plugin.iceberg.catalog.rest.TestIcebergS3TablesConnectorSmokeTest
>> -- Time elapsed: 3.038 s <<< ERROR!
>> io.trino.testing.QueryFailedException: class
>> org.apache.iceberg.aws.RESTSigV4AuthSession cannot be cast to class
>> org.apache.iceberg.rest.auth.OAuth2Util$AuthSession
>> (org.apache.iceberg.aws.RESTSigV4AuthSession and
>> org.apache.iceberg.rest.auth.OAuth2Util$AuthSession are in unnamed module
>> of loader 'app')
>> at
>> io.trino.testing.AbstractTestingTrinoClient.execute(AbstractTestingTrinoClient.java:138)
>> at
>> io.trino.testing.DistributedQueryRunner.executeInternal(DistributedQueryRunner.java:565)
>> at
>> io.trino.testing.DistributedQueryRunner.execute(DistributedQueryRunner.java:548)
>> at io.trino.testing.QueryRunner.execute(QueryRunner.java:82)
>> at
>> io.trino.plugin.iceberg.SchemaInitializer.accept(SchemaInitializer.java:54)
>> at
>> io.trino.plugin.iceberg.IcebergQueryRunner$Builder.lambda$build$3(IcebergQueryRunner.java:178)
>> at java.base/java.util.Optional.ifPresent(Optional.java:178)
>> at
>> io.trino.plugin.iceberg.IcebergQueryRunner$Builder.build(IcebergQueryRunner.java:178)
>> at
>> io.trino.plugin.iceberg.catalog.rest.TestIcebergS3TablesConnectorSmokeTest.createQueryRunner(TestIcebergS3TablesConnectorSmokeTest.java:83)
>> at
>> io.trino.testing.AbstractTestQueryFramework.init(AbstractTestQueryFramework.java:119)
>> at java.base/java.lang.reflect.Method.invoke(Method.java:580)
>> at
>> java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
>> at
>> java.base/java.util.concurrent.ForkJoinPool$WorkQueue.tryRemoveAndExec(ForkJoinPool.java:1501)
>> at
>> java.base/java.util.concurrent.ForkJoinPool.helpJoin(ForkJoinPool.java:2274)
>> at
>> java.base/java.util.concurrent.ForkJoinTask.awaitDone(ForkJoinTask.java:495)
>> at java.base/java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:662)
>> at
>> java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
>> at
>> java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1460)
>> at
>> java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2036)
>> at
>> java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:189)
>> Suppressed: java.lang.Exception: SQL: CREATE SCHEMA IF NOT EXISTS "tpch"
>> at
>> io.trino.testing.DistributedQueryRunner.executeInternal(DistributedQueryRunner.java:572)
>> ... 18 more
>> Caused by: java.lang.ClassCastException: class
>> org.apache.iceberg.aws.RESTSigV4AuthSession cannot be cast to class
>> org.apache.iceberg.rest.auth.OAuth2Util$AuthSession
>> (org.apache.iceberg.aws.RESTSigV4AuthSession and
>> org.apache.iceberg.rest.auth.OAuth2Util$AuthSession are in unnamed module
>> of loader 'app')
>> at
>> org.apache.iceberg.rest.auth.OAuth2Manager.contextualSession(OAuth2Manager.java:142)
>> at
>> org.apache.iceberg.rest.auth.OAuth2Manager.contextualSession(OAuth2Manager.java:40)
>> at
>> org.apache.iceberg.aws.RESTSigV4AuthManager.contextualSession(RESTSigV4AuthManager.java:68)
>> at
>> org.apache.iceberg.rest.RESTSessionCatalog.loadNamespaceMetadata(RESTSessionCatalog.java:608)
>> at
>> org.apache.iceberg.catalog.SessionCatalog.namespaceExists(SessionCatalog.java:358)
>> at
>> org.apache.iceberg.rest.RESTSessionCatalog.namespaceExists(RESTSessionCatalog.java:595)
>> at
>> io.trino.plugin.iceberg.catalog.rest.TrinoRestCatalog.namespaceExists(TrinoRestCatalog.java:162)
>> at
>> io.trino.plugin.iceberg.IcebergMetadata.schemaExists(IcebergMetadata.java:512)
>> at
>> io.trino.plugin.base.classloader.ClassLoaderSafeConnectorMetadata.schemaExists(ClassLoaderSafeConnectorMetadata.java:193)
>> at
>> io.trino.tracing.TracingConnectorMetadata.schemaExists(TracingConnectorMetadata.java:125)
>> at
>> io.trino.metadata.MetadataManager.lambda$schemaExists$1(MetadataManager.java:248)
>> at java.base/java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
>> at
>> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:215)
>> at
>> java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:1034)
>> at
>> java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:147)
>> at
>> java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:588)
>> at
>> java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:574)
>> at
>> java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:560)
>> at
>> java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
>> at
>> java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
>> at
>> java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265)
>> at
>> java.base/java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:672)
>> at
>> io.trino.metadata.MetadataManager.schemaExists(MetadataManager.java:248)
>> at io.trino.tracing.TracingMetadata.schemaExists(TracingMetadata.java:165)
>> at
>> io.trino.execution.CreateSchemaTask.internalExecute(CreateSchemaTask.java:119)
>> at io.trino.execution.CreateSchemaTask.execute(CreateSchemaTask.java:82)
>> at io.trino.execution.CreateSchemaTask.execute(CreateSchemaTask.java:54)
>> at
>> io.trino.execution.DataDefinitionExecution.start(DataDefinitionExecution.java:152)
>> at
>> io.trino.execution.SqlQueryManager.createQuery(SqlQueryManager.java:272)
>> at
>> io.trino.dispatcher.LocalDispatchQuery.startExecution(LocalDispatchQuery.java:150)
>> at
>> io.trino.dispatcher.LocalDispatchQuery.lambda$waitForMinimumWorkers$2(LocalDispatchQuery.java:134)
>> at
>> io.airlift.concurrent.MoreFutures.lambda$addSuccessCallback$12(MoreFutures.java:570)
>> at io.airlift.concurrent.MoreFutures$3.onSuccess(MoreFutures.java:545)
>> at
>> com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1139)
>> at io.trino.$gen.Trino_testversion____20250320_014939_2038.run(Unknown
>> Source)
>> at
>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
>> at
>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
>> at java.base/java.lang.Thread.run(Thread.java:1575)
>>
>> BR,
>> Yuya
>>
>> On Wed, Mar 19, 2025 at 12:38 AM Manu Zhang <owenzhang1...@gmail.com>
>> wrote:
>>
>>> Hi Ajantha,
>>>
>>> Thanks for driving the release. Can we include
>>> https://github.com/apache/iceberg/pull/12120?
>>>
>>> On Tue, Mar 18, 2025 at 3:18 AM Steve Loughran
>>> <ste...@cloudera.com.invalid> wrote:
>>>
>>>>
>>>> Can I get this reviewed and merged; gives all hadoop filesystems with
>>>> bulk delete calls the ability to issue bulk deletes up to their page sizes;
>>>> off by default. Tested all the way through iceberg to AWS S3 london.
>>>>
>>>> https://github.com/apache/iceberg/pull/10233
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, 17 Mar 2025 at 12:32, Yuya Ebihara <
>>>> yuya.ebih...@starburstdata.com> wrote:
>>>>
>>>>> Hi, can we include https://github.com/apache/iceberg/pull/12264 to
>>>>> fix the S3-compatible storage issue?
>>>>> We downgraded the problematic library in
>>>>> https://github.com/apache/iceberg/pull/12339, but the issue is still
>>>>> present in the main branch.
>>>>>
>>>>
>>>> I'd go with downgrading the AWS SDK to 2.29. x and then get on the
>>>> relevant AWS SDK discussion to express your concerns:
>>>> https://github.com/aws/aws-sdk-java-v2/discussions/5802
>>>>
>>>> The problem here is that there's such a broad set of implementations of
>>>> the S3 API that it'll take testing to see how even the suggestions from the
>>>> SDK team work everywhere -and we now have explicit confirmation that the
>>>> SDK team leave all such testing to downstream users.
>>>>
>>>>
>>>>
>>>> *The AWS SDKs and CLI are designed for usage with official AWS
>>>> services.We may introduce and enable new features by default, such as these
>>>> new default integrity protections,prior to them being supported or
>>>> otherwise handled by third-party service implementations.*
>>>>
>>>> I think ASF projects need to make clear how dangerous this is -that
>>>> projects will end up shipping releases which don't work, and the "set an
>>>> env var or a system property" workarounds are not enough.
>>>>
>>>>
>>>>
>>>>
>>>>>
>>>>> On Mon, Mar 17, 2025 at 8:47 PM Ajantha Bhat <ajanthab...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> We decided to have a fast follow up on the things that missed release
>>>>>> train of 1.8.0 during community sync.
>>>>>>
>>>>>> More details here:
>>>>>> https://lists.apache.org/thread/wvz5sd7pmh5ww1yqhsxpt1kwf993276j
>>>>>>
>>>>>> On Mon, Mar 17, 2025 at 4:53 PM Russell Spitzer <
>>>>>> russell.spit...@gmail.com> wrote:
>>>>>>
>>>>>>> Can you please rehash the plan? I thought we just did a release last
>>>>>>> month and were aiming for a three month schedule. I may have missed
>>>>>>> something
>>>>>>>
>>>>>>> On Mon, Mar 17, 2025 at 6:00 AM Ajantha Bhat <ajanthab...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hey everyone,
>>>>>>>>
>>>>>>>> Following the plan from the 1.8.0 release, I'll be handling the
>>>>>>>> 1.9.0 release. We have several major updates ready:
>>>>>>>>
>>>>>>>>    - *Partition stats APIs:* All core APIs for partition
>>>>>>>>    statistics have been merged, unblocking engines like Dremio, Trino, 
>>>>>>>> and
>>>>>>>>    Hive that were waiting for this feature.
>>>>>>>>    - *REST catalog authentication:* The refactoring PR for the
>>>>>>>>    REST catalog authentication manager has been merged, improving
>>>>>>>>    authentication support.
>>>>>>>>    - *Spark 3.3 support removed:* We've officially dropped support
>>>>>>>>    for Spark 3.3.
>>>>>>>>    - *InternalData support in the core module:* The core module
>>>>>>>>    now supports InternalData, leveraging the internal Parquet and Avro 
>>>>>>>> readers
>>>>>>>>    added in the previous release. This allows metadata to be written in
>>>>>>>>    Parquet.
>>>>>>>>    - *Bug fixes:* Many important bug fixes have been merged.
>>>>>>>>
>>>>>>>> A 1.9.0 milestone has been created with additional "good-to-have"
>>>>>>>> issues:
>>>>>>>> https://github.com/apache/iceberg/milestone/53
>>>>>>>>
>>>>>>>> If there's anything urgent that needs to be included for this
>>>>>>>> release, please let me know or reply to this thread.
>>>>>>>> I'm aiming to start the release cut by the end of this week.
>>>>>>>>
>>>>>>>>
>>>>>>>> - Ajantha
>>>>>>>>
>>>>>>>

Reply via email to