Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

hammer: osd: use GMT time for the object name of hitsets #7883

Merged
7 commits merged into from
Apr 6, 2016

Conversation

tchaikov
Copy link
Contributor

@tchaikov tchaikov commented Mar 2, 2016

@tchaikov tchaikov added this to the hammer milestone Mar 2, 2016
@tchaikov tchaikov changed the title Wip 12848 hammer osd: use GMT time for the object name of hitsets Mar 2, 2016
@ghost ghost self-assigned this Mar 2, 2016
@tchaikov tchaikov changed the title osd: use GMT time for the object name of hitsets [DNM] osd: use GMT time for the object name of hitsets Mar 3, 2016
@tchaikov
Copy link
Contributor Author

tchaikov commented Mar 3, 2016

will add a workaround to address the crc error, instead of disabling the upgrade tests of osd->mon

@tchaikov tchaikov assigned tchaikov and unassigned ghost Mar 3, 2016
@tchaikov
Copy link
Contributor Author

tchaikov commented Mar 3, 2016

changelog

  • rebased against master
  • add the workaround to encode pg_pool_t if GMT feature bit does not exist in the inc.encode_features.

@tchaikov
Copy link
Contributor Author

tchaikov commented Mar 5, 2016

@tchaikov tchaikov changed the title [DNM] osd: use GMT time for the object name of hitsets hammer: osd: use GMT time for the object name of hitsets Mar 5, 2016
@tchaikov tchaikov assigned ghost and unassigned tchaikov Mar 5, 2016
@ghost
Copy link

ghost commented Mar 5, 2016

great ! it will be in the next integration branch :-)

@tchaikov
Copy link
Contributor Author

tchaikov commented Mar 7, 2016

that would be great! thanks.

tchaikov and others added 7 commits March 24, 2016 19:54
* bump the encoding version of pg_hit_set_info_t to 2, so we can
  tell if the corresponding hit_set is named using localtime or
  GMT
* bump the encoding version of pg_pool_t to 20, so we can know
  if a pool is using GMT to name the hit_set archive or not. and
  we can tell if current cluster allows OSDs not support GMT
  mode or not.
* add an option named `osd_pool_use_gmt_hitset`. if enabled,
  the cluster will try to use GMT mode when creating a new pool
  if all the the up OSDs support GMT mode. if any of the
  pools in the cluster is using GMT mode, then only OSDs
  supporting GMT mode are allowed to join the cluster.

Fixes: ceph#9732
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 42f8c5d)

 Conflicts:
	src/include/ceph_features.h
	src/osd/ReplicatedPG.cc
	src/osd/osd_types.cc
	src/osd/osd_types.h
		fill pg_pool_t with default settings in master branch.
allow "ceph osd pool set $pool use_gmt_hitset <true|1>" as long as
the cluster supports gmt hitset.

Fixes: ceph#9732
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 03a1a3c)
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit cc2bcf7)

Conflicts:
	src/mon/OSDMonitor.cc
		use the old way to dump pool info
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 2bc5a48)

Conflicts:
	src/osd/osd_types.cc
		minor changes to resolve conflicts
* to ease the backport to hammer

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 5a4f6a8)

Conflicts:
	src/include/ceph_features.h
		minor changes to resolve conflicts
the gmt_hitset is enabled by default in the ctor of pg_pool_t, this
is intentional. because we want to remove this setting and make
gmt_hitset=true as a default in future. but this forces us to
disable it explicitly when preparing a new pool if any OSD does
not support gmt hitset.

Fixes: ceph#12968
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit e48cec3)

Conflicts:
	src/mon/OSDMonitor.cc
		remove unrelated hunk
as a workaround of ceph#12410

Fixes: ceph#12968
Signed-off-by: Kefu Chai <kchai@redhat.com>
@tchaikov
Copy link
Contributor Author

changelog

  • rebased against latest hammer
  • remove corpus change. it was added by mistake.
--- a/ceph-object-corpus
+++ b/ceph-object-corpus
@@ -1 +1 @@
-Subproject commit 47fbf8c6ae1fb4fca171ac86e98821a67fd32031
+Subproject commit ef8a3bd8f5d358bdb40a8d61abd25b24b033ed5b

@ghost
Copy link

ghost commented Mar 24, 2016

Ah, thanks for catching that. The integration tests are stalled (test infrastructure problems), no harm done :-)

ghost pushed a commit that referenced this pull request Apr 5, 2016
…me of hitsets

Reviewed-by: Loic Dachary <ldachary@redhat.com>
@ghost
Copy link

ghost commented Apr 6, 2016

It passed the hammer upgrade suite ( http://tracker.ceph.com/issues/14692#note-52 ) and the rados suite http://tracker.ceph.com/issues/14692#note-51).

This pull request was closed.
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants