You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[default-nioEventLoopGroup-1-3] ERROR i.m.m.health.indicator.HealthResult - Health indicator [mongodb (Primary)] reported exception: com.mongodb.MongoClientException: Exception in encryption library: command not supported for auto encryption: buildinfo
In order to support encryption, either the hardcoded command needs to be a bypassable one, or users should be able to configure the command to run in their YAML.
Steps To Reproduce
Specify an encrypted MongoClient bean to be eagerly created at startup, i.e.:
@Factory
class MongoFactory {
@Context
MongoClient mongoClient() {
(...create the CSFLE client here)
}
Start application and observe logs
Environment Information
MacOS Monterey 12.2.1
SDK 1.8.0_211
Example Application
No response
Version
2.3.1
The text was updated successfully, but these errors were encountered:
UPDATE - https://jira.mongodb.org/projects/MONGOCRYPT/issues/MONGOCRYPT-308 has added buildInfo to the list of bypassable commands, but I think that because the MongoHealthIndicator class calls buildinfo instead (note the lower case), it isn't passing the check as per mongodb/libmongocrypt@591bcfa. So I think the fix is now just a matter of changing the buildinfo call to buildInfo. Happy to raise a PR if needed.
I still wanted to use the health indicator, I just wanted it to work for encrypted client. Currently we're just replacing the class with our own that uses ping (which is flagged as bypassable) instead of buildinfo, but would be nice to not have to do this.
Expected Behavior
Application starts up no errors
Actual Behaviour
Then the following error appears in the logs:
This seems to be because
MongoHealthIndicator
uses the "buildinfo" command, which isn't a command that the mongocrypt library currently considers bypassable (https://jira.mongodb.org/projects/MONGOCRYPT/issues/MONGOCRYPT-308; https://github.com/mongodb/specifications/blob/master/source/client-side-encryption/client-side-encryption.rst#libmongocrypt-auto-encryption-allow-list).In order to support encryption, either the hardcoded command needs to be a bypassable one, or users should be able to configure the command to run in their YAML.
Steps To Reproduce
Specify an encrypted MongoClient bean to be eagerly created at startup, i.e.:
Start application and observe logs
Environment Information
Example Application
No response
Version
2.3.1
The text was updated successfully, but these errors were encountered: