On Mon, 14 Sep 2015, GuangYang wrote: > Thanks Sage. That makes sense. Just would like to confirm my understanding: > > Let's say the map for the PG changes from [1, 2, 3] to [1, 2, 4] and 4 is the > backfill target (4 may or may not have the info for the PG, which should not > matter as long as it is not eligible for log based recovery), here the PG's > last_backfill and backfill_info.begin would reset to MIN, same for 4, and the > flow would be something like: > 1. 1 scan_range starting from backfill_info.begin for a configured number > of entries > 2. 1 query the digest from 4 for the range > 3. Once the digest is back from 4, fill the to_push and to_remove list by > comparing the local and remote entries (here we also consider the PG log to > capture most recent updates) > 4. If either to_push or to_remove is not empty, push the objects (or > remove) to the backfill target. > 5. Move the lack_backfill pointer and continue with step 1.
Yep! sage
