We are running into this antlr runtime version compatibility issue in conjunction with hcat in the following cases:
1. A create table statement, such as: create table mytable (id int, name string) partitioned by (dt string) STORED AS inputformat 'org.apache.pig.builtin.PigStorage' outputformat 'org.apache.hadoop.hive.ql.io.RCFileOutputFormat' inputdriver 'org.apache.hcatalog.pig.drivers.PigStorageInputDriver' outputdriver 'org.apache.hcatalog.rcfile.RCFileOutputDriver' Requires both, pig and hcat/hive in the classpath. Above statement will fail unless the hive antlr version comes first in the path (the more recent antlr version of pig won’t do). To make this happen, a user will have to construct a HADOOP_CLASSPATH that has the hive antlr-runtime-3.0.1.jar, followed by pig and finally call the hcat script, which will add all other hcat jar files to the end of the path. 2. Pig (0.9) script with HCatLoader Will require the opposite order of antlr-runtime. The script won’t parse with the 3.0.1 version. So in this case, the user needs to be instructed to drop the 3.0.1 version from the class path (or make sure it appears in order after pig.jar. Typical use case for this is the workflow lib in oozie. Above is difficult to comprehend for the user. Are there plans to address this issue or other workarounds?
