Comments (5)
@spring-projects-issues
@nikos
@nemtsov
@rmorgan
from spring-data-mongodb.
Thank you for reaching out - If you'd like us to spend some time investigating, please take the time to provide a complete minimal sample (something that we can unzip or git clone, build, and deploy) that reproduces the problem.
from spring-data-mongodb.
I find it difficult to provide samples involving databases; it's very troublesome. Perhaps you could simply set up a project.
Define your converter:
@WritingConverter
public class EnumWriteConverter implements Converter<ConverterEnum, String> {
public EnumWriteConverter() {
}
public String convert(ConverterEnum source) {
return source.getValue();
}
}
Define the interface:
public interface ConverterEnum {
String getDescription();
@JsonValue
String getValue();
}
Define the enumeration:
public enum EnumCommerceItemDeletedEnum implements ConverterEnum {
ENUM_COMMERCE_ITEM_DELETED_DELETE("Delete", "DELETE"),
ENUM_COMMERCE_ITEM_DELETED_UNDELETE("Undelete", "UNDELETE");
EnumCommerceItemDeletedEnum(String description, String value) {
this.description = description;
this.value = value;
}
private final String value;
private final String description;
}
Then create a Spring Data interface:
@Aggregation({
"{$addFields: { '_idString': { $toString: '$_id' } }}",
"{$match: { userId: ?0 }}",
"{$match: { deletedEnum: ?1 }}",
"{$count: 'totalCount' }"
})
Mono<Long> count(String userId, EnumCommerceItemDeletedEnum deleted);
You can test two scenarios: one based on @Aggregation and one based on a named method. However, I have tested it before, and using repository.find(Example) does not cause such issues. Only when using @query or @Aggregation to execute queries with native SQL, the converter gets called multiple times.
from spring-data-mongodb.
from spring-data-mongodb.
thanks for the feedback - I see the invocations now. there's multiple things contributing to this. we'll look into those.
from spring-data-mongodb.
Related Issues (20)
- querydsl predicate using IN operator returns no results with @DBRef HOT 3
- Aggregation pipeline breaks if $replaceRoot stage is present HOT 3
- Misleading Change Streams documentation HOT 2
- Release 4.2.8 (2023.1.8)
- Release 4.3.2 (2024.0.2)
- MongoTemplate.count Specify strategy HOT 3
- Unable to Determine Generic Converter type HOT 1
- Switch to Broadcom docker proxy
- Using records as `@Unwrapped` auditing objects fails with `Cannot set property`
- Incorrect deserialization of a kotlin class when loading it from mongodb HOT 3
- Do not include mongo in liveness probe state HOT 2
- $all BadValue Exception if Collection with one element is passed HOT 3
- Aggregation.stage() containing a compound search deletes the first entry HOT 1
- Circular dependencies error caused by `MongoMappingContext` HOT 3
- Release 4.2.9 (2023.1.9)
- Release 4.3.3 (2024.0.3)
- Upgrade to MongoDB 5.1.2 driver. HOT 2
- @Query with sort does not work in Native Image (Unexpected AOP exception) HOT 1
- Issue referencing or using field value set with SetWindowFieldsOperation shift HOT 3
- @CompoundIndex ignores partialFilter when creating index & crashes on 2nd boot HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spring-data-mongodb.