Loading ifs/CMakeLists.txt +2 −2 Original line number Diff line number Diff line Loading @@ -39,7 +39,7 @@ include_directories(include ${ROCKSDB_INCLUDE_DIR} include_directories(include) set(SOURCE_FILES main.cpp main.hpp configure.hpp set(SOURCE_FILES main.cpp main.hpp configure.hpp util.cpp src/db/db_util.cpp src/classes/fs_data.cpp src/classes/rpc_data.cpp include/db/db_util.hpp include/classes/fs_data.hpp include/classes/rpc_data.hpp Loading @@ -49,7 +49,7 @@ set(SOURCE_FILES main.cpp main.hpp configure.hpp include/rpc/rpc_defs.hpp include/rpc/rpc_types.hpp src/daemon/fs_operations.cpp src/daemon/fs_operations.cpp include/daemon/fs_operations.hpp src/adafs_ops/metadentry.cpp include/adafs_ops/metadentry.hpp src/db/db_ops.cpp src/db/db_ops.cpp include/db/db_ops.hpp) src/daemon/fs_operations.cpp src/daemon/fs_operations.cpp include/daemon/fs_operations.hpp src/adafs_ops/metadentry.cpp include/adafs_ops/metadentry.hpp src/db/db_ops.cpp src/db/db_ops.cpp include/db/db_ops.hpp src/rpc/handler/h_metadentry.cpp src/rpc/sender/c_metadentry.cpp include/rpc/sender/c_metadentry.hpp) add_executable(adafs_daemon ${SOURCE_FILES}) target_link_libraries(adafs_daemon ${ROCKSDB_LIBRARIES} # rocksdb libs Loading ifs/include/adafs_ops/metadentry.hpp +4 −0 Original line number Diff line number Diff line Loading @@ -11,4 +11,8 @@ int create_node(const std::string& path, const uid_t uid, const gid_t gid, mode_ int create_metadentry(const std::string& path, mode_t mode); int db_metadentry_to_stat(const std::string& path, struct stat& attr); int get_attr(const std::string& path, struct stat* attr); #endif //IFS_METADENTRY_HPP ifs/include/classes/fs_data.hpp +46 −5 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ private: std::hash<std::string> hashf_; // inodes // fuse_ino_t inode_count_; ino_t inode_count_; // Later the blocksize will likely be coupled to the chunks to allow individually big chunk sizes. blksize_t blocksize_; Loading Loading @@ -49,6 +49,16 @@ private: rocksdb::WriteOptions rdb_write_options_; std::string rdb_path_; // configurable metadata bool atime_state_; bool mtime_state_; bool ctime_state_; bool uid_state_; bool gid_state_; bool inode_no_state_; bool link_cnt_state_; bool blocks_state_; public: // mutex has a deleted method to assign an existing mutex. As such it cannot use getter or setters Loading @@ -66,7 +76,7 @@ public: // Utility member functions // fuse_ino_t raise_inode_count(fuse_ino_t count); ino_t raise_inode_count(ino_t count); bool is_local_op(size_t recipient); Loading @@ -82,9 +92,9 @@ public: void hashf(const std::hash<std::string>& hashf_); // fuse_ino_t inode_count() const; // // void inode_count(fuse_ino_t inode_count); ino_t inode_count() const; void inode_count(ino_t inode_count); blksize_t blocksize() const; Loading Loading @@ -158,6 +168,37 @@ public: void rpc_port(std::string rpc_port); bool atime_state() const; void atime_state(bool atime_state); bool mtime_state() const; void mtime_state(bool mtime_state); bool ctime_state() const; void ctime_state(bool ctime_state); bool uid_state() const; void uid_state(bool uid_state); bool gid_state() const; void gid_state(bool gid_state); bool inode_no_state() const; void inode_no_state(bool inode_no_state); bool link_cnt_state() const; void link_cnt_state(bool link_cnt_state); bool blocks_state() const; void blocks_state(bool blocks_state); }; Loading ifs/include/classes/rpc_data.hpp +3 −37 Original line number Diff line number Diff line Loading @@ -32,14 +32,7 @@ private: // TODO RPC client IDs // RPC client IDs hg_id_t rpc_minimal_id_; hg_id_t rpc_srv_create_dentry_id_; hg_id_t rpc_srv_create_mdata_id_; hg_id_t rpc_srv_attr_id_; hg_id_t rpc_srv_lookup_id_; hg_id_t rpc_srv_remove_dentry_id_; hg_id_t rpc_srv_remove_mdata_id_; hg_id_t rpc_srv_read_data_id_; hg_id_t rpc_srv_write_data_id_; hg_id_t rpc_srv_create_node_id_; public: Loading Loading @@ -94,37 +87,10 @@ public: lru11::Cache<uint64_t, hg_addr_t>& address_cache(); hg_id_t rpc_srv_attr_id() const; hg_id_t rpc_srv_create_node_id() const; void rpc_srv_attr_id(hg_id_t rpc_srv_attr_id); void rpc_srv_create_node_id(hg_id_t rpc_srv_create_node_id); hg_id_t rpc_srv_create_dentry_id() const; void rpc_srv_create_dentry_id(hg_id_t rpc_srv_create_dentry_id); hg_id_t rpc_srv_create_mdata_id() const; void rpc_srv_create_mdata_id(hg_id_t rpc_srv_create_mdata_id); hg_id_t rpc_srv_lookup_id() const; void rpc_srv_lookup_id(hg_id_t rpc_srv_lookup_id); hg_id_t rpc_srv_remove_dentry_id() const; void rpc_srv_remove_dentry_id(hg_id_t rpc_srv_remove_dentry_id); hg_id_t rpc_srv_remove_mdata_id() const; void rpc_srv_remove_mdata_id(hg_id_t rpc_srv_remove_mdata_id); hg_id_t rpc_srv_read_data_id() const; void rpc_srv_read_data_id(hg_id_t rpc_srv_read_data_id); hg_id_t rpc_srv_write_data_id() const; void rpc_srv_write_data_id(hg_id_t rpc_srv_write_data_id); }; Loading ifs/include/daemon/adafs_daemon.hpp +4 −0 Original line number Diff line number Diff line Loading @@ -16,7 +16,11 @@ void destroy_enviroment(); bool init_argobots(); void destroy_argobots(); bool init_rpc_server(); void register_server_rpcs(); bool init_rpc_client(); void register_client_rpcs(); #endif //IFS_ADAFS_DAEMON_HPP Loading
ifs/CMakeLists.txt +2 −2 Original line number Diff line number Diff line Loading @@ -39,7 +39,7 @@ include_directories(include ${ROCKSDB_INCLUDE_DIR} include_directories(include) set(SOURCE_FILES main.cpp main.hpp configure.hpp set(SOURCE_FILES main.cpp main.hpp configure.hpp util.cpp src/db/db_util.cpp src/classes/fs_data.cpp src/classes/rpc_data.cpp include/db/db_util.hpp include/classes/fs_data.hpp include/classes/rpc_data.hpp Loading @@ -49,7 +49,7 @@ set(SOURCE_FILES main.cpp main.hpp configure.hpp include/rpc/rpc_defs.hpp include/rpc/rpc_types.hpp src/daemon/fs_operations.cpp src/daemon/fs_operations.cpp include/daemon/fs_operations.hpp src/adafs_ops/metadentry.cpp include/adafs_ops/metadentry.hpp src/db/db_ops.cpp src/db/db_ops.cpp include/db/db_ops.hpp) src/daemon/fs_operations.cpp src/daemon/fs_operations.cpp include/daemon/fs_operations.hpp src/adafs_ops/metadentry.cpp include/adafs_ops/metadentry.hpp src/db/db_ops.cpp src/db/db_ops.cpp include/db/db_ops.hpp src/rpc/handler/h_metadentry.cpp src/rpc/sender/c_metadentry.cpp include/rpc/sender/c_metadentry.hpp) add_executable(adafs_daemon ${SOURCE_FILES}) target_link_libraries(adafs_daemon ${ROCKSDB_LIBRARIES} # rocksdb libs Loading
ifs/include/adafs_ops/metadentry.hpp +4 −0 Original line number Diff line number Diff line Loading @@ -11,4 +11,8 @@ int create_node(const std::string& path, const uid_t uid, const gid_t gid, mode_ int create_metadentry(const std::string& path, mode_t mode); int db_metadentry_to_stat(const std::string& path, struct stat& attr); int get_attr(const std::string& path, struct stat* attr); #endif //IFS_METADENTRY_HPP
ifs/include/classes/fs_data.hpp +46 −5 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ private: std::hash<std::string> hashf_; // inodes // fuse_ino_t inode_count_; ino_t inode_count_; // Later the blocksize will likely be coupled to the chunks to allow individually big chunk sizes. blksize_t blocksize_; Loading Loading @@ -49,6 +49,16 @@ private: rocksdb::WriteOptions rdb_write_options_; std::string rdb_path_; // configurable metadata bool atime_state_; bool mtime_state_; bool ctime_state_; bool uid_state_; bool gid_state_; bool inode_no_state_; bool link_cnt_state_; bool blocks_state_; public: // mutex has a deleted method to assign an existing mutex. As such it cannot use getter or setters Loading @@ -66,7 +76,7 @@ public: // Utility member functions // fuse_ino_t raise_inode_count(fuse_ino_t count); ino_t raise_inode_count(ino_t count); bool is_local_op(size_t recipient); Loading @@ -82,9 +92,9 @@ public: void hashf(const std::hash<std::string>& hashf_); // fuse_ino_t inode_count() const; // // void inode_count(fuse_ino_t inode_count); ino_t inode_count() const; void inode_count(ino_t inode_count); blksize_t blocksize() const; Loading Loading @@ -158,6 +168,37 @@ public: void rpc_port(std::string rpc_port); bool atime_state() const; void atime_state(bool atime_state); bool mtime_state() const; void mtime_state(bool mtime_state); bool ctime_state() const; void ctime_state(bool ctime_state); bool uid_state() const; void uid_state(bool uid_state); bool gid_state() const; void gid_state(bool gid_state); bool inode_no_state() const; void inode_no_state(bool inode_no_state); bool link_cnt_state() const; void link_cnt_state(bool link_cnt_state); bool blocks_state() const; void blocks_state(bool blocks_state); }; Loading
ifs/include/classes/rpc_data.hpp +3 −37 Original line number Diff line number Diff line Loading @@ -32,14 +32,7 @@ private: // TODO RPC client IDs // RPC client IDs hg_id_t rpc_minimal_id_; hg_id_t rpc_srv_create_dentry_id_; hg_id_t rpc_srv_create_mdata_id_; hg_id_t rpc_srv_attr_id_; hg_id_t rpc_srv_lookup_id_; hg_id_t rpc_srv_remove_dentry_id_; hg_id_t rpc_srv_remove_mdata_id_; hg_id_t rpc_srv_read_data_id_; hg_id_t rpc_srv_write_data_id_; hg_id_t rpc_srv_create_node_id_; public: Loading Loading @@ -94,37 +87,10 @@ public: lru11::Cache<uint64_t, hg_addr_t>& address_cache(); hg_id_t rpc_srv_attr_id() const; hg_id_t rpc_srv_create_node_id() const; void rpc_srv_attr_id(hg_id_t rpc_srv_attr_id); void rpc_srv_create_node_id(hg_id_t rpc_srv_create_node_id); hg_id_t rpc_srv_create_dentry_id() const; void rpc_srv_create_dentry_id(hg_id_t rpc_srv_create_dentry_id); hg_id_t rpc_srv_create_mdata_id() const; void rpc_srv_create_mdata_id(hg_id_t rpc_srv_create_mdata_id); hg_id_t rpc_srv_lookup_id() const; void rpc_srv_lookup_id(hg_id_t rpc_srv_lookup_id); hg_id_t rpc_srv_remove_dentry_id() const; void rpc_srv_remove_dentry_id(hg_id_t rpc_srv_remove_dentry_id); hg_id_t rpc_srv_remove_mdata_id() const; void rpc_srv_remove_mdata_id(hg_id_t rpc_srv_remove_mdata_id); hg_id_t rpc_srv_read_data_id() const; void rpc_srv_read_data_id(hg_id_t rpc_srv_read_data_id); hg_id_t rpc_srv_write_data_id() const; void rpc_srv_write_data_id(hg_id_t rpc_srv_write_data_id); }; Loading
ifs/include/daemon/adafs_daemon.hpp +4 −0 Original line number Diff line number Diff line Loading @@ -16,7 +16,11 @@ void destroy_enviroment(); bool init_argobots(); void destroy_argobots(); bool init_rpc_server(); void register_server_rpcs(); bool init_rpc_client(); void register_client_rpcs(); #endif //IFS_ADAFS_DAEMON_HPP