Thanks Sergey for preparing this new RC. - Release notes: ok (minor comment left in the PR) - Checksum: ok - Signature: ok - Diff source release and git repository: ok - Build + tests (from both RC commit and source artifacts): ok (also confirmed in a Windows env that the ArrowAdapter test issue CALCITE-6390 is fixed) - Calcite-based application test suite: ok
+0 (binding) I would prefer to have the ASM issue fixed or at least workarounded in 1.37, but I understand this is not a new problem and strictly speaking it is not a Calcite source issue; let's try to find a clean solution for the next release 1.38 via CALCITE-6393. On Wed, May 1, 2024 at 12:16 AM Julian Hyde <jhyde.apa...@gmail.com> wrote: > It seems that Sergey has logged > https://issues.apache.org/jira/browse/CALCITE-6393 for this. Please add > further discussion to that case rather than to this vote thread. > > > > > On Apr 30, 2024, at 12:44 AM, Ruben Q L <rube...@gmail.com> wrote: > > > > Thanks Guillaume for checking this! > > When I looked at this issue on 1.36, I had the impression that assertions > > might have a role to play in the error, but I could not confirm this > > hypothesis. > > IMO this smells like a JDK bug (or at least it looks like other resolved > > issues); note that it seems we had some similar problems in the past with > > older Java8 versions [1]. > > > > Independently of the root cause, would it unblock the release process if > we > > just remove the problematic asserts, or if we substitute them with an > > equivalent `if (...) throw new IllegalStateException("...");` ? > > > > Best, > > Ruben > > > > [1] > > > https://github.com/apache/calcite/blob/1506857f404037b63dfd8a11880393b767bd1544/build.gradle.kts#L98 > > > > > > > > On Mon, Apr 29, 2024 at 11:26 PM Sergey Nuyanzin <snuyan...@gmail.com> > > wrote: > > > >> Hi Guilluame, > >> > >> I played a bit more and I realised that if from commit above I just > remove > >> one line with assert (assert map != null) > >> then ArrayIndexOutOfBoundsException disappears > >> > >> same for current main branch, if I remove all lines from SqlFunctions > with > >> assert (now there are 3 such lines) then > >> ArrayIndexOutOfBoundsException disappears > >> > >> Thus, it does not look like a Calcite issue, more like a problem on ASM > >> side > >> please correct me if I'm wrong > >> > >> On Mon, Apr 29, 2024 at 10:33 PM Sergey Nuyanzin <snuyan...@gmail.com> > >> wrote: > >> > >>> i follow the procedure described here > >>> https://calcite.apache.org/docs/howto.html#making-a-release-candidate > >>> started > >>> btw I played a bit with git bisect and it shows that the issue > >>> > >>> java.lang.ArrayIndexOutOfBoundsException: Index 65536 out of bounds > >> for length 297 at > >> org.objectweb.asm.ClassReader.readLabel(ClassReader.java:2695) at > >> org.objectweb.asm.ClassReader.createLabel(ClassReader.java:2711) > >>> > >>> started appearing after this commit > >>> > >>> > >> > https://github.com/apache/calcite/commit/bcf6bd8577b25c563b1c597c70704594a18ca1a3 > >>> > >>> On Mon, Apr 29, 2024 at 10:01 PM Guillaume Masse > >>> <masse.guilla...@narrative.io.invalid> wrote: > >>> > >>>> Hi Sergey, > >>>> > >>>> thanks for trying that update > >>>> > >>>> I confirm I have the same issue with your release at > >>>> > >>>> > >> > https://repository.apache.org/content/repositories/orgapachecalcite-1231/org/apache/calcite/ > >>>> > >>>> > >>>> > >> > https://github.com/MasseGuillaume/asm-remapper-bug/commit/852e4cd246d278db8acf5e997a54619bc4f85fc7 > >>>> > >>>> This rules out one of my hypothesis on the java build version. > >>>> > >>>> Can you point me to the release procedure you are using? I saw > >>>> https://calcite.apache.org/develop/#contributing is there more > precise > >>>> steps? > >>>> > >>>> > >>>> > >>>> On Mon, Apr 29, 2024 at 3:27 PM Sergey Nuyanzin <snuyan...@gmail.com> > >>>> wrote: > >>>> > >>>>> I repeated same procedure with jdk1.8u412 > >>>>> here you can find the jars > >>>>> > >>>>> > >>>> > >> > https://repository.apache.org/content/repositories/orgapachecalcite-1231/org/apache/calcite/ > >>>>> it looks like asm-remapper gives the same result... > >>>>> > >>>>> On Mon, Apr 29, 2024 at 8:41 PM Guillaume Masse > >>>>> <masse.guilla...@narrative.io.invalid> wrote: > >>>>> > >>>>>> If you take a look at > >>>>>> > >>>>>> > >>>>>> > >>>>> > >>>> > >> > https://www.openlogic.com/openjdk-downloads?field_java_parent_version_target_id=416&field_operating_system_target_id=426&field_architecture_target_id=391&field_java_package_target_id=All > >>>>>> > >>>>>> The most recent release is 8u412-b08 > >>>>>> > >>>>>> If it follows more or less the openjdk schedule: > >>>>>> > >>>>>> https://wiki.openjdk.org/display/jdk8u/Main > >>>>>> > >>>>>> *Most recent and past release details:* > >>>>>> > >>>>>> - 8u412-b08 (GA), April 16th 2024 [Release < > >>>>> https://bit.ly/openjdk8u412 > >>>>>>> ] > >>>>>> [Tag <https://github.com/openjdk/jdk8u/releases/tag/jdk8u412-ga > >>> ] > >>>> [ > >>>>>> Binaries > >>>>>> < > >>>>>> > >>>> > https://github.com/adoptium/temurin8-binaries/releases/tag/jdk8u412-b08 > >>> > >>>>>> ] > >>>>>> - 8u402-b06 (GA), January 16th 2024 [Release > >>>>>> <https://bit.ly/openjdk8u402>] [Tag > >>>>>> <https://github.com/openjdk/jdk8u/releases/tag/jdk8u402-ga>] > >>>>> [Binaries > >>>>>> < > >>>>>> > >>>> > https://github.com/adoptium/temurin8-binaries/releases/tag/jdk8u402-b06 > >>> > >>>>>> ] > >>>>>> - 8u392-b08 (GA), October 17th 2023 [Release > >>>>>> <https://bit.ly/openjdk8u392>] [Tag > >>>>>> <https://github.com/openjdk/jdk8u/releases/tag/jdk8u392-ga>] > >>>>> [Binaries > >>>>>> < > >>>>>> > >>>> > https://github.com/adoptium/temurin8-binaries/releases/tag/jdk8u392-b08 > >>> > >>>>>> ] > >>>>>> - 8u382-b05 (GA), July 18th 2023 [Release < > >>>>> https://bit.ly/openjdk8u382 > >>>>>>> ] > >>>>>> [Tag <https://github.com/openjdk/jdk8u/releases/tag/jdk8u382-ga > >>> ] > >>>> [ > >>>>>> Binaries > >>>>>> < > >>>>>> > >>>> > https://github.com/adoptium/temurin8-binaries/releases/tag/jdk8u382-b05 > >>> > >>>>>> ] > >>>>>> - 8u372-b07 (GA), April 18th 2023 [Release < > >>>>> https://bit.ly/openjdk8u372 > >>>>>>> ] > >>>>>> [Tag <https://github.com/openjdk/jdk8u/releases/tag/jdk8u372-ga > >>> ] > >>>> [ > >>>>>> Binaries > >>>>>> < > >>>>>> > >>>> > https://github.com/adoptium/temurin8-binaries/releases/tag/jdk8u372-b07 > >>> > >>>>>> ] > >>>>>> > >>>>>> > >>>>>> This means your java version is from April 2023. Can you try to > >> update > >>>>> your > >>>>>> system to the latest build 8u412-b08 and publish the jarfile > >>>> somewhere I > >>>>>> can test ? > >>>>>> > >>>>>> > >>>>>> On Mon, Apr 29, 2024 at 2:25 PM Sergey Nuyanzin < > >> snuyan...@gmail.com> > >>>>>> wrote: > >>>>>> > >>>>>>> Thanks for testing Guillaume > >>>>>>> > >>>>>>>> Sergey can you give me all the details about your build > >> environment > >>>>> so I > >>>>>>>> can reproduce that bytecode? > >>>>>>>> OS / java --version > >>>>>>> yep, sure > >>>>>>> Ubuntu 22.04.4 LTS, > >>>>>>> 1.8.0_372-372 (OpenLogic-OpenJDK 25.372-b07) > >>>>>>> > >>>>>>> I will also try to look at it with my set up and the info you've > >>>>>> provided > >>>>>>> > >>>>>>> On Mon, Apr 29, 2024 at 8:03 PM Guillaume Masse > >>>>>>> <masse.guilla...@narrative.io.invalid> wrote: > >>>>>>> > >>>>>>>> -1 (not binding) > >>>>>>>> > >>>>>>>> The bytecode of classfile > >>>>> org/apache/calcite/runtime/SqlFunctions.class > >>>>>>> is > >>>>>>>> invalid (and only this classfile) > >>>>>>>> > >>>>>>>> I tested all class files from the following artifacts: > >>>>>>>> calcite-core-1.37.0.jar > >>>>>>>> calcite-linq4j-1.37.0.jar > >>>>>>>> avatica-core-1.25.0.jar > >>>>>>>> avatica-metrics-1.25.0.jar > >>>>>>>> > >>>>>>>> This will prevent bytecode tools like asm (https://asm.ow2.io/) > >>>> from > >>>>>>>> transforming calcite bytecode (for example shading a > >> dependency). > >>>>>>>> > >>>>>>>> See > >>>>>>>> https://gitlab.ow2.org/asm/asm/-/issues/318008 > >>>>>>>> > >> https://lists.apache.org/thread/nrt4ysoc14p20sq23z744jyfqh1bznyh > >>>>>>>> > >>>>>>>> To reproduce > >>>>>>>> https://github.com/MasseGuillaume/asm-remapper-bug > >>>>>>>> > >>>>>>>> Sergey can you give me all the details about your build > >>>> environment > >>>>> so > >>>>>> I > >>>>>>>> can reproduce that bytecode? > >>>>>>>> OS / java --version > >>>>>>>> > >>>>>>>> I do not have the root cause of the issue. > >>>>>>>> I suspect it's related to import > >>>>>>>> org.checkerframework.checker.nullness.qual.Nullable > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> On Mon, Apr 29, 2024 at 10:56 AM Sergey Nuyanzin < > >>>>> snuyan...@gmail.com> > >>>>>>>> wrote: > >>>>>>>> > >>>>>>>>> Hi all, > >>>>>>>>> > >>>>>>>>> The issue CALCITE-6390 with failing of Arrow Adapter tests on > >>>>> Windows > >>>>>>>> while > >>>>>>>>> building from source is fixed. > >>>>>>>>> Thanks a lot to Caican Can for highlighting the issue > >>>>>>>>> Stamatis for quick PR > >>>>>>>>> and Ruben and Alessandro for the review! > >>>>>>>>> > >>>>>>>>> I have created a build for Apache Calcite 1.37.0, release > >>>>>>>>> candidate 4. > >>>>>>>>> > >>>>>>>>> Thanks to everyone who has contributed to this release. > >>>>>>>>> > >>>>>>>>> You can read the release notes here: > >>>>>>>>> > >>>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>> > >>>>> > >>>> > >> > https://github.com/apache/calcite/blob/calcite-1.37.0-rc4/site/_docs/history.md > >>>>>>>>> > >>>>>>>>> The commit to be voted upon: > >>>>>>>>> > >>>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>> > >>>>> > >>>> > >> > https://gitbox.apache.org/repos/asf?p=calcite.git;a=commit;h=044db3d72ee53c1a82ce68b0c2a9b4f0bed81f18 > >>>>>>>>> > >>>>>>>>> Its hash is 044db3d72ee53c1a82ce68b0c2a9b4f0bed81f18 > >>>>>>>>> > >>>>>>>>> Tag: > >>>>>>>>> https://github.com/apache/calcite/tree/calcite-1.37.0-rc4 > >>>>>>>>> > >>>>>>>>> The artifacts to be voted on are located here: > >>>>>>>>> > >>>>>>> > >>>>> > >>>> > >> > https://dist.apache.org/repos/dist/dev/calcite/apache-calcite-1.37.0-rc4 > >>>>>>>>> (revision 68857) > >>>>>>>>> > >>>>>>>>> The hashes of the artifacts are as follows: > >>>>>>>>> > >>>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>> > >>>>> > >>>> > >> > a6ae7ea1ebbab3e5b723122c9517412d74b6bccba9fb41d360f7c2262ed7f26e5a4cc861a711d4813d27d72a0ffd086ae3a9175abc3c874b079137c84d13f83a > >>>>>>>>> *apache-calcite-1.37.0-src.tar.gz > >>>>>>>>> > >>>>>>>>> A staged Maven repository is available for review at: > >>>>>>>>> > >>>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>> > >>>>> > >>>> > >> > https://repository.apache.org/content/repositories/orgapachecalcite-1230/org/apache/calcite/ > >>>>>>>>> > >>>>>>>>> Release artifacts are signed with the following key: > >>>>>>>>> https://people.apache.org/keys/committer/snuyanzin.asc > >>>>>>>>> https://www.apache.org/dist/calcite/KEYS > >>>>>>>>> > >>>>>>>>> To create the jars and test Apache Calcite: "gradle build" > >>>>>>>>> (requires an appropriate Gradle/JDK installation) > >>>>>>>>> > >>>>>>>>> Please vote on releasing this package as Apache Calcite > >> 1.37.0. > >>>>>>>>> > >>>>>>>>> The vote is open for the next 72 hours and passes if a > >> majority > >>>> of > >>>>> at > >>>>>>>>> least three +1 PMC votes are cast. > >>>>>>>>> > >>>>>>>>> [ ] +1 Release this package as Apache Calcite 1.37.0 > >>>>>>>>> [ ] 0 I don't feel strongly about it, but I'm okay with the > >>>>> release > >>>>>>>>> [ ] -1 Do not release this package because... > >>>>>>>>> > >>>>>>>>> Here is my vote: > >>>>>>>>> > >>>>>>>>> +1 (binding) > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> Best regards, > >>>>>>>>> Sergey > >>>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> -- > >>>>>>> Best regards, > >>>>>>> Sergey > >>>>>>> > >>>>>> > >>>>> > >>>>> > >>>>> -- > >>>>> Best regards, > >>>>> Sergey > >>>>> > >>>> > >>> > >>> > >>> -- > >>> Best regards, > >>> Sergey > >>> > >> > >> > >> -- > >> Best regards, > >> Sergey > >> > >