The current behavior implemented for propagation task execution is to attempt to read upfront the object being propagated.
This is mainly done with purpose of:
- translating CREATE into UPDATE in case the object is already found remotely, and viceversa
- avoiding to issue DELETE operation if object is not found
- avoiding to propagate in case the remote object is found equal to the data being propagated
There are however conditions under which such checks can be seen as an overhead rather than an optimization: it makes sense then to let such behavior to be configurable.