You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hadoop.apache.org by sam liu <sa...@gmail.com> on 2013/09/09 09:51:58 UTC

UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Hi,

With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed by
exception UnsupportedOperationException, however it works with
Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!

4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up the
staging area
file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
classloader: sun.misc.Launcher$AppClassLoader@3f363f36
4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
java.lang.UnsupportedOperationException: This is supposed to be overridden
by subclasses.
4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
exception running Sqoop: java.lang.RuntimeException:
java.lang.UnsupportedOperationException: This is supposed to be overridden
by subclasses.
4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
]]></system-out>
<system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
@3a5e3a5e,5,main]]: run()/openServerSocket():
java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
at java.net.ServerSocket.bind(ServerSocket.java:339)
at java.net.ServerSocket.<init>(ServerSocket.java:205)
at java.net.ServerSocket.<init>(ServerSocket.java:117)
at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
at org.hsqldb.Server.openServerSocket(Unknown Source)
at org.hsqldb.Server.run(Unknown Source)
at org.hsqldb.Server.access$000(Unknown Source)
at org.hsqldb.Server$ServerThread.run(Unknown Source)
Note:
/home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
java.lang.UnsupportedOperationException: This is supposed to be overridden
by subclasses.
at
com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
at
org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
at
org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
at
org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
at java.util.HashMap.hash(HashMap.java:132)
at java.util.HashMap.putImpl(HashMap.java:695)
at java.util.HashMap.put(HashMap.java:680)
at
org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
at
org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
at
org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
at
org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
at java.security.AccessController.doPrivileged(AccessController.java:310)
at javax.security.auth.Subject.doAs(Subject.java:573)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
at
org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
at
org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
at
org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
at
com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
at
com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:232)
at junit.framework.TestSuite.run(TestSuite.java:227)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
is supposed to be overridden by subclasses.
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
at
com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
at
com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:232)
at junit.framework.TestSuite.run(TestSuite.java:227)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
Caused by: java.lang.UnsupportedOperationException: This is supposed to be
overridden by subclasses.
at
com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
at
org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
at
org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
at
org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
at java.util.HashMap.hash(HashMap.java:132)
at java.util.HashMap.putImpl(HashMap.java:695)
at java.util.HashMap.put(HashMap.java:680)
at
org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
at
org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
at
org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
at
org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
at java.security.AccessController.doPrivileged(AccessController.java:310)
at javax.security.auth.Subject.doAs(Subject.java:573)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
at
org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
at
org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
at
org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
... 20 more
]]></system-err>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by Vinayakumar B <vi...@gmail.com>.
Yes. . Protobuf 2.5 jars wants every Protobuf code in its jvm to be
generated and compiled using 2.5. Its not supporting old compiled code.
Even though there will not be any compilation issues with 2.4 generated
code, exception will be thrown at runtime.

So upgrade all your code to 2.5 and generate code using 2.5 Protobuf.
.compile and run again.

Regards,
Vinayakumar B
On Sep 10, 2013 8:58 AM, "sam liu" <sa...@gmail.com> wrote:

> This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from
> 2.4.1, but the version of  protobuf  in my env is still 2.4.1, so the sqoop
> unit tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop
> unit tests passed.
>
>
> 2013/9/9 sam liu <sa...@gmail.com>
>
>> Hi,
>>
>> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed
>> by exception UnsupportedOperationException, however it works with
>> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>>
>> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
>> the staging area
>> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
>> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
>> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
>> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
>> exception running Sqoop: java.lang.RuntimeException:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
>> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
>> ]]></system-out>
>> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
>> @3a5e3a5e,5,main]]: run()/openServerSocket():
>> java.net.BindException: Address already in use
>> at java.net.PlainSocketImpl.socketBind(Native Method)
>> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
>> at java.net.ServerSocket.bind(ServerSocket.java:339)
>> at java.net.ServerSocket.<init>(ServerSocket.java:205)
>> at java.net.ServerSocket.<init>(ServerSocket.java:117)
>> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
>> at org.hsqldb.Server.openServerSocket(Unknown Source)
>> at org.hsqldb.Server.run(Unknown Source)
>> at org.hsqldb.Server.access$000(Unknown Source)
>> at org.hsqldb.Server$ServerThread.run(Unknown Source)
>> Note:
>> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
>> uses or overrides a deprecated API.
>> Note: Recompile with -Xlint:deprecation for details.
>> java.lang.UnsupportedOperationException: This is supposed to be
>> overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
>> is supposed to be overridden by subclasses.
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> Caused by: java.lang.UnsupportedOperationException: This is supposed to
>> be overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> ... 20 more
>> ]]></system-err>
>>
>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by Vinayakumar B <vi...@gmail.com>.
Yes. . Protobuf 2.5 jars wants every Protobuf code in its jvm to be
generated and compiled using 2.5. Its not supporting old compiled code.
Even though there will not be any compilation issues with 2.4 generated
code, exception will be thrown at runtime.

So upgrade all your code to 2.5 and generate code using 2.5 Protobuf.
.compile and run again.

Regards,
Vinayakumar B
On Sep 10, 2013 8:58 AM, "sam liu" <sa...@gmail.com> wrote:

> This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from
> 2.4.1, but the version of  protobuf  in my env is still 2.4.1, so the sqoop
> unit tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop
> unit tests passed.
>
>
> 2013/9/9 sam liu <sa...@gmail.com>
>
>> Hi,
>>
>> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed
>> by exception UnsupportedOperationException, however it works with
>> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>>
>> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
>> the staging area
>> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
>> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
>> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
>> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
>> exception running Sqoop: java.lang.RuntimeException:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
>> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
>> ]]></system-out>
>> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
>> @3a5e3a5e,5,main]]: run()/openServerSocket():
>> java.net.BindException: Address already in use
>> at java.net.PlainSocketImpl.socketBind(Native Method)
>> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
>> at java.net.ServerSocket.bind(ServerSocket.java:339)
>> at java.net.ServerSocket.<init>(ServerSocket.java:205)
>> at java.net.ServerSocket.<init>(ServerSocket.java:117)
>> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
>> at org.hsqldb.Server.openServerSocket(Unknown Source)
>> at org.hsqldb.Server.run(Unknown Source)
>> at org.hsqldb.Server.access$000(Unknown Source)
>> at org.hsqldb.Server$ServerThread.run(Unknown Source)
>> Note:
>> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
>> uses or overrides a deprecated API.
>> Note: Recompile with -Xlint:deprecation for details.
>> java.lang.UnsupportedOperationException: This is supposed to be
>> overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
>> is supposed to be overridden by subclasses.
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> Caused by: java.lang.UnsupportedOperationException: This is supposed to
>> be overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> ... 20 more
>> ]]></system-err>
>>
>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by Vinayakumar B <vi...@gmail.com>.
Yes. . Protobuf 2.5 jars wants every Protobuf code in its jvm to be
generated and compiled using 2.5. Its not supporting old compiled code.
Even though there will not be any compilation issues with 2.4 generated
code, exception will be thrown at runtime.

So upgrade all your code to 2.5 and generate code using 2.5 Protobuf.
.compile and run again.

Regards,
Vinayakumar B
On Sep 10, 2013 8:58 AM, "sam liu" <sa...@gmail.com> wrote:

> This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from
> 2.4.1, but the version of  protobuf  in my env is still 2.4.1, so the sqoop
> unit tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop
> unit tests passed.
>
>
> 2013/9/9 sam liu <sa...@gmail.com>
>
>> Hi,
>>
>> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed
>> by exception UnsupportedOperationException, however it works with
>> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>>
>> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
>> the staging area
>> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
>> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
>> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
>> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
>> exception running Sqoop: java.lang.RuntimeException:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
>> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
>> ]]></system-out>
>> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
>> @3a5e3a5e,5,main]]: run()/openServerSocket():
>> java.net.BindException: Address already in use
>> at java.net.PlainSocketImpl.socketBind(Native Method)
>> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
>> at java.net.ServerSocket.bind(ServerSocket.java:339)
>> at java.net.ServerSocket.<init>(ServerSocket.java:205)
>> at java.net.ServerSocket.<init>(ServerSocket.java:117)
>> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
>> at org.hsqldb.Server.openServerSocket(Unknown Source)
>> at org.hsqldb.Server.run(Unknown Source)
>> at org.hsqldb.Server.access$000(Unknown Source)
>> at org.hsqldb.Server$ServerThread.run(Unknown Source)
>> Note:
>> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
>> uses or overrides a deprecated API.
>> Note: Recompile with -Xlint:deprecation for details.
>> java.lang.UnsupportedOperationException: This is supposed to be
>> overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
>> is supposed to be overridden by subclasses.
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> Caused by: java.lang.UnsupportedOperationException: This is supposed to
>> be overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> ... 20 more
>> ]]></system-err>
>>
>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by Vinayakumar B <vi...@gmail.com>.
Yes. . Protobuf 2.5 jars wants every Protobuf code in its jvm to be
generated and compiled using 2.5. Its not supporting old compiled code.
Even though there will not be any compilation issues with 2.4 generated
code, exception will be thrown at runtime.

So upgrade all your code to 2.5 and generate code using 2.5 Protobuf.
.compile and run again.

Regards,
Vinayakumar B
On Sep 10, 2013 8:58 AM, "sam liu" <sa...@gmail.com> wrote:

> This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from
> 2.4.1, but the version of  protobuf  in my env is still 2.4.1, so the sqoop
> unit tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop
> unit tests passed.
>
>
> 2013/9/9 sam liu <sa...@gmail.com>
>
>> Hi,
>>
>> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed
>> by exception UnsupportedOperationException, however it works with
>> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>>
>> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
>> the staging area
>> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
>> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
>> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
>> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
>> exception running Sqoop: java.lang.RuntimeException:
>> java.lang.UnsupportedOperationException: This is supposed to be overridden
>> by subclasses.
>> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
>> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
>> ]]></system-out>
>> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
>> @3a5e3a5e,5,main]]: run()/openServerSocket():
>> java.net.BindException: Address already in use
>> at java.net.PlainSocketImpl.socketBind(Native Method)
>> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
>> at java.net.ServerSocket.bind(ServerSocket.java:339)
>> at java.net.ServerSocket.<init>(ServerSocket.java:205)
>> at java.net.ServerSocket.<init>(ServerSocket.java:117)
>> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
>> at org.hsqldb.Server.openServerSocket(Unknown Source)
>> at org.hsqldb.Server.run(Unknown Source)
>> at org.hsqldb.Server.access$000(Unknown Source)
>> at org.hsqldb.Server$ServerThread.run(Unknown Source)
>> Note:
>> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
>> uses or overrides a deprecated API.
>> Note: Recompile with -Xlint:deprecation for details.
>> java.lang.UnsupportedOperationException: This is supposed to be
>> overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
>> is supposed to be overridden by subclasses.
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
>> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
>> at
>> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
>> at
>> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>> at java.lang.reflect.Method.invoke(Method.java:611)
>> at junit.framework.TestCase.runTest(TestCase.java:168)
>> at junit.framework.TestCase.runBare(TestCase.java:134)
>> at junit.framework.TestResult$1.protect(TestResult.java:110)
>> at junit.framework.TestResult.runProtected(TestResult.java:128)
>> at junit.framework.TestResult.run(TestResult.java:113)
>> at junit.framework.TestCase.run(TestCase.java:124)
>> at junit.framework.TestSuite.runTest(TestSuite.java:232)
>> at junit.framework.TestSuite.run(TestSuite.java:227)
>> at
>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
>> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
>> at
>> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
>> Caused by: java.lang.UnsupportedOperationException: This is supposed to
>> be overridden by subclasses.
>> at
>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
>> at
>> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
>> at
>> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
>> at java.util.HashMap.hash(HashMap.java:132)
>> at java.util.HashMap.putImpl(HashMap.java:695)
>> at java.util.HashMap.put(HashMap.java:680)
>> at
>> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
>> at
>> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
>> at
>> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
>> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
>> at java.security.AccessController.doPrivileged(AccessController.java:310)
>> at javax.security.auth.Subject.doAs(Subject.java:573)
>> at
>> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
>> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
>> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
>> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
>> at
>> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
>> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
>> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
>> at
>> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
>> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>> ... 20 more
>> ]]></system-err>
>>
>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by sam liu <sa...@gmail.com>.
This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from 2.4.1,
but the version of  protobuf  in my env is still 2.4.1, so the sqoop unit
tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop unit
tests passed.


2013/9/9 sam liu <sa...@gmail.com>

> Hi,
>
> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed by
> exception UnsupportedOperationException, however it works with
> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>
> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
> the staging area
> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
> exception running Sqoop: java.lang.RuntimeException:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
> ]]></system-out>
> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
> @3a5e3a5e,5,main]]: run()/openServerSocket():
> java.net.BindException: Address already in use
> at java.net.PlainSocketImpl.socketBind(Native Method)
> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
> at java.net.ServerSocket.bind(ServerSocket.java:339)
> at java.net.ServerSocket.<init>(ServerSocket.java:205)
> at java.net.ServerSocket.<init>(ServerSocket.java:117)
> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
> at org.hsqldb.Server.openServerSocket(Unknown Source)
> at org.hsqldb.Server.run(Unknown Source)
> at org.hsqldb.Server.access$000(Unknown Source)
> at org.hsqldb.Server$ServerThread.run(Unknown Source)
> Note:
> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
> uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
> is supposed to be overridden by subclasses.
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> Caused by: java.lang.UnsupportedOperationException: This is supposed to be
> overridden by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> ... 20 more
> ]]></system-err>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by sam liu <sa...@gmail.com>.
This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from 2.4.1,
but the version of  protobuf  in my env is still 2.4.1, so the sqoop unit
tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop unit
tests passed.


2013/9/9 sam liu <sa...@gmail.com>

> Hi,
>
> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed by
> exception UnsupportedOperationException, however it works with
> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>
> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
> the staging area
> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
> exception running Sqoop: java.lang.RuntimeException:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
> ]]></system-out>
> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
> @3a5e3a5e,5,main]]: run()/openServerSocket():
> java.net.BindException: Address already in use
> at java.net.PlainSocketImpl.socketBind(Native Method)
> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
> at java.net.ServerSocket.bind(ServerSocket.java:339)
> at java.net.ServerSocket.<init>(ServerSocket.java:205)
> at java.net.ServerSocket.<init>(ServerSocket.java:117)
> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
> at org.hsqldb.Server.openServerSocket(Unknown Source)
> at org.hsqldb.Server.run(Unknown Source)
> at org.hsqldb.Server.access$000(Unknown Source)
> at org.hsqldb.Server$ServerThread.run(Unknown Source)
> Note:
> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
> uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
> is supposed to be overridden by subclasses.
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> Caused by: java.lang.UnsupportedOperationException: This is supposed to be
> overridden by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> ... 20 more
> ]]></system-err>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by sam liu <sa...@gmail.com>.
This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from 2.4.1,
but the version of  protobuf  in my env is still 2.4.1, so the sqoop unit
tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop unit
tests passed.


2013/9/9 sam liu <sa...@gmail.com>

> Hi,
>
> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed by
> exception UnsupportedOperationException, however it works with
> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>
> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
> the staging area
> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
> exception running Sqoop: java.lang.RuntimeException:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
> ]]></system-out>
> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
> @3a5e3a5e,5,main]]: run()/openServerSocket():
> java.net.BindException: Address already in use
> at java.net.PlainSocketImpl.socketBind(Native Method)
> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
> at java.net.ServerSocket.bind(ServerSocket.java:339)
> at java.net.ServerSocket.<init>(ServerSocket.java:205)
> at java.net.ServerSocket.<init>(ServerSocket.java:117)
> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
> at org.hsqldb.Server.openServerSocket(Unknown Source)
> at org.hsqldb.Server.run(Unknown Source)
> at org.hsqldb.Server.access$000(Unknown Source)
> at org.hsqldb.Server$ServerThread.run(Unknown Source)
> Note:
> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
> uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
> is supposed to be overridden by subclasses.
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> Caused by: java.lang.UnsupportedOperationException: This is supposed to be
> overridden by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> ... 20 more
> ]]></system-err>
>

Re: UnsupportedOperationException occurs with Hadoop-2.1.0-beta jar files

Posted by sam liu <sa...@gmail.com>.
This is an env issue. Hadoop-2.10-beta upgraded protobuf to 2.5 from 2.4.1,
but the version of  protobuf  in my env is still 2.4.1, so the sqoop unit
tests failed on my env. After I upgraded my protobuf to 2.5, all sqoop unit
tests passed.


2013/9/9 sam liu <sa...@gmail.com>

> Hi,
>
> With Hadoop-2.1.0-beta jar files, Sqoop-1.4.3 test TestAllTables failed by
> exception UnsupportedOperationException, however it works with
> Hadoop-2.0.4-alpha jar files. Below are the details. Any comments? Thanks!
>
> 4202 [main] INFO org.apache.hadoop.mapreduce.JobSubmitter - Cleaning up
> the staging area
> file:/home/hadoop/gitsqoop/sqoop/build/test/hadoop/mapred/staging/hadoop1395102746/.staging/job_local1395102746_0001
> 4203 [main] DEBUG org.apache.sqoop.util.ClassLoaderStack - Restoring
> classloader: sun.misc.Launcher$AppClassLoader@3f363f36
> 4203 [main] ERROR org.apache.sqoop.Sqoop - Got exception running Sqoop:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4204 [main] ERROR com.cloudera.sqoop.testutil.ImportJobTestCase - Got
> exception running Sqoop: java.lang.RuntimeException:
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> 4235 [main] WARN com.cloudera.sqoop.testutil.BaseSqoopTestCase - Can't
> delete /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop/warehouse
> ]]></system-out>
> <system-err><![CDATA[[Server@3a5e3a5e]: [Thread[HSQLDB Server
> @3a5e3a5e,5,main]]: run()/openServerSocket():
> java.net.BindException: Address already in use
> at java.net.PlainSocketImpl.socketBind(Native Method)
> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:413)
> at java.net.ServerSocket.bind(ServerSocket.java:339)
> at java.net.ServerSocket.<init>(ServerSocket.java:205)
> at java.net.ServerSocket.<init>(ServerSocket.java:117)
> at org.hsqldb.HsqlSocketFactory.createServerSocket(Unknown Source)
> at org.hsqldb.Server.openServerSocket(Unknown Source)
> at org.hsqldb.Server.run(Unknown Source)
> at org.hsqldb.Server.access$000(Unknown Source)
> at org.hsqldb.Server$ServerThread.run(Unknown Source)
> Note:
> /home/hadoop/gitsqoop/sqoop/build/test/data/sqoop-hadoop/compile/deaf162bd3f0ca30e6034d74f6909791/IMPORT_TABLE_1.java
> uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> java.lang.UnsupportedOperationException: This is supposed to be overridden
> by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> java.lang.RuntimeException: java.lang.UnsupportedOperationException: This
> is supposed to be overridden by subclasses.
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:186)
> at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:45)
> at
> com.cloudera.sqoop.testutil.ImportJobTestCase.runImport(ImportJobTestCase.java:215)
> at
> com.cloudera.sqoop.TestAllTables.testMultiTableImport(TestAllTables.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:611)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
> Caused by: java.lang.UnsupportedOperationException: This is supposed to be
> overridden by subclasses.
> at
> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$URLProto.hashCode(YarnProtos.java:5487)
> at
> org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:6167)
> at
> org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)
> at java.util.HashMap.hash(HashMap.java:132)
> at java.util.HashMap.putImpl(HashMap.java:695)
> at java.util.HashMap.put(HashMap.java:680)
> at
> org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:139)
> at
> org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:155)
> at
> org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:634)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:415)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
> at java.security.AccessController.doPrivileged(AccessController.java:310)
> at javax.security.auth.Subject.doAs(Subject.java:573)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1494)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.doSubmitJob(ImportJobBase.java:173)
> at org.apache.sqoop.mapreduce.ImportJobBase.runJob(ImportJobBase.java:151)
> at
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:221)
> at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:548)
> at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:403)
> at
> org.apache.sqoop.tool.ImportAllTablesTool.run(ImportAllTablesTool.java:64)
> at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
> ... 20 more
> ]]></system-err>
>