Skip to content

Remove unused pub/sub API from the core adapter surface #97

Description

@derekste

Summary

Remove the Redis pub/sub API and implementation if no current consumer needs it.

Why

GRAFE and the current RedisAdapter stream contract use Redis Streams for data movement. Pub/sub is not part of the required GRAFE data path, and retaining it keeps extra connection, thread, callback, and lifecycle code in the core adapter.

This is especially relevant while evaluating redis-adapter-lite:

  • origin/main still exposes publish, subscribe, psubscribe, unsubscribe, and RedisConnection::subscriber().
  • origin/redis-adapter-lite removes cluster support but still includes pub/sub support and tests.
  • PR remove pub/sub features #59 was previously titled "remove pub/sub features", but current origin/main still contains a pub/sub surface.

Proposed investigation

  • Confirm whether any production GRAFE, redis-pvxs-ioc, or data-mover consumer still calls RedisAdapter pub/sub APIs.
  • If no current consumer exists, remove pub/sub from both the legacy adapter and the RedisAdapterLite path.
  • If one consumer still exists, isolate it behind a separate optional adapter instead of keeping pub/sub in the default core product API.

Acceptance criteria

  • The default RedisAdapter API used by GRAFE has no pub/sub methods or subscriber thread lifecycle.
  • Pub/sub tests/docs are removed or moved to an explicit optional component.
  • GRAFE builds and tests against the cleaned stream-only adapter surface.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions