*/
bool get_allow_sharded_objects();
+ bool can_sort_nibblewise() {
+ return true; // i support legacy sort order
+ }
+
void collect_metadata(map<string,string> *pm);
int statfs(struct statfs *buf);
virtual void set_allow_sharded_objects() = 0;
virtual bool get_allow_sharded_objects() = 0;
+ virtual bool can_sort_nibblewise() {
+ return false; // assume a backend cannot, unless it says otherwise
+ }
+
virtual int statfs(struct statfs *buf) = 0;
virtual void collect_metadata(map<string,string> *pm) { }
// if our map within recent history, try to add ourselves to the osdmap.
if (osdmap->test_flag(CEPH_OSDMAP_NOUP)) {
dout(5) << "osdmap NOUP flag is set, waiting for it to clear" << dendl;
+ } else if (!osdmap->test_flag(CEPH_OSDMAP_SORTBITWISE) &&
+ !store->can_sort_nibblewise()) {
+ dout(1) << "osdmap SORTBITWISE flag is NOT set but our backend does not support nibblewise sort" << dendl;
} else if (is_waiting_for_healthy() || !_is_healthy()) {
// if we are not healthy, do not mark ourselves up (yet)
dout(1) << "not healthy; waiting to boot" << dendl;