New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
msg/async: no need to set the new once before binding #11804
Conversation
so the type of nonce in messengers is consistent with entity_addr_t::nonce. and it's more spatial efficient than uint64_t. Signed-off-by: Kefu Chai <kchai@redhat.com>
@tchaikov |
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
@tchaikov
And that on something simple as: Now running with my patch |
@tchaikov @yuyuyu101 I actually needed to fix what I also did in #11706, and then |
and Processor::bind() will set the new addr and nonce to myaddr once it binds the new listening address. Fixes: http://tracker.ceph.com/issues/17807 Signed-off-by: Willem Jan Withagen <wjw@digiware.nl> Signed-off-by: Kefu Chai <kchai@redhat.com>
@wjwithagen could you try this change again? |
@tchaikov But now I still get a hanging test: |
@tchaikov @yuyuyu101
And more or less the same needs to be done in rebind as well. I also note that there are a lot more |
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
@wjwithagen i will take a closer look at this issue tomorrow. |
@wjwithagen could you offer the steps to reproduce this issue? |
@tchaikov If I revert my change, I'm getting errors on tests where there is an OSD restart, and ceph or rados wants to connect again to that OSD. Connection is then refused due to a difference in the nonce. It can also be found in the OSD logfiles if debug level is high enough. it also complains about not matching NONCE. |
@wjwithagen so, in short, restarting OSD and then running |
@tchaikov |
The command failing is: And running te command manually on the commandline:
This last line continues until the command gets cancelled or osd.0 goes away. In the OSD log I find repeats of:
You'd need to up the loging to get it more verbose. But it tells you that the OSD has gone to BTW: |
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
and Processor::bind() will set the new addr to myaddr once it binds
the new listening address.
Fixes: http://tracker.ceph.com/issues/17807
Signed-off-by: Willem Jan Withagen wjw@digiware.nl
Signed-off-by: Kefu Chai kchai@redhat.com