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

mimic: multisite: data sync error repo processing does not back off on empty #24319

Merged
merged 8 commits into from Oct 17, 2018

Conversation

Projects
None yet
3 participants
@smithfarm
Copy link
Contributor

smithfarm commented Sep 28, 2018

@smithfarm smithfarm self-assigned this Sep 28, 2018

@smithfarm smithfarm added this to the mimic milestone Sep 28, 2018

@smithfarm smithfarm requested review from yehudasa and cbodley Sep 28, 2018

@smithfarm smithfarm added rgw and removed core labels Sep 28, 2018

@smithfarm

This comment has been minimized.

Copy link
Contributor

smithfarm commented Sep 28, 2018

Non-trivial conflict resolution in the last commit

@smithfarm

This comment has been minimized.

Copy link
Contributor

smithfarm commented Sep 28, 2018

/home/jenkins-build/build/workspace/ceph-pull-requests/src/rgw/rgw_data_sync.cc: In member function 'utime_t RGWDataSyncShardCR::get_idle_interval() const':
/home/jenkins-build/build/workspace/ceph-pull-requests/src/rgw/rgw_data_sync.cc:1538:62: error: no matching function for call to 'utime_t::utime_t(std::chrono::time_point<ceph::time_detail::coarse_real_clock>)'
     return utime_t(ceph::coarse_real_clock::zero() + interval);
                                                              ^
@cbodley

This comment has been minimized.

Copy link
Contributor

cbodley commented Sep 28, 2018

@smithfarm it looks like that pr depends on changes to utime_t from #21893

cbodley added some commits May 8, 2018

include: utime_t can convert from ceph::coarse_real_time
instead of accepting ceph::real_time directly, the converting
constructor takes a std::chrono::time_point<Clock>, constrained to
clocks that support timespec conversions. this currently just means
ceph::real_time and ceph::coarse_real_time

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 61fb248)
encoding: add test for ceph::coarse_real_time
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit e4030ea)

Conflicts:
	src/test/encoding/test_ceph_time.h
	src/test/encoding/types.h
encoding: constrain the time_point templates
disable use of encode/decode for time_points that don't provide
conversions to/from timespec. these are only intended for use by
real_clock and coarse_real_clock

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 427655e)
encoding: add overloads for chrono durations
std::chrono::durations can be encoded in the same format as time_points
and utime_t

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 5c08f2c)

Conflicts:
	src/test/encoding/test_ceph_time.h
	src/test/encoding/types.h
rgw: use coarse_real_clock for req_state::time
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit d928490)
rgw: data sync uses coarse clock for error_retry_time
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 233ee9c)
common: adding missing ceph::coarse_real_clock helpers
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 11cd425)
rgw: data sync respects error_retry_time for backoff on error_repo
don't restart processing the error_repo until error_retry_time. when
data sync is otherwise idle, don't sleep past error_retry_time

Fixes: http://tracker.ceph.com/issues/26938

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit eb65532)

Conflicts:
	src/rgw/rgw_data_sync.cc

@smithfarm smithfarm force-pushed the smithfarm:wip-35979-mimic branch from 67dd33e to b783c6b Oct 2, 2018

@smithfarm

This comment has been minimized.

Copy link
Contributor

smithfarm commented Oct 2, 2018

@cbodley OK, brought in some commits . . . we'll see what Jenkins has to say.

@yuriw

This comment has been minimized.

Copy link
Contributor

yuriw commented Oct 15, 2018

@yuriw yuriw merged commit 742f11c into ceph:mimic Oct 17, 2018

4 checks passed

Docs: build check OK - docs built
Details
Signed-off-by all commits in this PR are signed
Details
Unmodified Submodules submodules for project are unmodified
Details
make check make check succeeded
Details

@smithfarm smithfarm deleted the smithfarm:wip-35979-mimic branch Oct 17, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment