* rgw: bug#17111 ERROR: got unexpected error when trying to read object: -2
@ 2016-09-14 3:33 Yang Joseph
[not found] ` <CADRKj5SZe1rQtqn7w3+Yw=ctdU=kkMBwGNUe_b_2rHs6dMesLQ@mail.gmail.com>
0 siblings, 1 reply; 2+ messages in thread
From: Yang Joseph @ 2016-09-14 3:33 UTC (permalink / raw)
To: owasserm; +Cc: yehuda, ceph-devel
Hello Oritwas,
I am aware of that you are responsible for the issue 17111
(http://tracker.ceph.com/issues/17111).
Actually, I proposed two fixes already. Could you please take a look at
them?
1.
https://github.com/ceph/ceph/pull/10820/commits/2e95e2c824c6cc829c39180b0f6809ff312e5892
In this proposal, I added two items into manifest :
src_instance
copied_object
"copied_object" is used to indicate whether this object is generated
through COPY operation.
If so, we must overwrite "instance" with "src_instance" in the GET
operation.
If not, go as before.
We don't need extra tools to fix the old object's manifest that created
before this patch, because
copied_object's default value is false.
2.
https://github.com/ceph/ceph/pull/10820/commits/5104f852d255cfc140be33885f696b7f93a6cfad
This is an optimized version. Only src_instance is added to manifest.
In order to distinguish object generated through COPY operation from
object generated through
PUT operation, I make the none copied object's src_instance equal to its
instance value.
So if src_instance not equal to its instance, this is a copied object.
However, this proposal need an extra tool to migrate old objects to new
version RGW with this patch.
Your comments are highly appreciated!
thx,
Yang Honggang
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: rgw: bug#17111 ERROR: got unexpected error when trying to read object: -2
[not found] ` <CADRKj5SZe1rQtqn7w3+Yw=ctdU=kkMBwGNUe_b_2rHs6dMesLQ@mail.gmail.com>
@ 2016-09-14 10:26 ` Yang Joseph
0 siblings, 0 replies; 2+ messages in thread
From: Yang Joseph @ 2016-09-14 10:26 UTC (permalink / raw)
To: Yehuda Sadeh-Weinraub; +Cc: ceph-devel, Javen Wu
On 09/14/2016 02:15 PM, Yehuda Sadeh-Weinraub wrote:
> On Tue, Sep 13, 2016 at 8:33 PM, Yang Joseph <joseph.yang@xtaotech.com> wrote:
>> Hello Oritwas,
>>
>> I am aware of that you are responsible for the issue 17111
>> (http://tracker.ceph.com/issues/17111).
>> Actually, I proposed two fixes already. Could you please take a look at
>> them?
>>
>> 1.
>> https://github.com/ceph/ceph/pull/10820/commits/2e95e2c824c6cc829c39180b0f6809ff312e5892
>>
>> In this proposal, I added two items into manifest :
>>
>> src_instance
>> copied_object
>>
>> "copied_object" is used to indicate whether this object is generated through
>> COPY operation.
>> If so, we must overwrite "instance" with "src_instance" in the GET
>> operation.
>> If not, go as before.
>>
>> We don't need extra tools to fix the old object's manifest that created
>> before this patch, because
>> copied_object's default value is false.
>>
>> 2.
>> https://github.com/ceph/ceph/pull/10820/commits/5104f852d255cfc140be33885f696b7f93a6cfad
>>
>> This is an optimized version. Only src_instance is added to manifest.
>> In order to distinguish object generated through COPY operation from object
>> generated through
>> PUT operation, I make the none copied object's src_instance equal to its
>> instance value.
>> So if src_instance not equal to its instance, this is a copied object.
>>
>> However, this proposal need an extra tool to migrate old objects to new
>> version RGW with this patch.
> Migration is really a no go. The way to go would be by having the
> decode function smart enough to know whether it's prior to the change
> or after the change and set the field accordingly. That been said, I
> think that instead of calling the field 'src_instance', call it
> 'tail_instance', and always use it when accessing the tail. When
> copying the object, copy that field. When creating a versioned object,
> that field should be equal to the instance field. When decoding an old
> object, it should be set appropriately. Does that make sense?
Good idea! I already commit a new modification according to your
suggestion. Please help review it
(https://github.com/ceph/ceph/pull/10820/files).
thx,
Yang Honggang
>
> Yehuda
>
>> Your comments are highly appreciated!
>>
>> thx,
>>
>> Yang Honggang
>>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-09-14 10:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-14 3:33 rgw: bug#17111 ERROR: got unexpected error when trying to read object: -2 Yang Joseph
[not found] ` <CADRKj5SZe1rQtqn7w3+Yw=ctdU=kkMBwGNUe_b_2rHs6dMesLQ@mail.gmail.com>
2016-09-14 10:26 ` Yang Joseph
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.