Is this possible that a scheduled function races with code that cancels this function? In practical terms, does the scheduled function wrapping code check that the function ID is not canceled from within the same transaction as the scheduled function will be invoked?