require in constructor; use block interface for transactions; include timestamp as a record key; add busy_timeout of 5sec