Uploaded image for project: 'Motor'
  1. Motor
  2. MOTOR-1155

Benchmark and use `mongocrypt_binary_t` definition to improve performance of In-Use Encryption

    • Hide

      DRIVERS-2581:
      Goal: Improve performance of In-Use Encryption for the workload identified in HELP-27047.

      Proposed changes for drivers:

      Refer to the changes made for the Java driver bindings:

      The benchmark may be useful for testing future performance improvements (DRIVERS-2718).

      Proposed changes may not benefit languages with no extra cost for calling into a C library: (C, C++, PHP via C driver) or drivers that are not using the crypto callbacks (Go).

      Show
      DRIVERS-2581 : Goal: Improve performance of In-Use Encryption for the workload identified in HELP-27047. Proposed changes for drivers: Benchmark throughput of decrypting documents with many (e.g. 1500) encrypted fields. The benchmark is specified here: https://github.com/mongodb/specifications/commit/db3114e957f7c0976a1af09882dbb46cb4a70049 Attempt to use fields of `mongocrypt_binary_t` to avoid calls to `mongocrypt_binary_data` and `mongocrypt_binary_len`. The fields are exported as of MONGOCRYPT-589 . Expect an improvement in throughput. Refer to the changes made for the Java driver bindings: Benchmark added in: https://github.com/mongodb/libmongocrypt/pull/690 Use of `mongocrypt_binary_t` fields done in: https://github.com/mongodb/libmongocrypt/pull/693 The benchmark may be useful for testing future performance improvements ( DRIVERS-2718 ). Proposed changes may not benefit languages with no extra cost for calling into a C library: (C, C++, PHP via C driver) or drivers that are not using the crypto callbacks (Go).

      This ticket was split from DRIVERS-2581, please see that ticket for a detailed description.

            Assignee:
            Unassigned Unassigned
            Reporter:
            dbeng-pm-bot PM Bot
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: