Tsz Wo (Nicholas), Sze wrote:
Yes, append is a new feature in 0.19 but not 0.18.
I think you need a lot of effort to compile 0.19 with Java 5 since the codes
use Java 6 APIs. Switch to Java 6 if possible.
That's an interesting question. I have a private build of Hadoop which
was built on Java6, with the javac.version set to 1.5, with the output
being a JAR which is marked as Java-5 compatible. It does build and pass
my local functional tests on a java5 system -but I havent tried the full
hadoop test suite. The big risk is that some java class has a new
feature, like an extra constructor on an exception class (e.g.
IOException(Throwable), which is a new 6+ constructor). Accordingly,
even though my JAR will load on 1.5, I say "only deploy hadoop clusters
on java6+.
why tag the JAR for Java5 then? Two reasons
-Java 5 clients get to talk to the cluster
-Our CI servers (Hudson and Cruise Control) are on Java5 to stop us
accidentally using Java6 features in our own codebase. They need a
compatible Hadoop JAR
Like I said, It can be done, but you are on your own if you try
-steve