rocketmq icon indicating copy to clipboard operation
rocketmq copied to clipboard

[Bug] slave node did not synchronize topicQueueTable

Open yx9o opened this issue 1 year ago • 7 comments

Before Creating the Bug Report

  • [X] I found a bug, not just asking a question, which should be created in GitHub Discussions.

  • [X] I have searched the GitHub Issues and GitHub Discussions of this repository and believe that this is not a duplicate.

  • [X] I have confirmed that this bug belongs to the current repository, not other repositories of RocketMQ.

Runtime platform environment

Linux

RocketMQ version

4.9.8

JDK Version

jdk 1.8

Describe the Bug

I want to implement master-slave switching through commands. After the master stops, I change the slave configuration to master. The offset produced is not continuous, which means that the data during the period of catching up with the consumption progress cannot be consumed. image image image image

Steps to Reproduce

  1. Run a group of master-slave production and consumption data
  2. Stop the master and change the slave configuration to the master through commands
  3. The offset of the production message seen at this time is not continuous, while the offset of consumption is continuous

What Did You Expect to See?

After the slave node switches to the master, the offset produced is continuous.

What Did You See Instead?

The offset produced is not continuous.

Additional Context

No response

yx9o avatar Aug 15 '24 09:08 yx9o

Slave node synchronization is a scheduled task. There is a time interval for synchronization. There may be some cases where there is no synchronization, but it should not affect

humkum avatar Aug 15 '24 12:08 humkum

Slave node synchronization is a scheduled task. There is a time interval for synchronization. There may be some cases where there is no synchronization, but it should not affect

Those two tables are not in the synchronization task.

yx9o avatar Aug 21 '24 04:08 yx9o

offsetTable is in scheduled task, see syncAll() , lmqOffsetTable is not in scheduled task. lmqOffsetTable synchronization should fix in ISSUE #8509

humkum avatar Aug 28 '24 09:08 humkum

What has been synchronized is the consumption progress. The problem I am describing here is the offset returned when sending a message. These are two different things.

yx9o avatar Aug 28 '24 09:08 yx9o

Sorry, it's my fault.In this case, it seems that the data from the master node has not been synchronized to slave successfully, otherwise the offset should be continuous.

humkum avatar Aug 28 '24 12:08 humkum

If you are interested, you can test it and you will understand.

yx9o avatar Aug 28 '24 13:08 yx9o

Can you post the detailed master-slave switching process and logs?

David-on-Code avatar Sep 13 '24 05:09 David-on-Code

This issue is stale because it has been open for 365 days with no activity. It will be closed in 3 days if no further activity occurs.

github-actions[bot] avatar Sep 14 '25 00:09 github-actions[bot]

This issue was closed because it has been inactive for 3 days since being marked as stale.

github-actions[bot] avatar Sep 18 '25 00:09 github-actions[bot]