When running zk.mkdir_p("/foo/bar") in an empty zookeeper tree an NoNode-exception is thrown, but it's not caught in the handler, so no recursion is performed. It is possible to use it to create a single new level (mkdir_p("/foo")), mimicing the behavior of create.
This is on jruby 1.7.0-preview1 and 2.