Cool. I did not know about this. Thanks for the jvsc info, Bharath! On Sun, May 22, 2011 at 2:21 AM, Bharath Mundlapudi <bharathw...@yahoo.com> wrote: > I think, that code is there for jsvc. If you run hadoop in secure mode, it > executes this path. There is nothing wrong in -jvm option since it meant for > jsvc. > > In case of secure mode, jsvc process runs as root and invokes the datanode > process as hdfs user (or any other configured user). > But it seems there is a bug in the code, if you run as root in non-secured > mode this issue can trigger. > > Checking secure_mode = true seems decent to me rather than EUID == 0. > > Read help for jsvc (short snippet is pasted here) > > ./jsvc -help > Usage: jsvc [-options] class [args...] > > Where options include: > > -help | --help | -? > show this help page (implies -nodetach) > -jvm <JVM name> > use a > specific Java Virtual Machine. Available JVMs: > 'client' 'server' > > -Bharath > > ________________________________ > From: Harsh J <ha...@cloudera.com> > To: hdfs-user@hadoop.apache.org > Sent: Saturday, May 21, 2011 9:08 AM > Subject: Re: Starting Datanode > > FWIW, my 'java' output tells me: > > -jvm is a synonym for the "client" VM [deprecated] > > i.e., -jvm == -client > > I do not know when it was introduced, but it says deprecated in u24. > > Additionally, I do not think "java -jvm server" makes any sense at > all. Looks like a genuine typo/overlook/bug. Do file a JIRA for this, > and fix it to use "-client" alone, if I understand what it really > means to do if EUID == 0. > > On Sat, May 21, 2011 at 4:27 AM, Anh Nguyen <angu...@redhat.com> wrote: >> On 05/20/2011 02:33 PM, Marcos Ortiz wrote: >>> >>> On 05/20/2011 04:08 PM, Anh Nguyen wrote: >>>> >>>> On 05/20/2011 02:06 PM, Marcos Ortiz wrote: >>>>> >>>>> On 05/20/2011 04:27 PM, Marcos Ortiz wrote: >>>>>> >>>>>> On 05/20/2011 03:46 PM, Anh Nguyen wrote: >>>>>>> >>>>>>> On 05/20/2011 01:15 PM, Marcos Ortiz wrote: >>>>>>>> >>>>>>>> On 05/20/2011 01:02 PM, Anh Nguyen wrote: >>>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> I just upgraded to hadoop-0.20.203.0, and am having problem >>>>>>>>> starting >>>>>>>>> the >>>>>>>>> datanode: >>>>>>>>> # hadoop datanode >>>>>>>>> Unrecognized option: -jvm >>>>>>>>> Could not create the Java virtual machine. >>>>>>>>> >>>>>>>>> It looks like it has something to do with daemon.sh, particularly >>>>>>>>> the >>>>>>>>> setting of HADOOP_OPTS: >>>>>>>>> if [[ $EUID -eq 0 ]]; then >>>>>>>>> HADOOP_OPTS="$HADOOP_OPTS -jvm server $HADOOP_DATANODE_OPTS" >>>>>>>>> else >>>>>>>>> HADOOP_OPTS="$HADOOP_OPTS -server $HADOOP_DATANODE_OPTS" >>>>>>>>> fi >>>>>>>>> >>>>>>>>> Am I missing something? >>>>>>>>> >>>>>>>>> Thanks in advance. >>>>>>>>> >>>>>>>>> Anh- >>>>>>>>> >>>>>>>> Which Java's version are you using? >>>>>>>> >>>>>>>> >>>>>>> # java -version >>>>>>> java version "1.6.0_20" >>>>>>> Java(TM) SE Runtime Environment (build 1.6.0_20-b02) >>>>>>> Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode) >>>>>>> >>>>>>> It worked with hadoop-0.20.2. >>>>>>> Anh- >>>>>> >>>>>> How do you are starting the services? using bin/start-all.sh o simply >>>>>> the datanode? >>>>>> >>>>>> >>>>> Anh, test first that this option (-jvm is included in that Java >>>>> version). >>>>> >>>>> >>>> Tested earlier: >>>> # java -jvm >>>> Unrecognized option: -jvm >>>> Could not create the Java virtual machine. >>>> >>> Did you check the requirements for that release? I don´t know if this >>> version require at least a mayor version to 1.6.20. >>> Did you test with the 1.6.24? >> >> Frankly, I have seen/used -jvm. What is it? >> Anh- >>> >>> I think that can be a bug. >>> Take a time to review the last issues for Hadoop on the JIRA of the >>> project. >>> >>> Regards >>> >> >> > > > > -- > Harsh J > > >
-- Harsh J