Fix a weird edge case with persisted empty event ids
No idea, how that happened and where it came from
This commit is contained in:
parent
795b8fb7dd
commit
c8a547630b
@ -2867,15 +2867,18 @@ Cache::clearTimeline(const std::string &room_id)
|
||||
if (passed_pagination_token) {
|
||||
if (obj.count("event_id") != 0) {
|
||||
std::string event_id = obj["event_id"].get<std::string>();
|
||||
evToOrderDb.del(txn, event_id);
|
||||
eventsDb.del(txn, event_id);
|
||||
relationsDb.del(txn, event_id);
|
||||
|
||||
std::string_view order{};
|
||||
bool exists = msg2orderDb.get(txn, event_id, order);
|
||||
if (exists) {
|
||||
order2msgDb.del(txn, order);
|
||||
msg2orderDb.del(txn, event_id);
|
||||
if (!event_id.empty()) {
|
||||
evToOrderDb.del(txn, event_id);
|
||||
eventsDb.del(txn, event_id);
|
||||
relationsDb.del(txn, event_id);
|
||||
|
||||
std::string_view order{};
|
||||
bool exists = msg2orderDb.get(txn, event_id, order);
|
||||
if (exists) {
|
||||
order2msgDb.del(txn, order);
|
||||
msg2orderDb.del(txn, event_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
lmdb::cursor_del(cursor);
|
||||
|
Loading…
Reference in New Issue
Block a user