== One lock, two holders: what usingDbTime() prevents ==

lockAtMostFor = 30s, both callers ask for the same lock name.

JdbcTemplateLockProvider WITHOUT usingDbTime()
  node with a correct clock  : acquired
  node with a clock 40s fast : ACQUIRED -- two holders at the same time

JdbcTemplateLockProvider WITH usingDbTime()
  node with a correct clock  : acquired
  node with a clock 40s fast : refused

Without usingDbTime() the expiry comparison happens against the calling
JVM's clock, so a node that is ahead by more than lockAtMostFor considers
every live lock expired. With it, both the write and the comparison happen
in the database, and there is only one clock in the system.

