Check for overflow before attempting an LSM put.  Also relax the assertions that the tree is unmodified: there are too many complicated cases that involve application checkpoints and compact operations.