temporarily allow ttl to be nullable