This may well be fixed by [1] but it is hard to prove with tests.
Brainstorming:
- in future world with [1] merged and .durables eliminated, when the reconstructor is PUTting a fragment to another node we should skip the whole two-phase renaming completely and just write a durable data file straight-away. we *just* need a way to tell the object server and diskfile to do that. *just* == maybe not so simple.
- that eliminates any window when there is a non-durable frag that the reconstructor just wrote that is vulnerable to being reclaimed. when reconstructing, there is either no file, or there is a durable-data file.
This may well be fixed by [1] but it is hard to prove with tests.
Brainstorming:
- in future world with [1] merged and .durables eliminated, when the reconstructor is PUTting a fragment to another node we should skip the whole two-phase renaming completely and just write a durable data file straight-away. we *just* need a way to tell the object server and diskfile to do that. *just* == maybe not so simple.
- that eliminates any window when there is a non-durable frag that the reconstructor just wrote that is vulnerable to being reclaimed. when reconstructing, there is either no file, or there is a durable-data file.
[1] https:/ /review. openstack. org/355958