Oh, nevermind. I see the problem, and I'm sorry for the confusion. I still
had protobuf 2.4.1 installed on my dev system. That is what provides the
protoc executable that the Maven build calls to generate the protobuf
code. While the protoc exec succeeds just fine and generates code that
doesn't look like it has any errors, there are runtime errors because the
code isn't compatible with the 2.5 library.
I agree with the commenters on the protobuf repo, this is a mess.
Maybe there is some way that the maven build could verify whether the
protoc being supplied is the correct version and warn/abort if not? protoc
--version would do it...
On Fri, Jan 10, 2014 at 12:12 PM, Daniel Einspanjer
<deinspanjer@gmail.com>wrote:
> So is this just me? Other people are able to compile the latest tajo
> Master branch and use a plain vanilla Hadoop 2.2.0 deployment as
> HADOOP_HOME and run fine?
> I found this issue on the protobuf google code repository which seems to
> indicate that others are running into it.
> http://code.google.com/p/protobuf/issues/detail?id=493
>
>
> On Thu, Jan 9, 2014 at 9:54 AM, Daniel Einspanjer <deinspanjer@gmail.com>wrote:
>
>> I did notice the upgrade to protobuf 2.5. The hadoop I'm using for my
>> HADOOP_HOME is the 2.2.0 Apache release.
>>
>> I'll poke around more to see if there might be some conflicting version
>> somewhere. Any tips about where that might be would be appreciated.
>>
>>
>> On Wed, Jan 8, 2014 at 8:45 PM, Jihoon Son <ghoonson@gmail.com> wrote:
>>
>>> Hi, Daniel
>>> This error seems to be occurred by the version mismatch of the protocol
>>> buffer.
>>> Currently, Tajo uses the protocol buffer of version 2.5.0.
>>> Maybe you need to use Hadoop of version 2.2.0.
>>> Would you try again with the protocol buffer of version 2.5.0?
>>>
>>> Thanks,
>>> Jihoon
>>>
>>>
>>> 2014/1/9 Daniel Einspanjer <deinspanjer@gmail.com>
>>>
>>> > Pulled down the current master source, did a clean build and package.
>>> > Extracted the tarball to a fresh directory and edited tajo-env.sh to
>>> point
>>> > at JAVA_HOME and HADOOP_HOME.
>>> >
>>> > When I tried to run bin/start-tajo.sh, it ran, but I found that the
>>> worker
>>> > was running but the master had immediately died.
>>> >
>>> > After a bit of fiddling, I tried running the master via the command:
>>> > bin/tajo master
>>> >
>>> > And the output shows that it died due to an error during the
>>> CatalogServer
>>> > initialization. Here is a snippit of the console output:
>>> >
>>> > 2014-01-08 18:20:38,250 INFO store.DerbyStore
>>> > (AbstractDBStore.java:<init>(107)) - Connected to database
>>> > (jdbc:derby:/tmp/tajo-catalog-deinspanjer/db;create=true)
>>> > 2014-01-08 18:20:38,511 INFO store.DerbyStore
>>> > (AbstractDBStore.java:<init>(115)) - The base tables of CatalogServer
>>> are
>>> > created.
>>> > 2014-01-08 18:20:38,528 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(82)) - Table 'META is created.
>>> > 2014-01-08 18:20:38,565 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(114)) - Table 'TABLES' is created.
>>> > 2014-01-08 18:20:38,606 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(140)) - Table 'COLUMNS is created.
>>> > 2014-01-08 18:20:38,626 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(169)) - Table 'OPTIONS is created.
>>> > 2014-01-08 18:20:38,658 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(203)) - Table 'INDEXES' is created.
>>> > 2014-01-08 18:20:38,658 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(223)) - Table 'STATS' is created.
>>> > 2014-01-08 18:20:38,658 INFO store.DerbyStore
>>> > (DerbyStore.java:createBaseTable(243)) - Table 'PARTITIONS' is created.
>>> > 2014-01-08 18:20:38,716 ERROR catalog.CatalogServer
>>> > (CatalogServer.java:init(116)) - CatalogServer initialization failed
>>> > java.lang.UnsupportedOperationException: This is supposed to be
>>> overridden
>>> > by subclasses.
>>> > at
>>> >
>>> >
>>> com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.common.TajoDataTypes$DataType.equals(TajoDataTypes.java:436)
>>> > at java.util.AbstractList.equals(AbstractList.java:523)
>>> > at
>>> java.util.Collections$UnmodifiableList.equals(Collections.java:1208)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.findFunction(CatalogServer.java:456)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.findFunction(CatalogServer.java:465)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.createFunction(CatalogServer.java:474)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer.initBuiltinFunctions(CatalogServer.java:144)
>>> > at
>>> org.apache.tajo.catalog.CatalogServer.init(CatalogServer.java:114)
>>> > at
>>> >
>>> >
>>> org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:108)
>>> > at
>>> >
>>> org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
>>> > at org.apache.tajo.master.TajoMaster.init(TajoMaster.java:183)
>>> > at org.apache.tajo.master.TajoMaster.main(TajoMaster.java:1053)
>>> > 2014-01-08 18:20:38,717 INFO service.AbstractService
>>> > (AbstractService.java:noteFailure(272)) - Service
>>> > org.apache.tajo.master.TajoMaster failed in state INITED; cause:
>>> > org.apache.tajo.catalog.exception.CatalogException:
>>> > java.lang.UnsupportedOperationException: This is supposed to be
>>> overridden
>>> > by subclasses.
>>> > org.apache.tajo.catalog.exception.CatalogException:
>>> > java.lang.UnsupportedOperationException: This is supposed to be
>>> overridden
>>> > by subclasses.
>>> > at
>>> org.apache.tajo.catalog.CatalogServer.init(CatalogServer.java:117)
>>> > at
>>> >
>>> >
>>> org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:108)
>>> > at
>>> >
>>> org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
>>> > at org.apache.tajo.master.TajoMaster.init(TajoMaster.java:183)
>>> > at org.apache.tajo.master.TajoMaster.main(TajoMaster.java:1053)
>>> > 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.tajo.common.TajoDataTypes$DataType.equals(TajoDataTypes.java:436)
>>> > at java.util.AbstractList.equals(AbstractList.java:523)
>>> > at
>>> java.util.Collections$UnmodifiableList.equals(Collections.java:1208)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.findFunction(CatalogServer.java:456)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.findFunction(CatalogServer.java:465)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.createFunction(CatalogServer.java:474)
>>> > at
>>> >
>>> >
>>> org.apache.tajo.catalog.CatalogServer.initBuiltinFunctions(CatalogServer.java:144)
>>> > at
>>> org.apache.tajo.catalog.CatalogServer.init(CatalogServer.java:114)
>>> > ... 4 more
>>> >
>>>
>>>
>>>
>>> --
>>> Jihoon Son
>>>
>>> Database & Information Systems Group,
>>> Prof. Yon Dohn Chung Lab.
>>> Dept. of Computer Science & Engineering,
>>> Korea University
>>> 1, 5-ga, Anam-dong, Seongbuk-gu,
>>> Seoul, 136-713, Republic of Korea
>>>
>>> Tel : +82-2-3290-3580
>>> E-mail : jihoonson@korea.ac.kr
>>>
>>
>>
>
|