Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-6590

Use reflection to handle Java SecurityManager deprecation in Avatica

    XMLWordPrintableJSON

Details

    • Bug
    • Status: In Progress
    • Major
    • Resolution: Unresolved
    • None
    • 1.26.0
    • None

    Description

      Remove use of Java SecurityManager in Avatica.

      Running Avatica on JDK 23 (or JRE 23) we get the following runtime errors:

      Caused by: java.lang.UnsupportedOperationException: getSubject is supported only if a security manager is allowed at java.base/javax.security.auth.Subject.getSubject(Subject.java:347) at org.apache.calcite.avatica.server.SubjectPreservingPrivilegedThreadFactory.newThread(SubjectPreservingPrivilegedThreadFactory.java:43) 

      We were warned - the getSubject method has been deprecated since JDK 18. The deprecation did not cause a build failure, due to CALCITE-5136.

      HADOOP-19212 is an issue with the same underlying cause.

      The message "getSubject is supported only if a security manager is allowed" implies that another solution would be to enable a security manager (including during tests, and when Avatica is used in Calcite's tests). Should we consider that? If so, please change the case summary.

      Attachments

        Issue Links

          Activity

            People

              stoty Istvan Toth
              julianhyde Julian Hyde
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: