So look, frankly it smells a bit that LockOptions has aliasSpecificLockModes that only apply to queries, and not to get(), refresh() or lock(). But now I see that when you call Query.setLockOptions(), these aliasSpecificLockModes are actually ignored and not copied over, making them almost useless. And this is actually the documented behavior, so I can’t even call it a bug. This is frankly a bit crazy, and either:
- Query.setLockOptions() should respect all the options in its argument, or
- We should remove aliasSpecificLockModes from LockOptions.
Both of those would be in principle a backward-incompatible change, but the first looks pretty innocuous to me. |