[MONGOCRYPT-561] Enable QE version 2 by default in libmongocrypt Created: 14/Mar/23  Updated: 28/Oct/23  Resolved: 21/Apr/23

Status: Closed
Project: Libmongocrypt
Component/s: None
Affects Version/s: None
Fix Version/s: 1.8.0, 1.8.0-alpha1

Type: Task Priority: Unknown
Reporter: Erwin Pe Assignee: Kevin Albertson
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by DRIVERS-2435 Update libmongocrypt payloads to new ... Closed
Binding Changes: Needed

 Description   

The protocol version 2 of Queryable Encryption shall be enabled by default in libmongocrypt so that drivers can start sending the QE v2 payload types against server version 7.0 and after.  The use_fle2_v2 flag in _mongocrypt_opts_t controls whether libmongocrypt uses v2 or the preview version.



 Comments   
Comment by Githook User [ 21/Apr/23 ]

Author:

{'name': 'Kevin Albertson', 'email': 'kevin.albertson@mongodb.com', 'username': 'kevinAlbs'}

Message: MONGOCRYPT-561 enable QEv2 protocol by default (#621)

  • default to using FLEv2 (aka QEv2)
  • replace TESTER_MONGOCRYPT_WITH_CRYPT_V2 with V1

Tests default to using V2, and must opt in to using V1

  • update _test_encrypt_fle2_encryption_placeholder for new default
  • enable QEv1 in QEv1 tests
  • fix incorrect payload in encrypted-payload.json

Old payload did not include 'e' field.

  • remove mongocrypt_setopt_fle2v2 from Java bindings

Calling is no longer necessary. QEv2 is now the default.

  • remove mongocrypt_setopt_fle2v2 from Node bindings

Calling is no longer necessary. QEv2 is now the default.

  • add fle2-find-range-explicit-v2/int32 test data

Intended for use in the Java and Python bindings tests.

  • update test_range_query_int32 in Python bindings
  • update testExplicitEncryptionDecryption in Java bindings
  • remove mongocrypt_setopt_fle2v2 from public API
Comment by Cloud GitHub Webhooks [ 21/Apr/23 ]

kevinAlbs merged a pull request (MONGOCRYPT-561 enable QEv2 protocol by default) into the following branch:
master: 98e2bf241d5d79be5456836e626c8cc069dd568f

Comment by Kevin Albertson [ 07/Apr/23 ]

Also consider removing mongocrypt_setopt_fle2v2. Drivers using libmongocrypt 1.8.0 will not need to support QEv1 and have no need for this method. mongocrypt_setopt_fle2v2 was introduced in 1.8.0-alpha0.

Requested here: https://mongodb.slack.com/archives/CFPHLTRMK/p1680871735246859?thread_ts=1680805653.511599&cid=CFPHLTRMK

Generated at Thu Feb 08 09:08:58 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.