On Thu, Jun 14, 2012 at 1:41 AM, Greg Farnum <g...@inktank.com> wrote:
> On Wednesday, June 13, 2012 at 1:37 PM, Florian Haas wrote:
>> Greg,
>>
>> My understanding of Ceph code internals is far too limited to comment on
>> your specific points, but allow me to ask a naive question.
>>
>> Couldn't you be stealing a lot of ideas from SCSI-3 Persistent
>> Reservations? If you had server-side (OSD) persistence of information of
>> the "this device is in use by X" type (where anything other than X would
>> get an I/O error when attempting to access data), and you had a manual,
>> authenticated override akin to SCSI PR preemption, plus key
>> registration/exchange for that authentication, then you would at least
>> have to have the combination of a misbehaving OSD plus a malicious
>> client for data corruption. A non-malicious but just broken client
>> probably won't do.
>>
>> Clearly I may be totally misguided, as Ceph is fundamentally
>> decentralized and SCSI isn't, but if PR-ish behavior comes even close to
>> what you're looking for, grabbing those ideas would look better to me
>> than designing your own wheel.
>
> Yeah, the problem here is exactly that Ceph (and RBD) are fundamentally 
> decentralized. :)

True, but as a general comment I do posit that to say "X is not
exactly like Y, thus nothing applicable to X applies to Y" is a
fallacy. :)

> I'm not familiar with the SCSI PR mechanism either, but it looks to me like 
> it deals in entirely local information — the equivalent with RBD would 
> require performing a locking operation on every object in the RBD image 
> before you accessed it. We could do that, but then opening an image would 
> take time linear in its size… :(

Well you would make this configurable and optional, wouldn't you? Kind
of like no-one forces people to use PRs on SCSI LUs. When this is
being used, however, taking a performance hit on open sounds like a
reasonable price to pay for not shredding data. TANSTAAFL.

Again, this is just my poorly informed two cents. :)

Cheers,
Florian
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to