You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pig.apache.org by ga...@apache.org on 2007/12/07 01:53:29 UTC
svn commit: r601939 - in /incubator/pig/trunk: CHANGES.txt scripts/pig.pl
Author: gates
Date: Thu Dec 6 16:53:28 2007
New Revision: 601939
URL: http://svn.apache.org/viewvc?rev=601939&view=rev
Log:
PIG-45: Fixed pig.pl to not assume hodrc file is named the same as
cluster name (gates).
Modified:
incubator/pig/trunk/CHANGES.txt
incubator/pig/trunk/scripts/pig.pl
Modified: incubator/pig/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/pig/trunk/CHANGES.txt?rev=601939&r1=601938&r2=601939&view=diff
==============================================================================
--- incubator/pig/trunk/CHANGES.txt (original)
+++ incubator/pig/trunk/CHANGES.txt Thu Dec 6 16:53:28 2007
@@ -40,3 +40,6 @@
PIG-43: fixed problem where using the combiner prevented a pig alias
from being evaluated more than once. (gates)
+
+ PIG-45: Fixed pig.pl to not assume hodrc file is named the same as
+ cluster name (gates).
Modified: incubator/pig/trunk/scripts/pig.pl
URL: http://svn.apache.org/viewvc/incubator/pig/trunk/scripts/pig.pl?rev=601939&r1=601938&r2=601939&view=diff
==============================================================================
--- incubator/pig/trunk/scripts/pig.pl (original)
+++ incubator/pig/trunk/scripts/pig.pl Thu Dec 6 16:53:28 2007
@@ -19,7 +19,7 @@
# Read our configuration file. This will fill in values for pigJarRoot
# and hodRoot.
our $ROOT = (defined($ENV{'ROOT'}) ? $ENV{'ROOT'} : "/home/y");
-my ($pigJarRoot, $hodRoot);
+my ($pigJarRoot, $hodRoot, $defaultCluster);
open(CFG, "< $ROOT/conf/pigclient.conf") or
die "Can't open $ROOT/conf/pigclient.conf, $ERRNO\n";
@@ -67,6 +67,16 @@
if (defined $classpath)
{
+ # Check to make sure that the jar file specified in the class path is
+ # available.
+ $classpath =~ /(^|:)([^:]*pig.jar)($|:)/;
+ my $jar = $2;
+ if (!(-e $jar)) {
+ die "I can't find the jar file $jar. If you explicitly
+put this jar in your classpath, please check that you have the path name
+correct. If you specified a cluster via -c[luster], then the pig jar for
+that cluster is not present on this machine.\n";
+ }
push (@javaArgs, "-cp", $classpath);
}
@@ -89,10 +99,10 @@
# If we aren't attaching to kryptonite, set up the right hod config file.
if ($cluster ne "kryptonite") {
- my $hodCfg = "$hodRoot/conf/$cluster";
- if (-e $hodCfg) {
- $hodParam .= "--config=$hodCfg";
- } else {
+ # With splitting of gateways, HOD file is always hodrc, no matter what
+ # cluster you're talking to.
+ my $hodCfg = "$hodRoot/conf/hodrc";
+ if (! (-e $hodCfg)) {
push(@cmd, "-Dhod.server=");
warn "I can't find HOD configuration for $cluster, hopefully you weren't planning on using HOD.\n";
}
@@ -118,8 +128,9 @@
# first, figure out if we are working with a deployed cluster
if (!(defined $cluster) && (!(defined $classpath) || !($classpath =~/pig.jar/)))
{
- # we are using default cluster
- $cluster = 'kryptonite';
+ # we are using default cluster, the name of which is stored in the
+ # pigclient.conf file.
+ $cluster = $defaultCluster;
}
# we are running from a cluster