Skip to content

Direct channels do not respect collection level namespace configuration #381

@mfen

Description

@mfen

We have a shared service that produces data consumed by multiple, single namespace apps. These consuming apps set their namespace in globalRedisPrefix in settings.json, which applies to both collection and direct channels, i.e. it subscribes to <namespace>::<collection>::<_id>.

At the shared service, we dynamically set the appropriate namespace on mutation per the Fine Tuning example, but found the namespace set here would only apply to the collection level channel, not its corresponding direct channels. i.e. it would send to <collection>::<_id>.

While one workaround would be applying custom config on every collection at the subscribing apps to match the inconsistent dispatch naming, that is much clunkier than the global prefix and would still leave the inconsistent config and naming behaviour. The inconsistent namespacing also makes it harder to do things like subscribe to <namespace>* to observe all activity for a space.

I suggest that a collection level config namespace should match the global prefix behaviour in also applying to the direct channels, resulting in <namespace>::<collection>::<_id>.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions