What ‘sortbitwise’ flag means in Ceph?

George Shuklin
1 min readJul 4, 2016

--

That is a rather interesting question. A single answer I found so far leads to the pay-walled answer from Red Hat. I done some independent research, and I’d like to present information I gathered so far:

After upgrading, users should set the ‘sortbitwise’ flag to enable the new internal object sort order: ceph osd set sortbitwise
This flag is important for the new object enumeration API and for new backends like BlueStore.

From Ceph release notes.

commit 383185bfbae74797cdb44f50b4bf651422800ff1
Author: Sage Weil <sage@redhat.com>
Date: Fri Aug 7 16:14:09 2015 -0400

mon/OSDMonitor: osd set/unset sortbitwise

Add monitor command to flip the switch on the OSD hobject_t sort
order.

from git

First appearance in the source:

commit 138f58493715e386929f152424b70df37843541b
Author: John Spray <john.spray@redhat.com>
Date: Mon Aug 17 14:40:46 2015 -0400

osdc/Objecter: new-style pgls

Signed-off-by: John Spray <john.spray@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>

from git.

Related github issue: https://github.com/ceph/ceph/pull/4919/commits

Preliminary conclusion: sortbitwise is a change in the internal sorting algorithm. It is exposed to end-user only because of legacy (pre- jewel) compatibility. On any modern Ceph installation it should always be ‘on’.

--

--

George Shuklin

I work at Servers.com, most of my stories are about Ansible, Ceph, Python, Openstack and Linux. My hobby is Rust.