Example #1
0
 def mkdir(self, path, mode):
     parts = path.split("/")
     parent = string.join(parts[:-1], "/")
     child = parts[-1]
     pptr = vfs_dir.lookup(self.fs, self.root, parent)
     if pptr == None:
         return -errno.ENOENT
     cptr = vfs_base.get_new_key()
     vfs_dir.mkdir(self.fs, cptr, mode)
     try:
         vfs_dir.link(self.fs, pptr, child, cptr)
     except vfs_dir.DupFileExc:
         return -errno.EEXIST
Example #2
0
 def create(self, path, flags, mode):
     print "in create(%s,0x%x,0x%x)" % (path, flags, mode)
     parts = path.split("/")
     parent = string.join(parts[:-1], "/")
     child = parts[-1]
     pptr = vfs_dir.lookup(self.fs, self.root, parent)
     if pptr == None:
         return -errno.ENOENT
     cptr = vfs_base.get_new_key()
     self.fs.create_inode(cptr, mode)
     try:
         vfs_dir.link(self.fs, pptr, child, cptr)
     except vfs_dir.DupFileExc:
         return -errno.EEXIST
Example #3
0
import vfs_base
import vfs_dir

s = db.StoreClient("test", [("localhost", 6666)])
fs = vfs_base.FS(s)
status = "OK"

### TEST SET 1: create and then do single-level lookups for 1000 files.

vfs_dir.mkdir(fs, "root", 0755)

for i in range(1000):
    path = "file%d" % i
    key = struct.pack(vfs_base.PTR_FMT, 1, 1, i + 100)
    try:
        vfs_dir.link(fs, "root", path, key)
        print "add(%s) OK" % path
    except:
        traceback.print_exc()
        print "add(%s) FAILED" % path
        status = "FAILED"

print "adding file0 AGAIN"
key = struct.pack(vfs_base.PTR_FMT, 1, 1, 0)
vfs_dir.link(fs, "root", "file0", key)

for i in range(1000):
    path = "/file%d" % i
    try:
        ptr = vfs_dir.lookup(fs, "root", path)
        if not ptr: