[Openstack] swift ringbuilder and disk size/capacity relationship

Mark Kirkwood mark.kirkwood at catalyst.net.nz
Tue Mar 15 10:29:22 UTC 2016


On 15/03/16 22:21, Peter Brouwer wrote:
> PArtitions is used in the swift context, i.e. the partitions scheme the
> ring-builder uses. I'm assuming a whole physical disk is used, i.e.
> filesystem created on a disk using the whole physical disk.
> So the ring structure provides a reference to a swift partition and a
> disk location, right?
> What happens if the disk it is pointing to is full, does swift returns
> an error to the app/client or does it try a re-lookup in an attempt to
> find space elsewhere?

Ah sorry, I see you are in fact (correctly) talking about swift 
partitions and *not* disk partitions (confusing in your initial email).

So you are essentially saying what happens when the particular target 
disk is full. Swift tries to write objects or containers to a sufficient 
number of storage server devices (the exact number or proportion may 
depend on the schema defined for the specific profile - replicated or 
erasure...I haven't checked recent code ...John will know I 
think)...however if enough copies (or segments) are written then all is 
ok (so *some* disks can be full), however eventually too many will be 
full and you will get an error [1].

regards

Mark

[1] tested this with 4 servers and 8 devices.




More information about the Openstack mailing list