Skip to content

LiveQueryServer crashes when configured to run with Redis cacheAdapter #9432

@evtimmy

Description

@evtimmy

Issue Description

Running ParseLiveQueryServer where a RedisCacheAdapter is also configured causes crash when ParseLiveQueryServer tries to use the cache adapter.

Steps to reproduce

  1. Run parse-server with ParseLiveQueryServer enabled. The cache adapter I configured via config.json like so:
 "cacheAdapter": {
  "module": "../Adapters/Cache/RedisCacheAdapter.js",
  "options": {
    "url": {{ printf "redis://%s-redis-cache-app-server-master:6379" .Release.Name | quote }}
    "password": {{ $redisAppServerCachePassword | quote }}
  }
}
  1. Subscribe a client to listen to a query
  2. Update an object that the query matches

Actual Outcome

error: RedisCacheAdapter error on get {"error":{}}
error: RedisCacheAdapter error on get {"error":{}}
An uncaught exception occurred: The client is closedStack Trace:
Error: The client is closed
at Commander._RedisClient_sendCommand (/parse-server/node_modules/@redis/client/dist/lib/client/index.js:510:31)
at Commander.commandsExecutor (/parse-server/node_modules/@redis/client/dist/lib/client/index.js:190:154)
at BaseClass.<computed> [as set] (/parse-server/node_modules/@redis/client/dist/lib/commander.js:8:29)
at RedisCacheAdapter.put (/parse-server/lib/Adapters/Cache/RedisCacheAdapter.js:85:24)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Expected Outcome

LiveQueryServer post update to client

Environment

Server

  • Parse Server version: 7.4.0-alpha.5
  • Local or remote host (AWS, Azure, Google Cloud, Heroku, Digital Ocean, etc): Azure

Client

  • SDK (iOS, Android, JavaScript, PHP, Unity, etc): iOS/Android

Workaround:

disable the redis cache adapter.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bounty:$20Bounty applies for fixing this issue (Parse Bounty Program)state:released-7.x.xstate:released-alphaReleased as alpha versiontype:bugImpaired feature or lacking behavior that is likely assumed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions