]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: MultipartObjectProcessor supports stripe size > chunk size
authorCasey Bodley <cbodley@redhat.com>
Thu, 30 Jan 2020 20:11:42 +0000 (15:11 -0500)
committerCasey Bodley <cbodley@redhat.com>
Thu, 30 Jan 2020 20:18:50 +0000 (15:18 -0500)
the head object for a multipart part should contain the entire stripe,
unlike a normal object where the head only contains the first chunk of
data (because it has to be written atomically)

Fixes: https://tracker.ceph.com/issues/42669
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_putobj_processor.cc

index c2086181dbc227891142b48e3ff5b7527a7c472d..798af00fed02617470b29bff212322d0db774947 100644 (file)
@@ -393,12 +393,10 @@ int MultipartObjectProcessor::prepare_head()
     return r;
   }
   stripe_size = manifest_gen.cur_stripe_max_size();
-
-  uint64_t max_head_size = std::min(chunk_size, stripe_size);
-  set_head_chunk_size(max_head_size);
+  set_head_chunk_size(stripe_size);
 
   chunk = ChunkProcessor(&writer, chunk_size);
-  stripe = StripeProcessor(&chunk, this, max_head_size);
+  stripe = StripeProcessor(&chunk, this, stripe_size);
   return 0;
 }