While a lambda is still processing (archive unpacking etc), the lambda state should be set to "Pending" (currently "Active") and invocations to that lambda should fail (currently, it can end up in a inconsistent state in this case, like lambdas being executed without layers).

Lambda state should reflect the current internal state, and invocations should fail if not active.
return fn(*args, strict_slashes=False, **kwargs)
EXEC_MUTEX = threading.RLock()
DO_USE_DOCKER = None
JSON_START_CHAR_MAP = {
    list: ("[",),
    tuple: ("[",),
    dict: ("{",),
    str: ('"',),
    bytes: ('"',),
    bool: ("t", "f"),
    type(None): ("n",),
    int: ("0", "1", "2", "3", "4", "5", "6", "7", "8", "9"),
    float: ("0", "1", "2", "3", "4", "5", "6", "7", "8", "9"),
}
POSSIBLE_JSON_TYPES = (str, bytes)
JSON_START_TYPES = tuple(set(JSON_START_CHAR_MAP.keys()) - set(POSSIBLE_JSON_TYPES))
JSON_START_CHARS = tuple(set(functools.reduce(lambda x, y: x + y, JSON_START_CHAR_MAP.values())))
LAMBDA_EXECUTOR = lambda_executors.AVAILABLE_EXECUTORS.get(
    get_executor_mode(), lambda_executors.DEFAULT_EXECUTOR
)
IAM_POLICY_VERSION = "2012-10-17"
CHECK_HANDLER_ON_CREATION = False
class LambdaRegion(RegionBackend):