MCPcopy Create free account
hub / github.com/baidu/tera / CreateTabletFile

Method CreateTabletFile

src/master/test/trackable_gc_test.cc:64–91  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

62 }
63
64 TabletFile CreateTabletFile(uint64_t tablet_id, uint32_t lg_id, uint64_t file_id,
65 bool create_local_file = false) {
66 TabletFile tablet_file;
67 tablet_file.tablet_id = tablet_id;
68 tablet_file.lg_id = lg_id;
69 tablet_file.file_id = file_id;
70
71 if (create_local_file) {
72 leveldb::Env* env = io::LeveldbBaseEnv();
73 std::string table_path = FLAGS_tera_tabletnode_path_prefix + kTableName_;
74 std::string path;
75
76 if (lg_id == 0 && file_id == 0) {
77 path = leveldb::BuildTabletPath(table_path, tablet_id);
78 EXPECT_TRUE(env->CreateDir(path).ok());
79 } else {
80 path = leveldb::BuildTableFilePath(table_path, tablet_id, lg_id, file_id);
81 size_t dir_pos = path.rfind("/");
82 EXPECT_TRUE(dir_pos != std::string::npos);
83 EXPECT_TRUE(env->CreateDir(path.substr(0, dir_pos)).ok());
84 leveldb::WritableFile* writable_file;
85 EXPECT_TRUE(env->NewWritableFile(path, &writable_file, EnvOptions()).ok());
86 delete writable_file;
87 }
88 }
89
90 return tablet_file;
91 }
92
93 TabletInheritedFileInfo CreateTabletInheritedFileInfo(const TabletPtr& tablet,
94 const TabletFile& tablet_file) {

Callers

nothing calls this directly

Calls 7

LeveldbBaseEnvFunction · 0.85
BuildTabletPathFunction · 0.85
BuildTableFilePathFunction · 0.85
EnvOptionsClass · 0.85
okMethod · 0.45
CreateDirMethod · 0.45
NewWritableFileMethod · 0.45

Tested by

no test coverage detected