Skip to content
This repository was archived by the owner on Nov 24, 2023. It is now read-only.
This repository was archived by the owner on Nov 24, 2023. It is now read-only.

make start-relay easier to use #2241

@lance6716

Description

@lance6716

Is your feature request related to a problem? Please describe

  1. I want to start relay to reduce the number of upstream binlog replication slaves, not care about which worker started relay so don't want to specify worker name. Currently I must specify worker name of the source is bound or free
  2. I want to specify the position from which the relay is pulling. Currently this is specified in source configuration file, which is hard to modify

Describe the feature you'd like

  1. start-relay -s <source-id>, stop-relay -s <source-id> to let current and future bound workers use relay to replicate.
    and this feature is exclusive from start-relay -s <source-id> <worker-names>, which means
    start-relay -s source1         # now DM will start relay for current and future bound workers
    start-relay -s source1 worker2 # DM will raise error: "this source has automatically started relay for bound worker, can't specify worker using relay now"
    stop-relay -s source1 worker1  # DM will raise error: "this source has automatically started relay for bound worker, can't specify worker stopping relay now"
    stop-relay -s source1          # now DM will stop relay for current and future bound workers
    start-relay -s source1 worker2 # DM will let worker2 pull relay log of source1
    start-relay -s source1         # DM will raise error: "this source has started relay for specified worker [worker1], can't automatically started relay for bound worker now"
    stop-relay -s source1          # DM will raise error: "this source has started relay for specified worker [worker1], can't automatically stop relay for bound worker now"
    stop-relay -s source1 worker2  # success
    
  2. start-relay -s <source-id> <worker-name> --binlog-file <filename> --binlog-pos <position> or start-relay -s <source-id> <worker-name> --binlog-gtid <gtid set>

Describe alternatives you've considered

No response

Teachability, Documentation, Adoption, Migration Strategy

No response

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