• David Baker's avatar
    Branch to test bulk decryption of events · 7647fe45
    David Baker authored
    A bunch of terrible hacks to test how much speed we would gain at
    startup by decrypting events in a batch. That is:
     * Trying to decrypt events once before putting them in the timeline
       to avoid an Event.decrypted for every encrypted event we load from
       disk at startup.
     * When we load batches of events from the store at startup, fetch the
       keys from indexeddb in batches too rather than a separate txn for
       every event (and don't fetch the same session multiple times for
       messages in the same session and the same batch).
    
    Further optimisations that could be applied:
     * Re-use inbound group sessions for multiple messages within the same
       session rather than unpickling a separate one for each message.
     * Not decrypting events until we actually need them
     * Long standing store issues, ie. not storing message data as one
       giant monolithic blob that we have to load at startup.
    7647fe45
OlmDevice.js 51.8 KB