Some time ago I implemented transaction logic in AtomicServer. However, I still kept the add_resource_opts and the ::set_propvals methods, in addition to the new apply_transaction logic.
Although I don't think this is causing any issues now, it's a potential source for bugs as both implemetations could end up being slightly different (e.g. in how they serialize resources).
I think there are at least these solutions:
- Make
add_resource_opts depend on add_resource_tx and get rid of set_propvals
- Remove
add_resource_opts altogether. Is it still needed? We use it in populate and some benchmarks, but I think it might make sense to migrate these to use the transcactional one.