Uploaded image for project: 'Sqoop'
  1. Sqoop
  2. SQOOP-2349

Transaction isolation level for metadata queries should be mutable

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.4.6
    • Fix Version/s: 1.4.7
    • Component/s: None
    • Labels:
      None

      Description

      Databases like PDW have don't accept READ COMMITTED isolation level:

      com.microsoft.sqlserver.jdbc.SQLServerException: Setting IsolationLevel to ReadCommitted is not supported.
              at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:197)
              at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:246)
              at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:83)
              at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:39)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection$1ConnectionCommand.doExecute(SQLServerConnection.java:1441)
              at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4575)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1400)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectionCommand(SQLServerConnection.java:1446)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:1907)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:1893)
              at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4575)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1400)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1045)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
              at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
              at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
              at java.sql.DriverManager.getConnection(DriverManager.java:571)
              at java.sql.DriverManager.getConnection(DriverManager.java:215)
              at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:880)
              at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)
              at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:739)
              at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:762)
              at org.apache.sqoop.manager.SqlManager.getColumnInfoForRawQuery(SqlManager.java:270)
              at org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:241)
              at org.apache.sqoop.manager.SqlManager.getColumnTypesForQuery(SqlManager.java:234)
              at org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:304)
              at org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1833)
              at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1645)
              at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:96)
              at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)
              at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
              at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
              at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
              at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
              at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)
              at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)
              at org.apache.sqoop.Sqoop.main(Sqoop.java:236)
      15/05/06 10:07:34 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter
              at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1651)
              at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:96)
              at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)
              at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
              at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
              at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
              at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
              at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)
              at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)
              at org.apache.sqoop.Sqoop.main(Sqoop.java:236)
      

      Let's make it so that the isolation for metadata queries doesn't set the transaction isolation level or make it mutable.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                maugli Attila Szabo
                Reporter:
                abec Abraham Elmahrek
              • Votes:
                1 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: