Hi,
I've created JIRAs for the locking optimisations as follows:
#2: this seems to be just a particular case of #4
#5: I think this is pretty much the same thing as #4, waiting for Sanne to confirm that.
Each JIRA also contains the design I have in mind for implementing them.
I do think this will improve the transactional throughput *significantly*, so any feedback much appreciated.
Cheers,
Mircea