Add QE prefix+suffix GA and rename API to string

XMLWordPrintableJSON

    • 2
    • Hide

      DRIVERS-3321:
      Summary of necessary driver changes

      • Rename QE "text" APIs to "string"
        • rename TextOpts to StringOpts
        • rename "TextPreview" algorithm to "String"
        • add queryType "prefix"
        • add queryType "suffix"
        • document "prefix" and "suffix" as stable.
      • Update spec and prose tests for the new names.
      • Upgrade to libmongocrypt 1.19.1+ to support the new names.

      "substring" will be added in DRIVERS-3540 pending server changes.

      "prefixPreview" and "suffixPreview" are still experimental and planned for removal in DRIVERS-3548.

      The API renames break compatibility of experimental QE APIs. This is expected to be OK in a minor release since APIs were documented as "unstable API and subject to backwards breaking changes".

      Commits for syncing spec/prose tests

      Changelog

      • 2026-06-16: changed scope to only add "prefix" and "suffix" without dropping "prefixPreview" and "suffixPreview". Motivated by slack thread
      Show
      DRIVERS-3321 : Summary of necessary driver changes Rename QE "text" APIs to "string" rename TextOpts to StringOpts rename "TextPreview" algorithm to "String" add queryType "prefix" add queryType "suffix" document "prefix" and "suffix" as stable. Update spec and prose tests for the new names. Upgrade to libmongocrypt 1.19.1+ to support the new names. "substring" will be added in DRIVERS-3540 pending server changes. "prefixPreview" and "suffixPreview" are still experimental and planned for removal in DRIVERS-3548 . The API renames break compatibility of experimental QE APIs. This is expected to be OK in a minor release since APIs were documented as "unstable API and subject to backwards breaking changes". Commits for syncing spec/prose tests mongodb/specifications@c9b3ee made the initial change. mongodb/specifications@7a3f70 restored prefixPreview+suffixPreview. Changelog 2026-06-16: changed scope to only add "prefix" and "suffix" without dropping "prefixPreview" and "suffixPreview". Motivated by slack thread
    • Needed
    • None
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?
    • None
    • None
    • None
    • None
    • None
    • None

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

       


      Summary

      Support Queryable Encryption (QE) text indexes with prefix and suffix query types as Generally Available features in the Node.js driver.

      Background

      The Node.js driver currently supports QE text indexes (prefix, suffix, substring) as preview/experimental features (released in v6.19 via NODE-6911). These preview features use TextPreview as the algorithm name and prefixPreview/suffixPreview as query types.

      Server 9.0 will promote prefix and suffix query types to Generally Available (GA), deprecating the preview variants. The Node.js driver must be updated to support the GA naming conventions while maintaining backward compatibility requirements.

      This work is part of the broader SPM-4539: Queryable Encryption Prefix/Suffix GA Improvements initiative documented in the Queryable Encryption Initiative Plan (section 3.24).

      Acceptance Criteria

      See DRIVERS-3321

       

            Assignee:
            Sergey Zelenov
            Reporter:
            TPM Jira Automations Bot
            None
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: