Now transaction returns {ok, Value} and {error, Reason}