mirror of
https://github.com/Mayuri-Chan/pyrofork.git
synced 2025-12-29 12:04:51 +00:00
Pyrofork: Clean usernames database before updating usernames database
Signed-off-by: wulan17 <wulan17@nusantararom.org>
This commit is contained in:
parent
3682733d8d
commit
7fca0e87bb
1 changed files with 9 additions and 1 deletions
|
|
@ -4,7 +4,7 @@ import time
|
|||
from typing import List, Tuple, Any
|
||||
|
||||
from .dummy_client import DummyMongoClient
|
||||
from pymongo import MongoClient, UpdateOne
|
||||
from pymongo import MongoClient, UpdateOne, DeleteMany
|
||||
from pyrogram.storage.storage import Storage
|
||||
from pyrogram.storage.sqlite_storage import get_input_peer
|
||||
|
||||
|
|
@ -124,6 +124,11 @@ class MongoStorage(Storage):
|
|||
|
||||
async def update_usernames(self, usernames: List[Tuple[int, str]]):
|
||||
s = int(time.time())
|
||||
bulk_delete = [
|
||||
DeleteMany(
|
||||
{'peer_id': i[0]}
|
||||
) for i in usernames
|
||||
]
|
||||
bulk = [
|
||||
UpdateOne(
|
||||
{'_id': i[1]},
|
||||
|
|
@ -136,6 +141,9 @@ class MongoStorage(Storage):
|
|||
]
|
||||
if not bulk:
|
||||
return
|
||||
await self._usernames.bulk_write(
|
||||
bulk_delete
|
||||
)
|
||||
await self._usernames.bulk_write(
|
||||
bulk
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue