Michael Stack wrote:
Holger Stenzhorn wrote:
..
Hadoop RunJar looks to contain the only use of hadoop.tmp.dir other than test and contrib code. It does the following: 'new File(new Configuration().get("hadoop.tmp.dir"));' using java.io.File. In hbase, its all Path and hadoop FileSystem. So, yes, content of hadoop.tmp.dir is treated differently.
Could that be changed? ...meaning, wouldn't it be sensible to change HBase (to use Path etc.) so it behaves like Hadoop?

You mean, can hadoop be changed? (Its hbase that's drunk the kool-aid; its the one that goes via hadoop FileSystem for all filesystem accesses whereas the hadoop use of hadoop.tmp.dir goes via java.io.File).
Nope. I mean the other way around: Can you change the HBase code so it goes via the Hadoop filesystem? ...or would this imply a performance drop for HBase?

Mmmmh, thinking about that more in depth... Hadoop makes a mistake there to! When I start up Hadoop in Cygwin and the default temp location is used ("/tmp/hadoop-${user.name}") then Hadoop creates the temp location under "c:" and not under "/tmp" in the Cygwin directory. I guess that is a glitch too and so I will post that also to the list! :-)

I took a look again at your logs trying to figure why no deploy of the critical .META. For .META. to be deployed, it needs mention in the -ROOT- table as a row. This is done in the HMaster constructor IF this test passes: '#903 if (!fs.exists(rootRegionDir)) {'. I'm guessing this test is failing.

But the Mighty Jim Kellerman just tried on his cygwin install and if using local filesystem and all defaults -- no additions to hbase-site.xml -- it all just works for him (.META. gets deployed successufully, etc.).

What happens if you clean up your local directory removing ${hadoop.tmp.dir} and retry?
Again, if I use "c:\tmp\hadoop-holste" as value for "${hadoop.tmp.dir}" it works: The log reflects just the situation when this variable is not set in "hbase-site.xml" - then it does not work. I also forgot to mention in my last my that it is not just "${hadoop.tmp.dir}" set to "/tmp/hadoop-${user.name}" that causes the problem but also if it is set to "/tmp/hadoop-holste".

Thanks,
St.Ack



Did you just change the value of hadoop.tmp.dir from /tmp/hadoop-${user.name} to /tmp/hadoop-holste on cygwin and it then worked?
No. I changed it to changed the value "c:\tmp\hadoop-holste".


Also, I tried to do the very same (as described in my intitial mail) on Ubuntu also *without* specifying "hadoop.tmp.dir".
There it works wihtout problems...

Yeah. I know things work out-of-the-box on linux/macosx. Jim has been doing a bunch of work trying to get the same to happen on cygwin (10Minutes has the latest fruit of his work).

As requested by Michel Stack I also attach my log (turned to debug) when starting the server.

Thanks for the log.  Comments interlaced.

Cheers,
Holger

07/11/02 13:40:09 DEBUG conf.Configuration: java.io.IOException: config() at org.apache.hadoop.conf.Configuration.<init>(Configuration.java:144) at org.apache.hadoop.hbase.HBaseConfiguration.<init>(HBaseConfiguration.java:30)
  at org.apache.hadoop.hbase.HMaster.doMain(HMaster.java:3043)
  at org.apache.hadoop.hbase.HMaster.main(HMaster.java:3097)

...

Reply via email to