My vote is: +1 (binding)

- Verified GPG signature - OK
- Verified SHA512 - OK
- Diffed source release and git repository - OK
- Checked release notes on tag (https://github.com/apache/calcite/blob/calcite-1.37.0-rc4/site/_docs/history.md) - OK
- Checked year and versions in NOTICE, README and HOWTO - OK
- Ran tests (gradle check) - OK
- Spot checked Nexus artifacts - OK

Environments:
Eclipse-temurin:8 docker container in WSL2 (Ubuntu 22.04.4) on Windows 11 23h2

Eclipse-temurin:19 docker container in WSL2 (Ubuntu 22.04.4) on Windows 11 23h2

$ docker version
Client:
 Cloud integration: v1.0.35+desktop.13
 Version:           26.0.0
 API version:       1.45
 Go version:        go1.21.8
 Git commit:        2ae903e
 Built:             Wed Mar 20 15:16:45 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Desktop
 Engine:
  Version:          26.0.0
  API version:      1.45 (minimum version 1.24)
  Go version:       go1.21.8
  Git commit:       8b79278
  Built:            Wed Mar 20 15:18:01 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.28
  GitCommit:        ae07eda36dd25f8a1b98dfbf587313b99c0190bb
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e94
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

$ gradle -v

------------------------------------------------------------
Gradle 7.6.1
------------------------------------------------------------

Build time:   2023-02-24 13:54:42 UTC
Revision:     3905fe8ac072bbd925c70ddbddddf4463341f4b4

Kotlin:       1.7.10
Groovy:       3.0.13
Ant:          Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM:          19.0.2 (Eclipse Adoptium 19.0.2+7)
OS:           Linux 5.15.146.1-microsoft-standard-WSL2 amd64

$ java -version
openjdk version "1.8.0_402"
OpenJDK Runtime Environment (Temurin)(build 1.8.0_402-b06)
OpenJDK 64-Bit Server VM (Temurin)(build 25.402-b06, mixed mode)

$ java -version
openjdk version "19.0.2" 2023-01-17
OpenJDK Runtime Environment Temurin-19.0.2+7 (build 19.0.2+7)
OpenJDK 64-Bit Server VM Temurin-19.0.2+7 (build 19.0.2+7, mixed mode, sharing)

Francis

On 30/04/2024 6:35 pm, Stamatis Zampetakis wrote:
Ubuntu 20.04.6 LTS, jdk1.8.0_261, Gradle wrapper, Gradle 7.6.1

  * Checked signatures and checksums OK
  * Checked diff between repo and artifacts OK
  * Checked README, NOTICE, LICENSE OK
  * All source files have ASF headers OK ( grep -RiL "Licensed to the
Apache Software Foundation")
  * No unexpected binary files OK (find . -type f -exec file {} \; |
grep -v text)
  * Checked structure of staged maven repo for calcite-core [1] OK
  * Checked LICENSE, NOTICE, signature, and checksum for
calcite-core-1.37.0.jar from staged maven repo [1] OK
  * Built from git tag and run tests (./gradlew build) OK
  * Built from source artifacts and run tests (gradle build) OK

+1 (binding)

For the ASM problem, I would suggest opening a JIRA ticket and
continuing the discussion there. I found the previous discussion [2]
but not a ticket for this. We should try to keep vote threads as clean
as possible and keep technical exchanges on separate threads/tickets.
The main deliverable of this vote is the source package distribution
so I don't consider this a blocker for the release especially since
this has popped up before and was left untreated.

Best,
Stamatis

[1] 
https://repository.apache.org/content/repositories/orgapachecalcite-1230/org/apache/calcite/calcite-core/1.37.0/
[2] https://lists.apache.org/thread/o736wz4qnr4l285bj5gv073cy0qll9t0

On Tue, Apr 30, 2024 at 9:50 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