anchor.diff:  
   If for whatever reason, the aforementioned solution is deemed unacceptable, there are alternatives.
   
  -First, you can create a BSON Codec which will be automatically registered by Quarkus and will be used instead of the `PojoCodec`.
  +First, you can create a BSON Codec which will be automatically registered by Quarkus and will be used instead of the `PojoCodecProvider`.
   See this part of the documentation: link:mongodb#simplifying-mongodb-client-usage-using-bson-codec[Using BSON codec].
   
  -Another option is to use the `@BsonCreator` annotation to tell the `PojoCodec` to use the Kotlin data class default constructor,
  +Another option is to use the `@BsonCreator` annotation to tell the `PojoCodecProvider` to use the Kotlin data class default constructor,
   in this case all constructor parameters have to be annotated with `@BsonProperty`: see link:{mongodb-doc-root-url}/bson/pojos/#supporting-pojos-without-no-args-constructors[Supporting pojos without no args constructor].
   
   This will only work when the entity extends `PanacheMongoEntityBase` and not `PanacheMongoEntity`, as the ID field also needs to be included in the constructor.
  
positive.code: But this type of class comes with some limitations: all fields needs to be initialized at construction time or be marked as nullable,
  and the generated constructor needs to have as parameters all the fields of the data class.
  
  MongoDB with Panache uses the `PojoCodec`, a MongoDB codec which mandates the presence of a parameterless constructor.
  
  Therefore, if you want to use a data class as an entity class, you need a way to make Kotlin generate an empty constructor.
  To do so, you need to provide default values for all the fields of your classes.
  
negative.code: quarkus.log.category."io.quarkus.mongodb.panache.runtime".level=DEBUG
  ----
  
  == The PojoCodecProvider: easy object to BSON document conversion.
  
  MongoDB with Panache uses the link:{mongodb-doc-root-url}/bson/pojos[PojoCodecProvider], with link:{mongodb-doc-root-url}/pojos/#pojo-support[automatic POJO support,
  to automatically convert your object to a BSON document.
  
  In case you encounter the `org.bson.codecs.configuration.CodecConfigurationException` exception, it means the codec is not able to
  automatically convert your object.
  This codec obeys the Java Bean standard, so it will successfully convert a POJO using public fields or getters/setters.
  You can use `@BsonIgnore` to make a field, or a getter/setter, ignored by the codec.
  
  If your class doesn't obey these rules (for example by including a method that starts with `get` but is not a setter),
  you could provide a custom codec for it.
  Your custom codec will be automatically discovered and registered inside the codec registry.
  See link:mongodb#simplifying-mongodb-client-usage-using-bson-codec[Using BSON codec].
  
  == Transactions
  
  MongoDB offers ACID transactions since version 4.0.
  