Bug #40153
Updated by Casey Bodley almost 5 years ago
data sync does not replicate parts, so the bucket index log doesn't need to store a {write prepare, write complete, and delete complete} entry for every part and .meta. the (abbreviated) bilog list for a 4-part multipart upload looks like this: <pre> [ { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.meta", "state": "pending", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.meta", "state": "complete", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.1", "state": "pending", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.1", "state": "complete", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.2", "state": "pending", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.2", "state": "complete", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.3", "state": "pending", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.3", "state": "complete", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.4", "state": "pending", }, { "op": "write", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.4", "state": "complete", }, { "op": "write", "object": "128m.iso", "state": "pending", }, { "op": "write", "object": "128m.iso", "state": "complete", }, { "op": "del", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.1", "state": "complete", }, { "op": "del", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.2", "state": "complete", }, { "op": "del", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.3", "state": "complete", }, { "op": "del", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.4", "state": "complete", }, { "op": "del", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.meta", "state": "pending", }, { "op": "del", "object": "_multipart_128m.iso.2~Asko0xU3EFWlRdRJwTpgr0tD9AuWrHl.meta", "state": "complete", }, ] </pre> but the only entry entries required to sync the object is: <pre> [ { "op": "write", "object": "128m.iso", "state": "pending", }, { "op": "write", "object": "128m.iso", "state": "complete", }, ] </pre>