cooperative-computing-lab/cctools — pull request #225 by batrick (2013-10-06 22:51:26+00:00)
Title: Chirp server root handling

First, please note that this branch is based off of chirp-cleanup. Only the last three commits are part of this PR.

This pull request cleans up how path resolution is done in the Chirp server. Before, all paths were "fixed" from the wire by URL decoding the path and prepended the "root" path. This patch makes the chirp_server.c only decode paths. The CFS layer now "resolves" all paths by prepending its root.

The net result of this change is reduced coupling of modules. Now every module "above" the CFS layer sees the same abstraction of the Chirp root as clients. Consequently Chirp ACL/tickets are thus simplified. [This is also helpful for the current Chirp Jobs work as path resolution needs to occur within the CFS layer.]

I've done manual basic tests with both hdfs:// and chirp:// URLs. I'm working on test cases for both of these that will exercise these code paths in autobuild.