summary refs log tree commit diff
path: root/parse_events.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2022-03-11 18:10:36 +0000
committerErik Johnston <erik@matrix.org>2022-03-11 18:10:36 +0000
commit07fb52b5d514b8ac6076126cf0c19724507aa910 (patch)
tree71e14597ed8d8c043dcdf349723d3a52b076aeb2 /parse_events.py
parentFix a bug in background updates wherein background updates are never run usin... (diff)
downloadsynapse-erikj/event_rs.tar.xz
Diffstat (limited to 'parse_events.py')
-rw-r--r--parse_events.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/parse_events.py b/parse_events.py
new file mode 100644

index 0000000000..e7ba2f7c9e --- /dev/null +++ b/parse_events.py
@@ -0,0 +1,50 @@ +import json +import time +from synapse.api.room_versions import RoomVersion, RoomVersions + +from synapse.events import make_event_from_dict + +import synapse_events + +with open("/home/erikj/git/synapse/hq_events", "rb") as f: + event_json = f.readlines() + +start = time.time() + +rust_events = [] + +for e in event_json: + e = e.strip() + e = e.replace(b"\\\\", b"\\") + event = synapse_events.from_bytes(e) + rust_events.append(event) + +now = time.time() + +print(f"Parsed rust event in {now - start:.2f} seconds") + +event_dicts = [] + +start = time.time() + +event_dicts = [] +for e in event_json: + e = e.strip() + e = e.replace(b"\\\\", b"\\") + event_dicts.append(json.loads(e.strip())) + +now = time.time() + +print(f"Parsed JSON in {now - start:.2f} seconds") + +events = [] + +start = time.time() + +for e in event_dicts: + event = make_event_from_dict(e, RoomVersions.V5) + events.append(event) + +now = time.time() + +print(f"Parsed event in {now - start:.2f} seconds")