Beispiel #1
0
def create_haystack_group(pid, gid):

    gid = int(gid)

    p = group.get_group_path( pid, gid )
    if not os.path.isdir( p ):
        raise group.GroupNotFound( pid, gid, p )

    logger.info( "s2haystack: part[%s] group[%d] begin creating!" % (pid, gid) )

    create(pid, gid)

    logger.info( "s2haystack: part[%s] group[%d] finish creating!" % (pid, gid) )
Beispiel #2
0
def delete_empty_hash_folders(pid, gid):

    gpath = group.get_group_path(pid, gid)
    dirs = os.listdir(gpath)

    for h in dirs:
        if check_hash_folder_name(h) == False:
            continue

        path = os.path.join(gpath, h)
        try:
            os.rmdir(path)
        except OSError as e:
            if len( e.args ) > 0 and e.args[ 0 ] in (errno.ENOENT, errno.ENOTEMPTY):
                pass
            else:
                raise
Beispiel #3
0
def get_hash_files(pid, gid):

    files = {}

    group_path = group.get_group_path(pid, gid)

    dirs = os.listdir(group_path)

    for h in dirs:
        if check_hash_folder_name(h) == False:
            continue

        path = os.path.join(group_path, h)

        for fn in os.listdir(path):
            if check_file_name(fn) == True:
                files[fn] = os.path.join(path, fn)

    return files
Beispiel #4
0
def get_haystack_path(pid, gid):

    gpath = group.get_group_path(pid, gid)

    return os.path.join(gpath, HAYSTACK_FOLDER)