@@ -1918,42 +1918,6 @@ int mark_rowset_as_recycled(TxnKv* txn_kv, const std::string& instance_id, std::
19181918 return need_write_back ? 1 : 0 ;
19191919}
19201920
1921- int get_meta_rowset_key (Transaction* txn, const std::string& instance_id, int64_t tablet_id,
1922- const std::string& rowset_id, int64_t start_version, int64_t end_version,
1923- bool load_key, bool * exist) {
1924- std::string key =
1925- load_key ? versioned::meta_rowset_load_key ({instance_id, tablet_id, end_version})
1926- : versioned::meta_rowset_compact_key ({instance_id, tablet_id, end_version});
1927- RowsetMetaCloudPB rowset_meta;
1928- Versionstamp version;
1929- TxnErrorCode err = versioned::document_get (txn, key, &rowset_meta, &version);
1930- if (err == TxnErrorCode::TXN_KEY_NOT_FOUND) {
1931- VLOG_DEBUG << " not found load or compact meta_rowset_key."
1932- << " rowset_id=" << rowset_id << " start_version=" << start_version
1933- << " end_version=" << end_version << " key=" << hex (key);
1934- } else if (err != TxnErrorCode::TXN_OK) {
1935- LOG_INFO (" failed to get load or compact meta_rowset_key." )
1936- .tag (" rowset_id" , rowset_id)
1937- .tag (" start_version" , start_version)
1938- .tag (" end_version" , end_version)
1939- .tag (" key" , hex (key))
1940- .tag (" error_code" , err);
1941- return -1 ;
1942- } else if (rowset_meta.rowset_id_v2 () == rowset_id) {
1943- *exist = true ;
1944- VLOG_DEBUG << " found load or compact meta_rowset_key."
1945- << " rowset_id=" << rowset_id << " start_version=" << start_version
1946- << " end_version=" << end_version << " key=" << hex (key);
1947- } else {
1948- VLOG_DEBUG << " rowset_id does not match when find load or compact meta_rowset_key."
1949- << " rowset_id=" << rowset_id << " start_version=" << start_version
1950- << " end_version=" << end_version << " key=" << hex (key)
1951- << " found_rowset_id=" << rowset_meta.rowset_id_v2 ();
1952- }
1953- return 0 ;
1954- }
1955-
1956- >>>>>>> cbf318fd3b (2 )
19571921int InstanceRecycler::recycle_ref_rowsets (bool * has_unrecycled_rowsets) {
19581922 const std::string task_name = " recycle_ref_rowsets" ;
19591923 int64_t num_scanned = 0 ;
@@ -2092,45 +2056,6 @@ int InstanceRecycler::recycle_ref_rowsets(bool* has_unrecycled_rowsets) {
20922056 return scan_and_recycle (data_rowset_ref_count_key_start, data_rowset_ref_count_key_end,
20932057 std::move (recycle_func));
20942058}
2095- template <typename T>
2096- int mark_rowset_as_recycled (TxnKv* txn_kv, const std::string& instance_id, std::string_view key,
2097- T& rowset_meta_pb) {
2098- RowsetMetaCloudPB* rs_meta;
2099-
2100- if constexpr (std::is_same_v<T, RecycleRowsetPB>) {
2101- rs_meta = rowset_meta_pb.mutable_rowset_meta ();
2102- } else {
2103- rs_meta = &rowset_meta_pb;
2104- }
2105-
2106- bool need_write_back = false ;
2107- if ((!rs_meta->has_is_recycled () || !rs_meta->is_recycled ())) {
2108- rs_meta->set_is_recycled (true );
2109- need_write_back = true ;
2110- }
2111-
2112- if (need_write_back) {
2113- std::unique_ptr<Transaction> txn;
2114- TxnErrorCode err = txn_kv->create_txn (&txn);
2115- if (err != TxnErrorCode::TXN_OK) {
2116- LOG (WARNING) << " failed to create txn, instance_id=" << instance_id;
2117- return -1 ;
2118- }
2119- std::string val;
2120- if (!rowset_meta_pb.SerializeToString (&val)) {
2121- LOG (WARNING) << " failed to serialize rs_meta, instance_id=" << instance_id;
2122- return -1 ;
2123- }
2124- txn->put (key, val);
2125- err = txn->commit ();
2126- if (err != TxnErrorCode::TXN_OK) {
2127- LOG (WARNING) << " failed to commit txn, instance_id=" << instance_id;
2128- return -1 ;
2129- }
2130- }
2131- return need_write_back ? 1 : 0 ;
2132- >>>>>>> 6c6fe9717e (1 )
2133- }
21342059
21352060int InstanceRecycler::recycle_indexes () {
21362061 const std::string task_name = " recycle_indexes" ;
0 commit comments