Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-2570

Broken JDBC-All Jar packaging can cause missing XML classes

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.0.0
    • Tools, Build & Test
    • None

    Description

      [Transcribed from other medium:]

      • - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

      When starting Spotfire Server using JDBC driver an error see attachment (xerces-error) is produced.
      This error is then resolved by adding the jars/3rdparty/xercesImpl-2.11.0.jar from the drillbit package to the classpath for the JDBC client driver.

      Then the following error is observed. See attachment (ElementTraversal).
      This requires to add jars/3rdparty/xml-apis-1.4.01.jar to the classpath from the drillbit package.

      • - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

      The issue is Tomcat and Spotfire Server does not show any errors and starts up fine without the Drill JDBC driver. Once the Drill driver is added the application server fails to start with the errors shown.

      Adding the 2 jars to the classpath then resolves the issue.

      I have not looked at all the JDBC driver classes, but it is important to note that the error occurs when the JDBC driver is added and resolved by adding 2 jars from the drillbit package.

      • - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

      > I do not see Drill classes in the stack trace. This seems to be a Tomcat configuration issue.

      I suspect another possibility: that the Drill JDBC-all Jar file contains a stray reference to the unfound class (SAXParserFactoryImpl) in some file in META-INF/services (left over from some package whose classes we either excluded or renamed (with "shading")

      Xxx, Yyy: Can you try this?:

      (Temporarily) removing the added XML Jar files from the class path to re-confirm the problem.
      Move the Drill JDBC-all Jar file to be last on the class path (and remove ).
      Report whether the symptoms change.

      Thanks.

      • - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

      Attachments

        1. xerces-error.rtf
          2 kB
          Daniel Barclay
        2. ElementTraversal.rtf
          6 kB
          Daniel Barclay
        3. DRILL-2570.1.patch.txt
          0.8 kB
          Patrick Wong

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            dsbos Daniel Barclay
            dsbos Daniel Barclay
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment