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
>> 

Reply via email to