Thanks everyone for participating. The vote result is:
+1: 6 (binding), 8 (non-binding) +0: 0 -1: 0 Therefore, the release candidate is passed. On Thu, Feb 27, 2025 at 10:53 PM Steve Zhang <hongyue_zh...@apple.com.invalid> wrote: > +1 (non-binding) > > - Checked signature/SHA512 > - Ran RAT license check > - Ran tests on JDK17 > > Thanks, > Steve Zhang > > > > On Feb 27, 2025, at 11:45 AM, Daniel Weeks <dwe...@apache.org> wrote: > > +1 (binding) > > Verified sigs/sums/license/build/test (Java 17) > > -Dan > > On Thu, Feb 27, 2025 at 11:30 AM Aihua Xu <aihu...@gmail.com> wrote: > >> Thanks Alex. >> >> On Thu, Feb 27, 2025 at 10:31 AM Alex Dutra <alex.du...@dremio.com.invalid> >> wrote: >> >>> Hi Aihua, >>> >>> I was indeed suspecting that you had a custom RESTClient :-) Thanks for >>> digging further and clarifying! Let me know if you need my help in adapting >>> your code. >>> >>> And with that: +1 (non-binding) from me as well. >>> >>> Thanks, >>> >>> Alex >>> >>> On Thu, Feb 27, 2025 at 6:45 PM Aihua Xu <aihu...@gmail.com> wrote: >>> >>>> Hi Alex, >>>> >>>> I checked our code further. We have an internal implementation >>>> for RESTClient which needs an update after your change to place the token >>>> in DefaultAuthSession and not pass through initHeaders anymore. The >>>> existing code assumes the token coming from initHeaders and we need to make >>>> the change to get the token from the headers of DefaultAuthSession. >>>> >>>> With that, +1 (non-binding) >>>> >>>> Thanks, >>>> Aihua >>>> >>>> >>>> >>>> On Thu, Feb 27, 2025 at 9:26 AM Alex Dutra >>>> <alex.du...@dremio.com.invalid> wrote: >>>> >>>>> Hi Aihua Xu, >>>>> >>>>> I reviewed your PR but without further details I do not agree with >>>>> your change, and I am unable to reproduce the issue. Besides, we have unit >>>>> tests that cover this extensively. >>>>> >>>>> Could you please provide a simple reproducer or a test case? >>>>> >>>>> Thanks! >>>>> >>>>> Alex >>>>> >>>>> On Thu, Feb 27, 2025 at 5:06 PM Aihua Xu <aihu...@gmail.com> wrote: >>>>> >>>>>> I'm running within our integration tests. I'm able to trace and find >>>>>> the breaking change: https://github.com/apache/iceberg/pull/11992. >>>>>> >>>>>> Seems we need to make the following changes to pass the token: >>>>>> https://github.com/apache/iceberg/pull/12415/files. Alex, can you >>>>>> help take a look at this? >>>>>> >>>>>> if (hasCredential) { >>>>>> authResponse = >>>>>> OAuth2Util.fetchToken( >>>>>> initClient, initHeaders, credential, scope, oauth2ServerUri, >>>>>> optionalOAuthParams); >>>>>> Map<String, String> authHeaders = >>>>>> RESTUtil.merge(initHeaders, >>>>>> OAuth2Util.authHeaders(authResponse.token())); >>>>>> config = fetchConfig(initClient, authHeaders, props); >>>>>> } else { >>>>>> authResponse = null; >>>>>> Map<String, String> authHeaders = >>>>>> RESTUtil.merge(initHeaders, OAuth2Util.authHeaders(initToken)); >>>>>> config = fetchConfig(initClient, authHeaders, props); >>>>>> } >>>>>> >>>>>> >>>>>> On Thu, Feb 27, 2025 at 12:46 AM Alex Dutra >>>>>> <alex.du...@dremio.com.invalid> wrote: >>>>>> >>>>>>> Hi Aihua, >>>>>>> >>>>>>> I just tested 1.8.1 with Polaris OSS and I am not seeing anything >>>>>>> different. Can you share your setup? >>>>>>> >>>>>>> Below is my Spark setup. >>>>>>> >>>>>>> Thanks, >>>>>>> >>>>>>> Alex >>>>>>> >>>>>>> ./gradlew run >>>>>>> >>>>>>> token=$(curl -s http://localhost:8181/api/catalog/v1/oauth/tokens \ >>>>>>> --user root:<secret> \ >>>>>>> -d grant_type=client_credentials \ >>>>>>> -d scope=PRINCIPAL_ROLE:ALL | sed -n >>>>>>> 's/.*"access_token":"\([^"]*\)".*/\1/p') >>>>>>> >>>>>>> curl -s -H "Authorization: Bearer ${token}" \ >>>>>>> -H 'Accept: application/json' \ >>>>>>> -H 'Content-Type: application/json' \ >>>>>>> http://localhost:8181/api/management/v1/catalogs \ >>>>>>> -d '{ >>>>>>> "catalog": { >>>>>>> "name": "polaris_demo", >>>>>>> "type": "INTERNAL", >>>>>>> "readOnly": false, >>>>>>> "properties": { >>>>>>> "default-base-location": "file:///tmp/polaris/" >>>>>>> }, >>>>>>> "storageConfigInfo": { >>>>>>> "storageType": "FILE", >>>>>>> "allowedLocations": [ >>>>>>> "file:///tmp" >>>>>>> ] >>>>>>> } >>>>>>> } >>>>>>> }' >>>>>>> >>>>>>> >>>>>>> spark-sql \ >>>>>>> --packages >>>>>>> org.apache.iceberg:iceberg-spark-runtime-3.5_2.12:1.8.1 \ >>>>>>> --conf >>>>>>> spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions >>>>>>> \ >>>>>>> --conf >>>>>>> spark.sql.catalog.polaris=org.apache.iceberg.spark.SparkCatalog \ >>>>>>> --conf >>>>>>> spark.sql.catalog.polaris.catalog-impl=org.apache.iceberg.rest.RESTCatalog >>>>>>> \ >>>>>>> --conf spark.sql.catalog.polaris.uri= >>>>>>> http://127.0.0.1:8181/api/catalog \ >>>>>>> --conf spark.sql.catalog.polaris.credential=root:<secret> \ >>>>>>> --conf spark.sql.catalog.polaris.scope=PRINCIPAL_ROLE:ALL \ >>>>>>> --conf spark.sql.catalog.polaris.warehouse=polaris_demo >>>>>>> >>>>>>> spark-sql (default)> create namespace polaris.foo; >>>>>>> 25/02/27 09:43:24 WARN RESTSessionCatalog: Iceberg REST client is >>>>>>> missing the OAuth2 server URI configuration and defaults to >>>>>>> http://127.0.0.1:8181/api/catalog/v1/oauth/tokens. This automatic >>>>>>> fallback will be removed in a future Iceberg release.It is recommended >>>>>>> to >>>>>>> configure the OAuth2 endpoint using the 'oauth2-server-uri' property to >>>>>>> be >>>>>>> prepared. This warning will disappear if the OAuth2 endpoint is >>>>>>> explicitly >>>>>>> configured. See https://github.com/apache/iceberg/issues/10537 >>>>>>> Time taken: 0.688 seconds >>>>>>> spark-sql (default)> >>>>>>> >>>>>>> >>>>>>> On Thu, Feb 27, 2025 at 12:22 AM Aihua Xu <aihu...@gmail.com> wrote: >>>>>>> >>>>>>>> I tested 1.8.1 RC with Snowflake build. I'm seeing the following >>>>>>>> (I'm not seeing that in 1.7.x). >>>>>>>> >>>>>>>> "exception": "java.io.IOException: *Authorization header is >>>>>>>> missing*\n\tat >>>>>>>> org.apache.polaris.service.dropwizard.auth.PolarisPrincipalAuthenticator.filter(PolarisPrincipalAuthenticator.java:43)\n\tat >>>>>>>> org.glassfish.jersey.server.ContainerFilteringStage.apply(ContainerFilteringStage.java:108)\n\tat >>>>>>>> org.glassfish.jersey.server.ContainerFilteringStage.apply(ContainerFilteringStage.java:44)\n\tat >>>>>>>> org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)\n\tat >>>>>>>> org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:248). >>>>>>>> >>>>>>>> Does anyone know which change could introduce this? >>>>>>>> >>>>>>>> On Wed, Feb 26, 2025 at 5:16 AM Péter Váry < >>>>>>>> peter.vary.apa...@gmail.com> wrote: >>>>>>>> >>>>>>>>> +1 >>>>>>>>> >>>>>>>>> checked the signatures, checksums >>>>>>>>> build and run some tests >>>>>>>>> >>>>>>>>> Amogh Jahagirdar <2am...@gmail.com> ezt írta (időpont: 2025. >>>>>>>>> febr. 26., Sze, 6:11): >>>>>>>>> >>>>>>>>>> +1 (binding) >>>>>>>>>> >>>>>>>>>> Verified signatures, checksum, RAT checks. >>>>>>>>>> Ran build and test with JDK17 >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Amogh Jahagirdar >>>>>>>>>> >>>>>>>>>> On Wed, Feb 26, 2025 at 2:30 AM Honah J. <hon...@apache.org> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> +1 (binding) >>>>>>>>>>> >>>>>>>>>>> - Checked signatures and checksum >>>>>>>>>>> - Checked license >>>>>>>>>>> - Full Build and Test >>>>>>>>>>> >>>>>>>>>>> Best regards, >>>>>>>>>>> Honah >>>>>>>>>>> >>>>>>>>>>> On Tue, Feb 25, 2025 at 10:52 AM Russell Spitzer < >>>>>>>>>>> russell.spit...@gmail.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> +1 >>>>>>>>>>>> Checked Sigs and Checksum >>>>>>>>>>>> Ran Rat >>>>>>>>>>>> Ran full build/test >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Tue, Feb 25, 2025 at 11:30 AM Driesprong, Fokko >>>>>>>>>>>> <fo...@driesprong.frl> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> +1 (binding) >>>>>>>>>>>>> >>>>>>>>>>>>> - Checked signatures and checksum >>>>>>>>>>>>> - Checked licenses >>>>>>>>>>>>> - Spotchecked NOTICE/LICENSE >>>>>>>>>>>>> >>>>>>>>>>>>> Kind regards, >>>>>>>>>>>>> Fokko >>>>>>>>>>>>> >>>>>>>>>>>>> Op di 25 feb 2025 om 16:56 schreef Kevin Liu < >>>>>>>>>>>>> kevinjq...@apache.org>: >>>>>>>>>>>>> >>>>>>>>>>>>>> +1 (non-binding) >>>>>>>>>>>>>> >>>>>>>>>>>>>> I followed "How to Verify a Release" >>>>>>>>>>>>>> <https://iceberg.apache.org/how-to-release/#how-to-verify-a-release> >>>>>>>>>>>>>> . >>>>>>>>>>>>>> Checked out artifact from SVN, >>>>>>>>>>>>>> ``` >>>>>>>>>>>>>> svn checkout >>>>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/iceberg/apache-iceberg-1.8.1-rc1/ >>>>>>>>>>>>>> . >>>>>>>>>>>>>> ``` >>>>>>>>>>>>>> >>>>>>>>>>>>>> Verified >>>>>>>>>>>>>> * Signature Good >>>>>>>>>>>>>> * Checksum Ok >>>>>>>>>>>>>> * RAT check passed. 1 unrelated error message >>>>>>>>>>>>>> ``` >>>>>>>>>>>>>> ERROR: Ignored 0 lines in your exclusion files as comments or >>>>>>>>>>>>>> empty lines. >>>>>>>>>>>>>> ``` >>>>>>>>>>>>>> * Build + test passed, running on Java 17.0.6 (openjdk 17.0.6 >>>>>>>>>>>>>> 2023-01-17 LTS) on M1 >>>>>>>>>>>>>> * Ran a few examples on Spark >>>>>>>>>>>>>> * Ran pyiceberg integration tests, >>>>>>>>>>>>>> https://github.com/kevinjqliu/iceberg-python/pull/11 >>>>>>>>>>>>>> >>>>>>>>>>>>>> I ran the tests both with and without the docker daemon. >>>>>>>>>>>>>> Without docker, a few tests failed in `iceberg-aws`, >>>>>>>>>>>>>> `iceberg-azure`, and >>>>>>>>>>>>>> `iceberg-kafka-connect`. There's already an issue to track this >>>>>>>>>>>>>> at >>>>>>>>>>>>>> https://github.com/apache/iceberg/issues/12236. >>>>>>>>>>>>>> I'm also continuing to see the flakey test for >>>>>>>>>>>>>> `iceberg-core`'s `testConcurrentFastAppends` test. I believe >>>>>>>>>>>>>> this is a >>>>>>>>>>>>>> local issue with my machine. >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks for running the release, Eduard! >>>>>>>>>>>>>> >>>>>>>>>>>>>> Best, >>>>>>>>>>>>>> Kevin Liu >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Tue, Feb 25, 2025 at 4:23 AM Jean-Baptiste Onofré < >>>>>>>>>>>>>> j...@nanthrax.net> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> +1 (non binding) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> - Hash and checksum are good >>>>>>>>>>>>>>> - LICENSE and NOTICE are OK in different distributed >>>>>>>>>>>>>>> artifacts (source >>>>>>>>>>>>>>> distribution, aws bundle, etc) >>>>>>>>>>>>>>> - ASF header present in all expected files >>>>>>>>>>>>>>> - No binary file found in the source distribution >>>>>>>>>>>>>>> - Did quick smoke tests >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thanks, >>>>>>>>>>>>>>> Regards >>>>>>>>>>>>>>> JB >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Mon, Feb 24, 2025 at 1:46 PM Eduard Tudenhoefner >>>>>>>>>>>>>>> <etudenhoef...@gmail.com> wrote: >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > Hi Everyone, >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > I propose that we release the following RC as the official >>>>>>>>>>>>>>> Apache Iceberg 1.8.1 release. >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > The commit ID is 9ce0fcf0af7becf25ad9fc996c3bad2afdcfd33d >>>>>>>>>>>>>>> > * This corresponds to the tag: apache-iceberg-1.8.1-rc1 >>>>>>>>>>>>>>> > * >>>>>>>>>>>>>>> https://github.com/apache/iceberg/commits/apache-iceberg-1.8.1-rc1 >>>>>>>>>>>>>>> > * >>>>>>>>>>>>>>> https://github.com/apache/iceberg/tree/9ce0fcf0af7becf25ad9fc996c3bad2afdcfd33d >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > The release tarball, signature, and checksums are here: >>>>>>>>>>>>>>> > * >>>>>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/iceberg/apache-iceberg-1.8.1-rc1 >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > You can find the KEYS file here: >>>>>>>>>>>>>>> > * https://downloads.apache.org/iceberg/KEYS >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > Convenience binary artifacts are staged on Nexus. The >>>>>>>>>>>>>>> Maven repository URL is: >>>>>>>>>>>>>>> > * >>>>>>>>>>>>>>> https://repository.apache.org/content/repositories/orgapacheiceberg-1184/ >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > Please download, verify, and test. >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > Please vote in the next 72 hours. >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > [ ] +1 Release this as Apache Iceberg 1.8.1 >>>>>>>>>>>>>>> > [ ] +0 >>>>>>>>>>>>>>> > [ ] -1 Do not release this because... >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > Only PMC members have binding votes, but other community >>>>>>>>>>>>>>> members are encouraged to cast >>>>>>>>>>>>>>> > non-binding votes. This vote will pass if there are 3 >>>>>>>>>>>>>>> binding +1 votes and more binding >>>>>>>>>>>>>>> > +1 votes than -1 votes. >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >