| 315 | } |
| 316 | |
| 317 | int EventStorage::DelCheckPointFile(const string &maxfilename, const uint32_t &mintime, vector<string> *delfiles) { |
| 318 | EventFileManager eventfilemanager(option_, true); |
| 319 | int ret = eventfilemanager.DelCheckPointFile(maxfilename, mintime, delfiles); |
| 320 | LogVerbose("%s del check point size %zu", __func__, delfiles->size()); |
| 321 | if (ret == 0) { |
| 322 | for (auto file_name = delfiles->begin(); file_name != delfiles->end(); ++file_name) { |
| 323 | EventDataInfo info; |
| 324 | info.set_file_name(*file_name); |
| 325 | info.set_offset(0); |
| 326 | int ret = eventfilemanager.SetReadPos(info); |
| 327 | if (ret) { |
| 328 | return ret; |
| 329 | } |
| 330 | while (true) { |
| 331 | EventData data; |
| 332 | ret = eventfilemanager.ReadDataFromFile(&data); |
| 333 | if (ret == DATA_EMPTY) { |
| 334 | break; |
| 335 | } |
| 336 | if (ret == DATA_ERR) { |
| 337 | break; |
| 338 | } |
| 339 | if (data.gtid().size()) { |
| 340 | event_index_status status = event_index_->DeleteGTIDIndex(data.gtid()); |
| 341 | if (status != event_index_status::OK) { |
| 342 | return FILE_FAIL; |
| 343 | } |
| 344 | } |
| 345 | } |
| 346 | RemoveFile(*file_name); |
| 347 | } |
| 348 | } |
| 349 | return OK; |
| 350 | } |
| 351 | |
| 352 | int EventStorage::CheckGtidInData(const string >id, const EventDataInfo &data_info) { |
| 353 | int ret = OK; |
no test coverage detected