Uploaded image for project: 'MariaDB Connector/J'
  1. MariaDB Connector/J
  2. CONJ-1370

Remove the JNA dependency, use JDK unix domain socket support

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • None
    • 4.0.0
    • performance
    • None

    Description

      Since CONJ-1354 replaced waffle-jna with the JDK native GSS-API bridge, JNA (net.java.dev.jna:jna and jna-platform, both optional) was used only by the socket layer:

      • UnixDomainSocket bound libc socket / connect / recv / send / close through Native.register("c") to implement the localSocket option.
      • NamedPipeSocket called Kernel32.WaitNamedPipe when a Windows pipe was busy, with a sleep-and-retry fallback already in place for when JNA was absent.
      • SocketUtility called Platform.getOSType() only to detect JNA presence.

      Java 16 provides unix domain sockets natively through SocketChannel.open(StandardProtocolFamily.UNIX) and UnixDomainSocketAddress, so no native access library is needed.

      Attachments

        Issue Links

          Activity

            People

              diego dupin Diego Dupin
              diego dupin Diego Dupin
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.