redis / redis-om-dotnet

Object mapping, and more, for Redis and .NET
MIT License
441 stars 74 forks source link

AWS Memory DB for Redis | Index create issue #427

Closed srivathsa0205 closed 5 months ago

srivathsa0205 commented 5 months ago

i am using MeomryDb for Redis from AWS and trying to create index for my DB but i am getting an error as "SYNTAXERR JSON path must start with '$'. Invalid path: SORTABLE"

this is the command FT.CREATE position-idx ON Json PREFIX 1 RedisPostions SCHEMA $.RedisKey AS RedisKey TAG SEPARATOR | $.PositionId AS PositionId NUMERIC $.BranchCode AS BranchCode TAG SEPARATOR | $.ClientAccountCode AS ClientAccountCode TAG SEPARATOR | $.PositionType AS PositionType TAG SEPARATOR | $.UserId AS UserId TAG SEPARATOR | $.ClientUserId AS ClientUserId TAG SEPARATOR | $.PositionQuantity AS PositionQuantity NUMERIC SORTABLE | $.QuantityElected AS QuantityElected NUMERIC $.QuantityUnElected AS QuantityUnElected NUMERIC $.QuantityOverElected AS QuantityOverElected NUMERIC $.PositionTimestamp AS PositionTimestamp NUMERIC $.AccountShortName AS AccountShortName TAG SEPARATOR |

image
slorello89 commented 5 months ago

Hi @srivathsa0205 - Redis OM is a Redis query & search client, so really all I can offer by way of supporting this is to tell you to switch to using Search and Query (using Redis Enterprise(which is available in the AWS marketplace), Redis Cloud, or running your own Redis Stack instances).

MemoryDB's new search capabilities are an attempt to replicate the Redis' search and query API, they can't actually use the same software (because of licensing) so compatibility issues like this are inevitable.

FWIW, you might be able to remove Sortable=true. I don't know what that means for sortability, in Search and Query we use Sortable to instruct Redis to construct the index to optimize sorts for speed (at the cost of memory) - without it you can still sort (it's just slower). Not sure how MemoryDB works, I'd look into it but unlike RediSearch, they're closed source. So I won't speculate further.

srivathsa0205 commented 5 months ago

@slorello89 thank you! for the response.