On 12/9/19 10:03 PM, Prasad Krishnan wrote:
On Tue, Dec 10, 2019 at 3:05 AM Casey Bodley <cbodley@xxxxxxxxxx
<mailto:cbodley@xxxxxxxxxx>> wrote:
The bucket index logs used for multisite replication are currently
stored in omap on the bucket index shards, along with the rest of the
bucket index entries. Storing them in the index was a natural choice,
because cls_rgw can write these log entries atomically when
completing a
bucket index transaction.
To replicate a bucket, other zones process each of its bucket index
shard logs independently, and store sync status markers with their
position in each shard. This tight coupling between the replication
strategy and the bucket's sharding scheme is the main challenge to
supporting bucket resharding in multisite, because shuffling these
log
entries to a new set of shards would invalidate the sync status
markers
stored in other zones.
Can we alternatively make the sync status markers resilient to changes
introduced by bucket resharding change? I don't have a specific method
in mind, but presuming that it should be relatively simple, risk-free and
backward compatible compared to making changes in the write path.
The omap keys of these bilog entries are essentially just encoding a
version number that's local to that index shard (see get_index_ver_key()
in cls_rgw.cc), so there's no defined ordering relationship between keys
in different shards. Other zones store an array of sync status markers
(ie omap keys) with their position in each log shard. If the bucket gets
resharded, the size of this sync status array no longer matches the new
bilog shards, with no way to associate its markers with the new sharding
scheme.
Thanks,
K.Prasad
/-----------------------------------------------------------------------------------------/
/This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error, please
notify the system manager. This message contains confidential
information and is intended only for the individual named. If you are
not the named addressee, you should not disseminate, distribute or
copy this email. Please notify the sender immediately by email if you
have received this email by mistake and delete this email from your
system. If you are not the intended recipient, you are notified that
disclosing, copying, distributing or taking any action in reliance on
the contents of this information is strictly prohibited./
/Any views or opinions presented in this email are solely those of
the author and do not necessarily represent those of the
organization. Any information on shares, debentures or similar
instruments, recommended product pricing, valuations and the like are
for information purposes only. It is not meant to be an instruction
or recommendation, as the case may be, to buy or to sell securities,
products, services nor an offer to buy or sell securities, products
or services unless specifically stated to be so on behalf of the
Flipkart group. Employees of the Flipkart group of companies are
expressly required not to make defamatory statements and not to
infringe or authorise any infringement of copyright or any other
legal right by email communications. Any such communication is
contrary to organizational policy and outside the scope of the
employment of the individual concerned. The organization will not
accept any liability in respect of such communication, and the
employee responsible will be personally liable for any damages or
other liability arising./
/Our organization accepts no liability for the content of this email,
or for the consequences of any actions taken on the basis of the
information /provided,/ unless that information is subsequently
confirmed in writing. If you are not the intended recipient, you are
notified that disclosing, copying, distributing or taking any action
in reliance on the contents of this information is strictly prohibited./
/-----------------------------------------------------------------------------------------/
_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx