Skip to content

Conversation

@bsbodden
Copy link
Collaborator

@bsbodden bsbodden commented Aug 26, 2025

Extends Redis OM Spring to support repository method patterns like
findByPositionsMapContainsCusip for querying nested fields within
Map values containing complex objects. This enables RDI-compatible
queries such as @positions_cusip:{AAPL} without requiring @query
annotations.

  • Add MapContains pattern detection in QueryClause for nested fields
  • Extend MetamodelGenerator to create metamodel fields for Map nested properties
  • Implement special query processing in RediSearchQuery for MapContains patterns
  • Support both simple Map value queries and complex nested field queries
  • Enable numeric comparisons on nested fields (GreaterThan, Between, etc.)

This allows Spring Data repository methods to naturally express queries
on nested fields within Map values, matching the RDI index structure
for JSON documents with complex Map fields.

@bsbodden bsbodden self-assigned this Aug 26, 2025
@bsbodden bsbodden added the enhancement New feature or request label Aug 26, 2025
@bsbodden bsbodden changed the title feat: add native repository method support for querying nested fields… feat: add native repository method support for querying nested fields in Map<String, ComplexObject> Aug 26, 2025
… in Map<String, ComplexObject>

  Extends Redis OM Spring to support repository method patterns like
  findByPositionsMapContainsCusip for querying nested fields within
  Map values containing complex objects. This enables RDI-compatible
  queries such as @positions_cusip:{AAPL} without requiring @query
  annotations.

  - Add MapContains pattern detection in QueryClause for nested fields
  - Extend MetamodelGenerator to create metamodel fields for Map nested properties
  - Implement special query processing in RediSearchQuery for MapContains patterns
  - Support both simple Map value queries and complex nested field queries
  - Enable numeric comparisons on nested fields (GreaterThan, Between, etc.)

  This allows Spring Data repository methods to naturally express queries
  on nested fields within Map values, matching the RDI index structure
  for JSON documents with complex Map fields.
@bsbodden bsbodden force-pushed the bsb/idx-complex-objects-in-maps branch from db3426c to f608607 Compare August 26, 2025 17:16
@bsbodden bsbodden merged commit 0e40303 into redis:main Aug 26, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant