Use recursion instead of IMMEDIATE for faster atomicity