update:
- was able to recreate this error with mongocxx as well.
- seems that this happens when the transaction is doing updates across multiple shards.
- apparently this was not happening for me up until now with the cpp usage.
- so the question is, how can setups using arbiters can overcome this? should they revert to use a simple operation without transaction when this error happens? seems unsafe.
- not using arbiters does not work with my design which does not have enough resources for a full 3 replica-set.
Thanks!