As seen in matrix-org/complement-crypto#122 which times out due to how slow it gets with encryption enabled via .Passphrase being set on the client_builder.
Example timings:
TestAliceBobEncryptionWorks/{rust_hs1}|{rust_hs1} - this creates 2 clients, 1 room and Alice sends 1 message to Bob. It's the simplest E2EE test. 910ms without encrypted DB, 4.86s with.
TestFallbackKeyIsUsedIfOneTimeKeysRunOut - this consumes all OTKs (blocking the client uploading more) then claims the fallback key, so it will cause the client to re-upload 50 OTKs. 2.52s without, 8.43s with.
- Overall: 3m29s to run without, 9m28s to run with.
This is 3-5x worse.
This means I can't realistically enable encrypted DBs in tests, which is desirable in order to match EX.
As seen in matrix-org/complement-crypto#122 which times out due to how slow it gets with encryption enabled via
.Passphrasebeing set on theclient_builder.Example timings:
TestAliceBobEncryptionWorks/{rust_hs1}|{rust_hs1}- this creates 2 clients, 1 room and Alice sends 1 message to Bob. It's the simplest E2EE test. 910ms without encrypted DB, 4.86s with.TestFallbackKeyIsUsedIfOneTimeKeysRunOut- this consumes all OTKs (blocking the client uploading more) then claims the fallback key, so it will cause the client to re-upload 50 OTKs. 2.52s without, 8.43s with.This is 3-5x worse.
This means I can't realistically enable encrypted DBs in tests, which is desirable in order to match EX.