Skip to content

Instantly share code, notes, and snippets.

@jakirkham
Last active February 5, 2021 01:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jakirkham/264d50e33d74c1363af016151b1ace35 to your computer and use it in GitHub Desktop.
Save jakirkham/264d50e33d74c1363af016151b1ace35 to your computer and use it in GitHub Desktop.
Cython annotated `distributed/scheduler.py` using ( https://github.com/dask/distributed/commit/a0d60e7b2ad16304128c7989a111539a4d80ed38 )
This file has been truncated, but you can view the full file.
/* Generated by Cython 0.29.21 */
#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
#error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
#error Cython requires Python 2.6+ or Python 3.3+.
#else
#define CYTHON_ABI "0_29_21"
#define CYTHON_HEX_VERSION 0x001D15F0
#define CYTHON_FUTURE_DIVISION 1
#include <stddef.h>
#ifndef offsetof
#define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(WIN32) && !defined(MS_WINDOWS)
#ifndef __stdcall
#define __stdcall
#endif
#ifndef __cdecl
#define __cdecl
#endif
#ifndef __fastcall
#define __fastcall
#endif
#endif
#ifndef DL_IMPORT
#define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
#define DL_EXPORT(t) t
#endif
#define __PYX_COMMA ,
#ifndef HAVE_LONG_LONG
#if PY_VERSION_HEX >= 0x02070000
#define HAVE_LONG_LONG
#endif
#endif
#ifndef PY_LONG_LONG
#define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
#define Py_HUGE_VAL HUGE_VAL
#endif
#ifdef PYPY_VERSION
#define CYTHON_COMPILING_IN_PYPY 1
#define CYTHON_COMPILING_IN_PYSTON 0
#define CYTHON_COMPILING_IN_CPYTHON 0
#undef CYTHON_USE_TYPE_SLOTS
#define CYTHON_USE_TYPE_SLOTS 0
#undef CYTHON_USE_PYTYPE_LOOKUP
#define CYTHON_USE_PYTYPE_LOOKUP 0
#if PY_VERSION_HEX < 0x03050000
#undef CYTHON_USE_ASYNC_SLOTS
#define CYTHON_USE_ASYNC_SLOTS 0
#elif !defined(CYTHON_USE_ASYNC_SLOTS)
#define CYTHON_USE_ASYNC_SLOTS 1
#endif
#undef CYTHON_USE_PYLIST_INTERNALS
#define CYTHON_USE_PYLIST_INTERNALS 0
#undef CYTHON_USE_UNICODE_INTERNALS
#define CYTHON_USE_UNICODE_INTERNALS 0
#undef CYTHON_USE_UNICODE_WRITER
#define CYTHON_USE_UNICODE_WRITER 0
#undef CYTHON_USE_PYLONG_INTERNALS
#define CYTHON_USE_PYLONG_INTERNALS 0
#undef CYTHON_AVOID_BORROWED_REFS
#define CYTHON_AVOID_BORROWED_REFS 1
#undef CYTHON_ASSUME_SAFE_MACROS
#define CYTHON_ASSUME_SAFE_MACROS 0
#undef CYTHON_UNPACK_METHODS
#define CYTHON_UNPACK_METHODS 0
#undef CYTHON_FAST_THREAD_STATE
#define CYTHON_FAST_THREAD_STATE 0
#undef CYTHON_FAST_PYCALL
#define CYTHON_FAST_PYCALL 0
#undef CYTHON_PEP489_MULTI_PHASE_INIT
#define CYTHON_PEP489_MULTI_PHASE_INIT 0
#undef CYTHON_USE_TP_FINALIZE
#define CYTHON_USE_TP_FINALIZE 0
#undef CYTHON_USE_DICT_VERSIONS
#define CYTHON_USE_DICT_VERSIONS 0
#undef CYTHON_USE_EXC_INFO_STACK
#define CYTHON_USE_EXC_INFO_STACK 0
#elif defined(PYSTON_VERSION)
#define CYTHON_COMPILING_IN_PYPY 0
#define CYTHON_COMPILING_IN_PYSTON 1
#define CYTHON_COMPILING_IN_CPYTHON 0
#ifndef CYTHON_USE_TYPE_SLOTS
#define CYTHON_USE_TYPE_SLOTS 1
#endif
#undef CYTHON_USE_PYTYPE_LOOKUP
#define CYTHON_USE_PYTYPE_LOOKUP 0
#undef CYTHON_USE_ASYNC_SLOTS
#define CYTHON_USE_ASYNC_SLOTS 0
#undef CYTHON_USE_PYLIST_INTERNALS
#define CYTHON_USE_PYLIST_INTERNALS 0
#ifndef CYTHON_USE_UNICODE_INTERNALS
#define CYTHON_USE_UNICODE_INTERNALS 1
#endif
#undef CYTHON_USE_UNICODE_WRITER
#define CYTHON_USE_UNICODE_WRITER 0
#undef CYTHON_USE_PYLONG_INTERNALS
#define CYTHON_USE_PYLONG_INTERNALS 0
#ifndef CYTHON_AVOID_BORROWED_REFS
#define CYTHON_AVOID_BORROWED_REFS 0
#endif
#ifndef CYTHON_ASSUME_SAFE_MACROS
#define CYTHON_ASSUME_SAFE_MACROS 1
#endif
#ifndef CYTHON_UNPACK_METHODS
#define CYTHON_UNPACK_METHODS 1
#endif
#undef CYTHON_FAST_THREAD_STATE
#define CYTHON_FAST_THREAD_STATE 0
#undef CYTHON_FAST_PYCALL
#define CYTHON_FAST_PYCALL 0
#undef CYTHON_PEP489_MULTI_PHASE_INIT
#define CYTHON_PEP489_MULTI_PHASE_INIT 0
#undef CYTHON_USE_TP_FINALIZE
#define CYTHON_USE_TP_FINALIZE 0
#undef CYTHON_USE_DICT_VERSIONS
#define CYTHON_USE_DICT_VERSIONS 0
#undef CYTHON_USE_EXC_INFO_STACK
#define CYTHON_USE_EXC_INFO_STACK 0
#else
#define CYTHON_COMPILING_IN_PYPY 0
#define CYTHON_COMPILING_IN_PYSTON 0
#define CYTHON_COMPILING_IN_CPYTHON 1
#ifndef CYTHON_USE_TYPE_SLOTS
#define CYTHON_USE_TYPE_SLOTS 1
#endif
#if PY_VERSION_HEX < 0x02070000
#undef CYTHON_USE_PYTYPE_LOOKUP
#define CYTHON_USE_PYTYPE_LOOKUP 0
#elif !defined(CYTHON_USE_PYTYPE_LOOKUP)
#define CYTHON_USE_PYTYPE_LOOKUP 1
#endif
#if PY_MAJOR_VERSION < 3
#undef CYTHON_USE_ASYNC_SLOTS
#define CYTHON_USE_ASYNC_SLOTS 0
#elif !defined(CYTHON_USE_ASYNC_SLOTS)
#define CYTHON_USE_ASYNC_SLOTS 1
#endif
#if PY_VERSION_HEX < 0x02070000
#undef CYTHON_USE_PYLONG_INTERNALS
#define CYTHON_USE_PYLONG_INTERNALS 0
#elif !defined(CYTHON_USE_PYLONG_INTERNALS)
#define CYTHON_USE_PYLONG_INTERNALS 1
#endif
#ifndef CYTHON_USE_PYLIST_INTERNALS
#define CYTHON_USE_PYLIST_INTERNALS 1
#endif
#ifndef CYTHON_USE_UNICODE_INTERNALS
#define CYTHON_USE_UNICODE_INTERNALS 1
#endif
#if PY_VERSION_HEX < 0x030300F0
#undef CYTHON_USE_UNICODE_WRITER
#define CYTHON_USE_UNICODE_WRITER 0
#elif !defined(CYTHON_USE_UNICODE_WRITER)
#define CYTHON_USE_UNICODE_WRITER 1
#endif
#ifndef CYTHON_AVOID_BORROWED_REFS
#define CYTHON_AVOID_BORROWED_REFS 0
#endif
#ifndef CYTHON_ASSUME_SAFE_MACROS
#define CYTHON_ASSUME_SAFE_MACROS 1
#endif
#ifndef CYTHON_UNPACK_METHODS
#define CYTHON_UNPACK_METHODS 1
#endif
#ifndef CYTHON_FAST_THREAD_STATE
#define CYTHON_FAST_THREAD_STATE 1
#endif
#ifndef CYTHON_FAST_PYCALL
#define CYTHON_FAST_PYCALL 1
#endif
#ifndef CYTHON_PEP489_MULTI_PHASE_INIT
#define CYTHON_PEP489_MULTI_PHASE_INIT (PY_VERSION_HEX >= 0x03050000)
#endif
#ifndef CYTHON_USE_TP_FINALIZE
#define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1)
#endif
#ifndef CYTHON_USE_DICT_VERSIONS
#define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX >= 0x030600B1)
#endif
#ifndef CYTHON_USE_EXC_INFO_STACK
#define CYTHON_USE_EXC_INFO_STACK (PY_VERSION_HEX >= 0x030700A3)
#endif
#endif
#if !defined(CYTHON_FAST_PYCCALL)
#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if CYTHON_USE_PYLONG_INTERNALS
#include "longintrepr.h"
#undef SHIFT
#undef BASE
#undef MASK
#ifdef SIZEOF_VOID_P
enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) };
#endif
#endif
#ifndef __has_attribute
#define __has_attribute(x) 0
#endif
#ifndef __has_cpp_attribute
#define __has_cpp_attribute(x) 0
#endif
#ifndef CYTHON_RESTRICT
#if defined(__GNUC__)
#define CYTHON_RESTRICT __restrict__
#elif defined(_MSC_VER) && _MSC_VER >= 1400
#define CYTHON_RESTRICT __restrict
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define CYTHON_RESTRICT restrict
#else
#define CYTHON_RESTRICT
#endif
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
# define CYTHON_UNUSED __attribute__ ((__unused__))
# else
# define CYTHON_UNUSED
# endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
# define CYTHON_UNUSED __attribute__ ((__unused__))
# else
# define CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_MAYBE_UNUSED_VAR
# if defined(__cplusplus)
template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }
# else
# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x)
# endif
#endif
#ifndef CYTHON_NCP_UNUSED
# if CYTHON_COMPILING_IN_CPYTHON
# define CYTHON_NCP_UNUSED
# else
# define CYTHON_NCP_UNUSED CYTHON_UNUSED
# endif
#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
#ifdef _MSC_VER
#ifndef _MSC_STDINT_H_
#if _MSC_VER < 1300
typedef unsigned char uint8_t;
typedef unsigned int uint32_t;
#else
typedef unsigned __int8 uint8_t;
typedef unsigned __int32 uint32_t;
#endif
#endif
#else
#include <stdint.h>
#endif
#ifndef CYTHON_FALLTHROUGH
#if defined(__cplusplus) && __cplusplus >= 201103L
#if __has_cpp_attribute(fallthrough)
#define CYTHON_FALLTHROUGH [[fallthrough]]
#elif __has_cpp_attribute(clang::fallthrough)
#define CYTHON_FALLTHROUGH [[clang::fallthrough]]
#elif __has_cpp_attribute(gnu::fallthrough)
#define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
#endif
#endif
#ifndef CYTHON_FALLTHROUGH
#if __has_attribute(fallthrough)
#define CYTHON_FALLTHROUGH __attribute__((fallthrough))
#else
#define CYTHON_FALLTHROUGH
#endif
#endif
#if defined(__clang__ ) && defined(__apple_build_version__)
#if __apple_build_version__ < 7000000
#undef CYTHON_FALLTHROUGH
#define CYTHON_FALLTHROUGH
#endif
#endif
#endif
#ifndef CYTHON_INLINE
#if defined(__clang__)
#define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
#elif defined(__GNUC__)
#define CYTHON_INLINE __inline__
#elif defined(_MSC_VER)
#define CYTHON_INLINE __inline
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define CYTHON_INLINE inline
#else
#define CYTHON_INLINE
#endif
#endif
#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag)
#define Py_OptimizeFlag 0
#endif
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#if PY_MAJOR_VERSION < 3
#define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
#define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#define __Pyx_DefaultClassType PyClass_Type
#else
#define __Pyx_BUILTIN_MODULE_NAME "builtins"
#if PY_VERSION_HEX >= 0x030800A4 && PY_VERSION_HEX < 0x030800B2
#define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#else
#define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#endif
#define __Pyx_DefaultClassType PyType_Type
#endif
#ifndef Py_TPFLAGS_CHECKTYPES
#define Py_TPFLAGS_CHECKTYPES 0
#endif
#ifndef Py_TPFLAGS_HAVE_INDEX
#define Py_TPFLAGS_HAVE_INDEX 0
#endif
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
#define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#ifndef Py_TPFLAGS_HAVE_FINALIZE
#define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#ifndef METH_STACKLESS
#define METH_STACKLESS 0
#endif
#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL)
#ifndef METH_FASTCALL
#define METH_FASTCALL 0x80
#endif
typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs);
typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
Py_ssize_t nargs, PyObject *kwnames);
#else
#define __Pyx_PyCFunctionFast _PyCFunctionFast
#define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
#endif
#if CYTHON_FAST_PYCCALL
#define __Pyx_PyFastCFunction_Check(func)\
((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS)))))
#else
#define __Pyx_PyFastCFunction_Check(func) 0
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
#define PyObject_Malloc(s) PyMem_Malloc(s)
#define PyObject_Free(p) PyMem_Free(p)
#define PyObject_Realloc(p) PyMem_Realloc(p)
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030400A1
#define PyMem_RawMalloc(n) PyMem_Malloc(n)
#define PyMem_RawRealloc(p, n) PyMem_Realloc(p, n)
#define PyMem_RawFree(p) PyMem_Free(p)
#endif
#if CYTHON_COMPILING_IN_PYSTON
#define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co)
#define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno)
#else
#define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0)
#define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno)
#endif
#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000
#define __Pyx_PyThreadState_Current PyThreadState_GET()
#elif PY_VERSION_HEX >= 0x03060000
#define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
#elif PY_VERSION_HEX >= 0x03000000
#define __Pyx_PyThreadState_Current PyThreadState_GET()
#else
#define __Pyx_PyThreadState_Current _PyThreadState_Current
#endif
#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT)
#include "pythread.h"
#define Py_tss_NEEDS_INIT 0
typedef int Py_tss_t;
static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) {
*key = PyThread_create_key();
return 0;
}
static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) {
Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t));
*key = Py_tss_NEEDS_INIT;
return key;
}
static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) {
PyObject_Free(key);
}
static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) {
return *key != Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) {
PyThread_delete_key(*key);
*key = Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) {
return PyThread_set_key_value(*key, value);
}
static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
return PyThread_get_key_value(*key);
}
#endif
#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
#else
#define __Pyx_PyDict_NewPresized(n) PyDict_New()
#endif
#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
#else
#define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS
#define __Pyx_PyDict_GetItemStr(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
#else
#define __Pyx_PyDict_GetItemStr(dict, name) PyDict_GetItem(dict, name)
#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
#define CYTHON_PEP393_ENABLED 1
#define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\
0 : _PyUnicode_Ready((PyObject *)(op)))
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
#define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u)
#define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u)
#define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u)
#define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i)
#define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch)
#if defined(PyUnicode_IS_READY) && defined(PyUnicode_GET_SIZE)
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
#else
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u))
#endif
#else
#define CYTHON_PEP393_ENABLED 0
#define PyUnicode_1BYTE_KIND 1
#define PyUnicode_2BYTE_KIND 2
#define PyUnicode_4BYTE_KIND 4
#define __Pyx_PyUnicode_READY(op) (0)
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
#define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111)
#define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE))
#define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u))
#define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
#define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch)
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
#define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b)
#define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b)
#else
#define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b)
#define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
#define PyUnicode_Contains(u, s) PySequence_Contains(u, s)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check)
#define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format)
#define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt)
#endif
#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b)
#else
#define __Pyx_PyString_Format(a, b) PyString_Format(a, b)
#endif
#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII)
#define PyObject_ASCII(o) PyObject_Repr(o)
#endif
#if PY_MAJOR_VERSION >= 3
#define PyBaseString_Type PyUnicode_Type
#define PyStringObject PyUnicodeObject
#define PyString_Type PyUnicode_Type
#define PyString_Check PyUnicode_Check
#define PyString_CheckExact PyUnicode_CheckExact
#ifndef PyObject_Unicode
#define PyObject_Unicode PyObject_Str
#endif
#endif
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
#define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
#else
#define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
#define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
#endif
#ifndef PySet_CheckExact
#define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type)
#endif
#if PY_VERSION_HEX >= 0x030900A4
#define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt)
#define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size)
#else
#define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt)
#define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size)
#endif
#if CYTHON_ASSUME_SAFE_MACROS
#define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq)
#else
#define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq)
#endif
#if PY_MAJOR_VERSION >= 3
#define PyIntObject PyLongObject
#define PyInt_Type PyLong_Type
#define PyInt_Check(op) PyLong_Check(op)
#define PyInt_CheckExact(op) PyLong_CheckExact(op)
#define PyInt_FromString PyLong_FromString
#define PyInt_FromUnicode PyLong_FromUnicode
#define PyInt_FromLong PyLong_FromLong
#define PyInt_FromSize_t PyLong_FromSize_t
#define PyInt_FromSsize_t PyLong_FromSsize_t
#define PyInt_AsLong PyLong_AsLong
#define PyInt_AS_LONG PyLong_AS_LONG
#define PyInt_AsSsize_t PyLong_AsSsize_t
#define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask
#define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
#define PyNumber_Int PyNumber_Long
#endif
#if PY_MAJOR_VERSION >= 3
#define PyBoolObject PyLongObject
#endif
#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
#ifndef PyUnicode_InternFromString
#define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
#endif
#endif
#if PY_VERSION_HEX < 0x030200A4
typedef long Py_hash_t;
#define __Pyx_PyInt_FromHash_t PyInt_FromLong
#define __Pyx_PyInt_AsHash_t PyInt_AsLong
#else
#define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
#define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t
#endif
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyMethod_New(func, self, klass) ((self) ? ((void)(klass), PyMethod_New(func, self)) : __Pyx_NewRef(func))
#else
#define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
#if CYTHON_USE_ASYNC_SLOTS
#if PY_VERSION_HEX >= 0x030500B1
#define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
#define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
#else
#define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
#endif
#else
#define __Pyx_PyType_AsAsync(obj) NULL
#endif
#ifndef __Pyx_PyAsyncMethodsStruct
typedef struct {
unaryfunc am_await;
unaryfunc am_aiter;
unaryfunc am_anext;
} __Pyx_PyAsyncMethodsStruct;
#endif
#if defined(WIN32) || defined(MS_WINDOWS)
#define _USE_MATH_DEFINES
#endif
#include <math.h>
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
float value;
memset(&value, 0xFF, sizeof(value));
return value;
}
#endif
#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
#define __Pyx_truncl trunc
#else
#define __Pyx_truncl truncl
#endif
#define __PYX_MARK_ERR_POS(f_index, lineno) \
{ __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; }
#define __PYX_ERR(f_index, lineno, Ln_error) \
{ __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
#ifndef __PYX_EXTERN_C
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
#else
#define __PYX_EXTERN_C extern
#endif
#endif
#define __PYX_HAVE__distributed__scheduler
#define __PYX_HAVE_API__distributed__scheduler
/* Early includes */
#ifdef _OPENMP
#include <omp.h>
#endif /* _OPENMP */
#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif
typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;
#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8)
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_uchar_cast(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\
(sizeof(type) < sizeof(Py_ssize_t)) ||\
(sizeof(type) > sizeof(Py_ssize_t) &&\
likely(v < (type)PY_SSIZE_T_MAX ||\
v == (type)PY_SSIZE_T_MAX) &&\
(!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
v == (type)PY_SSIZE_T_MIN))) ||\
(sizeof(type) == sizeof(Py_ssize_t) &&\
(is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
v == (type)PY_SSIZE_T_MAX))) )
static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) {
return (size_t) i < (size_t) limit;
}
#if defined (__cplusplus) && __cplusplus >= 201103L
#include <cstdlib>
#define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
#define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
#define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
#define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
#define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
#define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
#define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
#define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString
#define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
const Py_UNICODE *u_end = u;
while (*u_end++) ;
return (size_t)(u_end - u - 1);
}
#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode
#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b);
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
(likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#else
#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x))
#endif
#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x))
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
PyObject* sys;
PyObject* default_encoding = NULL;
PyObject* ascii_chars_u = NULL;
PyObject* ascii_chars_b = NULL;
const char* default_encoding_c;
sys = PyImport_ImportModule("sys");
if (!sys) goto bad;
default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
Py_DECREF(sys);
if (!default_encoding) goto bad;
default_encoding_c = PyBytes_AsString(default_encoding);
if (!default_encoding_c) goto bad;
if (strcmp(default_encoding_c, "ascii") == 0) {
__Pyx_sys_getdefaultencoding_not_ascii = 0;
} else {
char ascii_chars[128];
int c;
for (c = 0; c < 128; c++) {
ascii_chars[c] = c;
}
__Pyx_sys_getdefaultencoding_not_ascii = 1;
ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
if (!ascii_chars_u) goto bad;
ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
PyErr_Format(
PyExc_ValueError,
"This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
default_encoding_c);
goto bad;
}
Py_DECREF(ascii_chars_u);
Py_DECREF(ascii_chars_b);
}
Py_DECREF(default_encoding);
return 0;
bad:
Py_XDECREF(default_encoding);
Py_XDECREF(ascii_chars_u);
Py_XDECREF(ascii_chars_b);
return -1;
}
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#else
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
static char* __PYX_DEFAULT_STRING_ENCODING;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
PyObject* sys;
PyObject* default_encoding = NULL;
char* default_encoding_c;
sys = PyImport_ImportModule("sys");
if (!sys) goto bad;
default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
Py_DECREF(sys);
if (!default_encoding) goto bad;
default_encoding_c = PyBytes_AsString(default_encoding);
if (!default_encoding_c) goto bad;
__PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1);
if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
Py_DECREF(default_encoding);
return 0;
bad:
Py_XDECREF(default_encoding);
return -1;
}
#endif
#endif
/* Test for GCC > 2.95 */
#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
#define likely(x) (x)
#define unlikely(x) (x)
#endif /* __GNUC__ */
static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }
static PyObject *__pyx_m = NULL;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
static PyObject *__pyx_cython_runtime = NULL;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static PyObject *__pyx_empty_unicode;
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * __pyx_cfilenm= __FILE__;
static const char *__pyx_filename;
static const char *__pyx_f[] = {
"distributed/scheduler.py",
"stringsource",
};
/*--- Type declarations ---*/
struct __pyx_obj_11distributed_9scheduler_ClientState;
struct __pyx_obj_11distributed_9scheduler_WorkerState;
struct __pyx_obj_11distributed_9scheduler_TaskPrefix;
struct __pyx_obj_11distributed_9scheduler_TaskGroup;
struct __pyx_obj_11distributed_9scheduler_TaskState;
struct __pyx_obj_11distributed_9scheduler_SchedulerState;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_4___iter__;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_5___len__;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_6_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_7___iter__;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_8_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_9_start;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_10_close;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_11_close_worker;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_12_add_worker;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_13_update_graph;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_14_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_15_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_16_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_17_remove_worker;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_18_cancel_key;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_19_validate_state;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_20_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_21_add_client;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_22_remove_client;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_23_handle_worker;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_24_add_plugin;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_25_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_26_scatter;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_27_gather;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_28_restart;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_29_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_30_broadcast;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_31_send_message;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_32_proxy;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_33__delete_worker_data;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_35_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_36_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_37_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_38_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_39_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_40_replicate;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_41_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_42_workers_to_close;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_43_retire_workers;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_44_feed;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_45_get_call_stack;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_46_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_47_register_worker_plugin;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_48_get_profile;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_49_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_50_get_profile_metadata;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_51_genexpr;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_52_performance_report;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_53_get_worker_logs;
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_54_check_worker_ttl;
struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_check_idle_saturated;
struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_get_task_duration;
struct __pyx_opt_args_11distributed_9scheduler__add_to_memory;
struct __pyx_opt_args_11distributed_9scheduler__task_to_msg;
struct __pyx_defaults;
typedef struct __pyx_defaults __pyx_defaults;
struct __pyx_defaults1;
typedef struct __pyx_defaults1 __pyx_defaults1;
/* "distributed/scheduler.py":2592
* @ccall
* @exceptval(check=False)
* def check_idle_saturated(self, ws: WorkerState, occ: double = -1.0): # <<<<<<<<<<<<<<
* """Update the status of the idle and saturated state
*
*/
struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_check_idle_saturated {
int __pyx_n;
double occ;
};
/* "distributed/scheduler.py":2648
*
* @ccall
* def get_task_duration(self, ts: TaskState, default: double = -1) -> double: # <<<<<<<<<<<<<<
* """
* Get the estimated computation cost of the given task
*/
struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_get_task_duration {
int __pyx_n;
double __pyx_default;
};
/* "distributed/scheduler.py":6584
* @cfunc
* @exceptval(check=False)
* def _add_to_memory( # <<<<<<<<<<<<<<
* state: SchedulerState,
* ts: TaskState,
*/
struct __pyx_opt_args_11distributed_9scheduler__add_to_memory {
int __pyx_n;
PyObject *type;
PyObject *typename;
};
/* "distributed/scheduler.py":6719
* @cfunc
* @exceptval(check=False)
* def _task_to_msg(state: SchedulerState, ts: TaskState, duration=None) -> dict: # <<<<<<<<<<<<<<
* """ Convert a single computational task to a message """
* ws: WorkerState
*/
struct __pyx_opt_args_11distributed_9scheduler__task_to_msg {
int __pyx_n;
PyObject *duration;
};
struct __pyx_defaults {
PyObject *__pyx_arg_kwargs;
};
struct __pyx_defaults1 {
PyObject *__pyx_arg_default;
};
/* "distributed/scheduler.py":193
* @final
* @cclass
* class ClientState: # <<<<<<<<<<<<<<
* """
* A simple object holding information about a client.
*/
struct __pyx_obj_11distributed_9scheduler_ClientState {
PyObject_HEAD
PyObject *_client_key;
Py_hash_t _hash;
PyObject *_wants_what;
double _last_seen;
PyObject *_versions;
};
/* "distributed/scheduler.py":266
* @final
* @cclass
* class WorkerState: # <<<<<<<<<<<<<<
* """
* A simple object holding information about a worker.
*/
struct __pyx_obj_11distributed_9scheduler_WorkerState {
PyObject_HEAD
struct __pyx_vtabstruct_11distributed_9scheduler_WorkerState *__pyx_vtab;
PyObject *_actors;
PyObject *_address;
double _bandwidth;
PyObject *_executing;
PyObject *_extra;
PyObject *_has_what;
Py_hash_t _hash;
double _last_seen;
PyObject *_local_directory;
Py_ssize_t _memory_limit;
PyObject *_metrics;
PyObject *_name;
PyObject *_nanny;
Py_ssize_t _nbytes;
Py_ssize_t _nthreads;
double _occupancy;
Py_ssize_t _pid;
PyObject *_processing;
PyObject *_resources;
PyObject *_services;
PyObject *_status;
double _time_delay;
PyObject *_used_resources;
PyObject *_versions;
};
/* "distributed/scheduler.py":629
* @final
* @cclass
* class TaskPrefix: # <<<<<<<<<<<<<<
* """Collection tracking all tasks within a group
*
*/
struct __pyx_obj_11distributed_9scheduler_TaskPrefix {
PyObject_HEAD
PyObject *_name;
PyObject *_all_durations;
double _duration_average;
Py_ssize_t _suspicious;
PyObject *_groups;
};
/* "distributed/scheduler.py":755
* @final
* @cclass
* class TaskGroup: # <<<<<<<<<<<<<<
* """Collection tracking all tasks within a group
*
*/
struct __pyx_obj_11distributed_9scheduler_TaskGroup {
PyObject_HEAD
struct __pyx_vtabstruct_11distributed_9scheduler_TaskGroup *__pyx_vtab;
PyObject *_name;
struct __pyx_obj_11distributed_9scheduler_TaskPrefix *_prefix;
PyObject *_states;
PyObject *_dependencies;
Py_ssize_t _nbytes_total;
Py_ssize_t _nbytes_in_memory;
double _duration;
PyObject *_types;
};
/* "distributed/scheduler.py":871
* @final
* @cclass
* class TaskState: # <<<<<<<<<<<<<<
* """
* A simple object holding information about a task.
*/
struct __pyx_obj_11distributed_9scheduler_TaskState {
PyObject_HEAD
struct __pyx_vtabstruct_11distributed_9scheduler_TaskState *__pyx_vtab;
PyObject *_key;
Py_hash_t _hash;
struct __pyx_obj_11distributed_9scheduler_TaskPrefix *_prefix;
PyObject *_run_spec;
PyObject *_priority;
PyObject *_state;
PyObject *_dependencies;
PyObject *_dependents;
int _has_lost_dependencies;
PyObject *_waiting_on;
PyObject *_waiters;
PyObject *_who_wants;
PyObject *_who_has;
struct __pyx_obj_11distributed_9scheduler_WorkerState *_processing_on;
Py_ssize_t _retries;
Py_ssize_t _nbytes;
PyObject *_type;
PyObject *_exception;
PyObject *_traceback;
PyObject *_exception_blame;
Py_ssize_t _suspicious;
PyObject *_host_restrictions;
PyObject *_worker_restrictions;
PyObject *_resource_restrictions;
int _loose_restrictions;
PyObject *_metadata;
PyObject *_annotations;
int _actor;
struct __pyx_obj_11distributed_9scheduler_TaskGroup *_group;
PyObject *_group_key;
};
/* "distributed/scheduler.py":1534
*
* @cclass
* class SchedulerState: # <<<<<<<<<<<<<<
* """Underlying task state of dynamic scheduler
*
*/
struct __pyx_obj_11distributed_9scheduler_SchedulerState {
PyObject_HEAD
struct __pyx_vtabstruct_11distributed_9scheduler_SchedulerState *__pyx_vtab;
PyObject *_aliases;
double _bandwidth;
PyObject *_clients;
PyObject *_extensions;
PyObject *_host_info;
PyObject *_idle;
PyObject *_idle_dv;
Py_ssize_t _n_tasks;
PyObject *_resources;
PyObject *_saturated;
PyObject *_tasks;
PyObject *_task_groups;
PyObject *_task_prefixes;
PyObject *_task_metadata;
Py_ssize_t _total_nthreads;
double _total_occupancy;
PyObject *_unknown_durations;
PyObject *_unrunnable;
int _validate;
PyObject *_workers;
PyObject *_workers_dv;
};
/* "distributed/scheduler.py":718
* return merge_with(sum, [tg._states for tg in self.active])
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__ {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self;
};
/* "distributed/scheduler.py":724
* + ": "
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self.states.items()) if v # <<<<<<<<<<<<<<
* )
* + ">"
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__ *__pyx_outer_scope;
PyObject *__pyx_v_k;
PyObject *__pyx_v_v;
};
/* "distributed/scheduler.py":854
* ts._group = self
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__ {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self;
};
/* "distributed/scheduler.py":860
* + ": "
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self._states.items()) if v # <<<<<<<<<<<<<<
* )
* + ">"
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__ *__pyx_outer_scope;
PyObject *__pyx_v_k;
PyObject *__pyx_v_v;
};
/* "distributed/scheduler.py":1453
* # For tasks etc.
*
* def __iter__(self): # <<<<<<<<<<<<<<
* accessor = self._accessor
* for k, v in self._states.items():
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_4___iter__ {
PyObject_HEAD
PyObject *__pyx_v_accessor;
PyObject *__pyx_v_k;
PyObject *__pyx_v_self;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":1459
* yield k
*
* def __len__(self): # <<<<<<<<<<<<<<
* accessor = self._accessor
* return sum(bool(accessor(v)) for v in self._states.values())
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_5___len__ {
PyObject_HEAD
PyObject *__pyx_v_accessor;
PyObject *__pyx_v_self;
};
/* "distributed/scheduler.py":1461
* def __len__(self):
* accessor = self._accessor
* return sum(bool(accessor(v)) for v in self._states.values()) # <<<<<<<<<<<<<<
*
* def __getitem__(self, key):
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_6_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_5___len__ *__pyx_outer_scope;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":1483
* self._accessor = accessor
*
* def __iter__(self): # <<<<<<<<<<<<<<
* return (k for k, v in self._states.items() if self._accessor(v))
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_7___iter__ {
PyObject_HEAD
PyObject *__pyx_v_self;
};
/* "distributed/scheduler.py":1484
*
* def __iter__(self):
* return (k for k, v in self._states.items() if self._accessor(v)) # <<<<<<<<<<<<<<
*
* def __len__(self):
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_8_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_7___iter__ *__pyx_outer_scope;
PyObject *__pyx_v_k;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":3232
* return ws.host, port
*
* async def start(self): # <<<<<<<<<<<<<<
* """ Clear out old state and restart all running coroutines """
* await super().start()
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_9_start {
PyObject_HEAD
PyObject *__pyx_v_addr;
PyObject *__pyx_v_c;
PyObject *__pyx_v_del_scheduler_file;
PyObject *__pyx_v_f;
PyObject *__pyx_v_fn;
PyObject *__pyx_v_k;
PyObject *__pyx_v_listen_ip;
PyObject *__pyx_v_listener;
PyObject *__pyx_9genexpr32__pyx_v_plugin;
PyObject *__pyx_v_preload;
PyObject *__pyx_v_self;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
PyObject *(*__pyx_t_2)(PyObject *);
};
/* "distributed/scheduler.py":3293
* return self
*
* async def close(self, comm=None, fast=False, close_workers=False): # <<<<<<<<<<<<<<
* """Send cleanup signal to all coroutines then wait until finished
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_10_close {
PyObject_HEAD
PyObject *__pyx_v_close_workers;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_ext;
PyObject *__pyx_v_fast;
PyObject *__pyx_v_future;
PyObject *__pyx_v_futures;
long __pyx_v_i;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_pc;
PyObject *__pyx_9genexpr33__pyx_v_plugin;
PyObject *__pyx_v_preload;
PyObject *__pyx_v_self;
PyObject *__pyx_v_w;
PyObject *__pyx_v_worker;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
PyObject *(*__pyx_t_2)(PyObject *);
long __pyx_t_3;
};
/* "distributed/scheduler.py":3358
* disable_gc_diagnosis()
*
* async def close_worker(self, comm=None, worker=None, safe=None): # <<<<<<<<<<<<<<
* """Remove a worker from the cluster
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_11_close_worker {
PyObject_HEAD
PyObject *__pyx_v_address;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_nanny_addr;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_safe;
PyObject *__pyx_v_self;
PyObject *__pyx_v_worker;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
};
/* "distributed/scheduler.py":3454
* }
*
* async def add_worker( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_12_add_worker {
PyObject_HEAD
PyObject *__pyx_v_address;
PyObject *__pyx_9genexpr36__pyx_v_c;
PyObject *__pyx_v_comm;
struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_9genexpr36__pyx_v_cs;
struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_cs;
PyObject *__pyx_v_e;
PyObject *__pyx_v_extra;
PyObject *__pyx_v_host;
PyObject *__pyx_v_host_info;
PyObject *__pyx_v_key;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_local_directory;
PyObject *__pyx_v_memory_limit;
PyObject *__pyx_v_metrics;
PyObject *__pyx_v_msg;
PyObject *__pyx_v_name;
PyObject *__pyx_v_nanny;
PyObject *__pyx_v_nbytes;
PyObject *__pyx_v_now;
PyObject *__pyx_v_nthreads;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_pid;
PyObject *__pyx_v_plugin;
PyObject *__pyx_v_recommendations;
PyObject *__pyx_v_resolve_address;
PyObject *__pyx_v_resources;
PyObject *__pyx_v_response;
PyObject *__pyx_v_result;
PyObject *__pyx_v_self;
PyObject *__pyx_v_services;
PyObject *__pyx_v_tasks;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_v_types;
PyObject *__pyx_v_valid;
PyObject *__pyx_v_version_warning;
PyObject *__pyx_v_versions;
PyObject *__pyx_9genexpr35__pyx_v_w;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr35__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
Py_ssize_t __pyx_t_5;
PyObject *(*__pyx_t_6)(PyObject *);
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
PyObject *__pyx_t_9;
};
/* "distributed/scheduler.py":3659
* )
*
* def update_graph( # <<<<<<<<<<<<<<
* self,
* client=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_13_update_graph {
PyObject_HEAD
PyObject *__pyx_v_annotations;
PyObject *__pyx_v_child_deps;
PyObject *__pyx_v_deps;
PyObject *__pyx_v_done;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_tasks;
};
/* "distributed/scheduler.py":3702
* for k, deps in list(dependencies.items()):
* if any(
* dep not in parent._tasks and dep not in tasks for dep in deps # <<<<<<<<<<<<<<
* ): # bad key
* logger.info("User asked for computation on lost data, %s", k)
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_14_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_13_update_graph *__pyx_outer_scope;
PyObject *__pyx_v_dep;
};
/* "distributed/scheduler.py":3738
* else:
* child_deps = self.dependencies[dep]
* if all(d in done for d in child_deps): # <<<<<<<<<<<<<<
* if dep in parent._tasks and dep not in done:
* done.add(dep)
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_15_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_13_update_graph *__pyx_outer_scope;
PyObject *__pyx_v_d;
};
/* "distributed/scheduler.py":3797
* if "allow_other_workers" in annotations:
* loose_restrictions.extend(
* k for k, v in annotations["allow_other_workers"].items() if v # <<<<<<<<<<<<<<
* )
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_16_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_13_update_graph *__pyx_outer_scope;
PyObject *__pyx_v_k;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":4083
* return tuple(seen)
*
* async def remove_worker(self, comm=None, address=None, safe=False, close=True): # <<<<<<<<<<<<<<
* """
* Remove worker from cluster
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_17_remove_worker {
PyObject_HEAD
PyObject *__pyx_v_address;
PyObject *__pyx_v_cleanup_delay;
PyObject *__pyx_v_close;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_e;
PyObject *__pyx_v_host;
PyObject *__pyx_v_k;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_plugin;
PyObject *__pyx_v_r;
PyObject *__pyx_v_recommendations;
PyObject *__pyx_v_remove_worker_from_events;
PyObject *__pyx_v_result;
PyObject *__pyx_v_safe;
PyObject *__pyx_v_self;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_v_w;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
Py_ssize_t __pyx_t_8;
PyObject *(*__pyx_t_9)(PyObject *);
};
/* "distributed/scheduler.py":4208
* self.cancel_key(key, client, force=force)
*
* def cancel_key(self, key, client, retries=5, force=False): # <<<<<<<<<<<<<<
* """ Cancel a particular key and all dependents """
* # TODO: this should be converted to use the transition mechanism
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_18_cancel_key {
PyObject_HEAD
PyObject *__pyx_v_client;
PyObject *__pyx_v_key;
PyObject *__pyx_v_retries;
PyObject *__pyx_v_self;
};
/* "distributed/scheduler.py":4366
* raise
*
* def validate_state(self, allow_overlap=False): # <<<<<<<<<<<<<<
* parent: SchedulerState = cast(SchedulerState, self)
* validate_state(parent._tasks, parent._workers, parent._clients)
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_19_validate_state {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr47__pyx_v_ws;
};
/* "distributed/scheduler.py":4398
* a = {w: ws._nbytes for w, ws in parent._workers_dv.items()}
* b = {
* w: sum(ts.get_nbytes() for ts in ws._has_what) # <<<<<<<<<<<<<<
* for w, ws in parent._workers_dv.items()
* }
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_20_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_19_validate_state *__pyx_outer_scope;
PyObject *__pyx_v_ts;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":4459
* logger.critical("Tried writing to closed comm: %s", msg)
*
* async def add_client(self, comm, client=None, versions=None): # <<<<<<<<<<<<<<
* """Add client to network
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_21_add_client {
PyObject_HEAD
PyObject *__pyx_v_bcomm;
PyObject *__pyx_v_client;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_e;
PyObject *__pyx_v_msg;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_plugin;
PyObject *__pyx_v_self;
PyObject *__pyx_v_version_warning;
PyObject *__pyx_v_versions;
PyObject *__pyx_9genexpr51__pyx_v_w;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr51__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
int __pyx_t_3;
int __pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
PyObject *__pyx_t_9;
PyObject *__pyx_t_10;
char const *__pyx_t_11;
};
/* "distributed/scheduler.py":4508
* pass
*
* def remove_client(self, client=None): # <<<<<<<<<<<<<<
* """ Remove client from network """
* parent: SchedulerState = cast(SchedulerState, self)
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_22_remove_client {
PyObject_HEAD
PyObject *__pyx_v_client;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_self;
};
/* "distributed/scheduler.py":4651
* self.check_idle_saturated(ws)
*
* async def handle_worker(self, comm=None, worker=None): # <<<<<<<<<<<<<<
* """
* Listen to responses from a single worker
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_23_handle_worker {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_self;
PyObject *__pyx_v_worker;
PyObject *__pyx_v_worker_comm;
int __pyx_t_0;
int __pyx_t_1;
char const *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
};
/* "distributed/scheduler.py":4672
* await self.remove_worker(address=worker)
*
* def add_plugin(self, plugin=None, idempotent=False, **kwargs): # <<<<<<<<<<<<<<
* """
* Add external plugin to scheduler
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_24_add_plugin {
PyObject_HEAD
PyObject *__pyx_v_plugin;
PyObject *__pyx_v_self;
};
/* "distributed/scheduler.py":4681
* plugin = plugin(self, **kwargs)
*
* if idempotent and any(isinstance(p, type(plugin)) for p in self.plugins): # <<<<<<<<<<<<<<
* return
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_25_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_24_add_plugin *__pyx_outer_scope;
PyObject *__pyx_v_p;
};
/* "distributed/scheduler.py":4741
* ############################
*
* async def scatter( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_26_scatter {
PyObject_HEAD
PyObject *__pyx_v_broadcast;
PyObject *__pyx_v_client;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_data;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_n;
PyObject *__pyx_v_nbytes;
PyObject *__pyx_v_nthreads;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_self;
PyObject *__pyx_v_start;
PyObject *__pyx_v_timeout;
PyObject *__pyx_9genexpr55__pyx_v_w;
PyObject *__pyx_9genexpr56__pyx_v_w;
PyObject *__pyx_9genexpr57__pyx_v_w;
PyObject *__pyx_v_who_has;
PyObject *__pyx_v_workers;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr55__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
};
/* "distributed/scheduler.py":4790
* return keys
*
* async def gather(self, comm=None, keys=None, serializers=None): # <<<<<<<<<<<<<<
* """ Collect data in from workers """
* parent: SchedulerState = cast(SchedulerState, self)
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_27_gather {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_data;
PyObject *__pyx_9genexpr59__pyx_v_key;
PyObject *__pyx_v_key;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_missing_keys;
PyObject *__pyx_v_missing_states;
PyObject *__pyx_v_missing_workers;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_result;
PyObject *__pyx_v_self;
PyObject *__pyx_v_serializers;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_v_who_has;
PyObject *__pyx_9genexpr60__pyx_v_worker;
PyObject *__pyx_v_worker;
PyObject *__pyx_v_workers;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr58__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
};
/* "distributed/scheduler.py":4858
* collection.clear()
*
* async def restart(self, client=None, timeout=3): # <<<<<<<<<<<<<<
* """ Restart all workers. Reset local state. """
* parent: SchedulerState = cast(SchedulerState, self)
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_28_restart {
PyObject_HEAD
PyObject *__pyx_9genexpr62__pyx_v_addr;
PyObject *__pyx_v_addr;
PyObject *__pyx_v_c;
PyObject *__pyx_v_client;
struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_cs;
PyObject *__pyx_v_e;
PyObject *__pyx_v_genexpr;
Py_ssize_t __pyx_v_n_workers;
PyObject *__pyx_v_nannies;
PyObject *__pyx_9genexpr64__pyx_v_nanny;
PyObject *__pyx_9genexpr66__pyx_v_nanny;
PyObject *__pyx_9genexpr67__pyx_v_nanny;
PyObject *__pyx_9genexpr63__pyx_v_nanny_address;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_plugin;
PyObject *__pyx_v_resps;
PyObject *__pyx_v_self;
PyObject *__pyx_v_start;
PyObject *__pyx_v_timeout;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_9genexpr61__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr62__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
Py_ssize_t __pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
int __pyx_t_9;
int __pyx_t_10;
PyObject *__pyx_t_11;
PyObject *__pyx_t_12;
char const *__pyx_t_13;
};
/* "distributed/scheduler.py":4918
* )
* else:
* if not all(resp == "OK" for resp in resps): # <<<<<<<<<<<<<<
* logger.error(
* "Not all workers responded positively: %s", resps, exc_info=True
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_29_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_28_restart *__pyx_outer_scope;
PyObject *__pyx_v_resp;
};
/* "distributed/scheduler.py":4938
* self.report({"op": "restart"})
*
* async def broadcast( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_30_broadcast {
PyObject_HEAD
PyObject *__pyx_9genexpr69__pyx_v_address;
PyObject *__pyx_v_addresses;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_host;
PyObject *__pyx_v_hosts;
PyObject *__pyx_v_msg;
PyObject *__pyx_v_nanny;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_results;
PyObject *__pyx_v_self;
PyObject *__pyx_v_send_message;
PyObject *__pyx_v_serializers;
PyObject *__pyx_9genexpr68__pyx_v_w;
PyObject *__pyx_v_workers;
};
/* "distributed/scheduler.py":4965
* addresses = workers
*
* async def send_message(addr): # <<<<<<<<<<<<<<
* comm = await self.rpc.connect(addr)
* comm.name = "Scheduler Broadcast"
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_31_send_message {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_30_broadcast *__pyx_outer_scope;
PyObject *__pyx_v_addr;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_resp;
};
/* "distributed/scheduler.py":4980
* return dict(zip(workers, results))
*
* async def proxy(self, comm=None, msg=None, worker=None, serializers=None): # <<<<<<<<<<<<<<
* """ Proxy a communication through the scheduler to some other worker """
* d = await self.broadcast(
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_32_proxy {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_d;
PyObject *__pyx_v_msg;
PyObject *__pyx_v_self;
PyObject *__pyx_v_serializers;
PyObject *__pyx_v_worker;
};
/* "distributed/scheduler.py":4987
* return d[worker]
*
* async def _delete_worker_data(self, worker_address, keys): # <<<<<<<<<<<<<<
* """Delete data from a worker and update the corresponding worker/task states
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_33__delete_worker_data {
PyObject_HEAD
PyObject *__pyx_9genexpr70__pyx_v_key;
PyObject *__pyx_v_keys;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_self;
PyObject *__pyx_v_tasks;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_v_worker_address;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
};
/* "distributed/scheduler.py":5011
* self.log_event(ws._address, {"action": "remove-worker-data", "keys": keys})
*
* async def rebalance(self, comm=None, keys=None, workers=None): # <<<<<<<<<<<<<<
* """Rebalance keys so that each worker stores roughly equal bytes
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance {
PyObject_HEAD
PyObject *__pyx_v_avg;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_genexpr;
PyObject *__pyx_9genexpr71__pyx_v_k;
PyObject *__pyx_v_k;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_missing_data;
PyObject *__pyx_v_msgs;
PyObject *__pyx_v_nb;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_r;
PyObject *__pyx_v_recipient;
PyObject *__pyx_v_recipients;
PyObject *__pyx_v_result;
PyObject *__pyx_v_self;
PyObject *__pyx_v_sender;
PyObject *__pyx_v_sender_keys;
PyObject *__pyx_v_sorted_workers;
PyObject *__pyx_v_tasks;
PyObject *__pyx_v_tasks_by_worker;
PyObject *__pyx_v_to_recipients;
PyObject *__pyx_v_to_senders;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_9genexpr72__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_9genexpr74__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_9genexpr75__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_9genexpr79__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_9genexpr77__pyx_v_v;
PyObject *__pyx_v_v;
PyObject *__pyx_v_vv;
PyObject *__pyx_9genexpr73__pyx_v_w;
PyObject *__pyx_v_worker_bytes;
PyObject *__pyx_v_workers;
PyObject *__pyx_v_workers_by_task;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr76__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr77__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
PyObject *__pyx_t_9;
PyObject *__pyx_t_10;
PyObject *__pyx_t_11;
PyObject *__pyx_t_12;
};
/* "distributed/scheduler.py":5049
*
* worker_bytes = {
* ws: sum(ts.get_nbytes() for ts in v) # <<<<<<<<<<<<<<
* for ws, v in tasks_by_worker.items()
* }
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_35_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance *__pyx_outer_scope;
PyObject *__pyx_v_ts;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
PyObject *(*__pyx_t_2)(PyObject *);
};
/* "distributed/scheduler.py":5096
* result = await asyncio.gather(
* *(
* retry_operation(self.rpc(addr=r).gather, who_has=v) # <<<<<<<<<<<<<<
* for r, v in to_recipients.items()
* )
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_36_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance *__pyx_outer_scope;
PyObject *__pyx_v_r;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":5114
* )
*
* if not all(r["status"] == "OK" for r in result): # <<<<<<<<<<<<<<
* return {
* "status": "missing-data",
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_37_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance *__pyx_outer_scope;
PyObject *__pyx_v_r;
};
/* "distributed/scheduler.py":5119
* "keys": tuple(
* concat(
* r["keys"].keys() # <<<<<<<<<<<<<<
* for r in result
* if r["status"] == "missing-data"
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_38_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance *__pyx_outer_scope;
PyObject *__pyx_v_r;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
PyObject *(*__pyx_t_2)(PyObject *);
};
/* "distributed/scheduler.py":5142
*
* await asyncio.gather(
* *(self._delete_worker_data(r, v) for r, v in to_senders.items()) # <<<<<<<<<<<<<<
* )
*
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_39_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_34_rebalance *__pyx_outer_scope;
PyObject *__pyx_v_r;
PyObject *__pyx_v_v;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":5147
* return {"status": "OK"}
*
* async def replicate( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_40_replicate {
PyObject_HEAD
PyObject *__pyx_v_branching_factor;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_count;
PyObject *__pyx_v_del_candidates;
PyObject *__pyx_v_del_worker_tasks;
PyObject *__pyx_v_delete;
PyObject *__pyx_v_gathers;
PyObject *__pyx_v_genexpr;
PyObject *__pyx_9genexpr85__pyx_v_k;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_lock;
PyObject *__pyx_v_missing_data;
PyObject *__pyx_v_n;
PyObject *__pyx_v_n_missing;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_results;
PyObject *__pyx_v_self;
PyObject *__pyx_9genexpr88__pyx_v_t;
PyObject *__pyx_9genexpr87__pyx_v_tasks;
PyObject *__pyx_v_tasks;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_9genexpr86__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_v_v;
PyObject *__pyx_9genexpr84__pyx_v_w;
PyObject *__pyx_v_w;
PyObject *__pyx_v_workers;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr87__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr89__pyx_v_wws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_wws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
};
/* "distributed/scheduler.py":5240
* results = await asyncio.gather(
* *(
* retry_operation(self.rpc(addr=w).gather, who_has=who_has) # <<<<<<<<<<<<<<
* for w, who_has in gathers.items()
* )
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_41_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_40_replicate *__pyx_outer_scope;
PyObject *__pyx_v_w;
PyObject *__pyx_v_who_has;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":5262
* )
*
* def workers_to_close( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_42_workers_to_close {
PyObject_HEAD
PyObject *__pyx_v_group_bytes;
PyObject *__pyx_v_groups;
};
/* "distributed/scheduler.py":5398
* return result
*
* async def retire_workers( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_43_retire_workers {
PyObject_HEAD
PyObject *__pyx_v_close_workers;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_kwargs;
PyObject *__pyx_v_lock;
PyObject *__pyx_v_names;
PyObject *__pyx_v_other_workers;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_remove;
PyObject *__pyx_v_self;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_10genexpr102__pyx_v_ts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_10genexpr100__pyx_v_w;
PyObject *__pyx_10genexpr101__pyx_v_w;
PyObject *__pyx_10genexpr105__pyx_v_w;
PyObject *__pyx_10genexpr106__pyx_v_w;
PyObject *__pyx_v_worker_keys;
PyObject *__pyx_v_workers;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_10genexpr103__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_10genexpr104__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_9genexpr99__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
PyObject *__pyx_t_7;
PyObject *__pyx_t_8;
PyObject *__pyx_t_9;
PyObject *__pyx_t_10;
PyObject *__pyx_t_11;
PyObject *__pyx_t_12;
};
/* "distributed/scheduler.py":5591
* self.report(report_msg, ts=ts, client=client)
*
* async def feed( # <<<<<<<<<<<<<<
* self, comm, function=None, setup=None, teardown=None, interval="1s", **kwargs
* ):
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_44_feed {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_function;
PyObject *__pyx_v_interval;
PyObject *__pyx_v_kwargs;
PyObject *__pyx_v_response;
PyObject *__pyx_v_self;
PyObject *__pyx_v_setup;
PyObject *__pyx_v_state;
PyObject *__pyx_v_teardown;
PyObject *__pyx_t_0;
PyObject *__pyx_t_1;
PyObject *__pyx_t_2;
PyObject *__pyx_t_3;
PyObject *__pyx_t_4;
PyObject *__pyx_t_5;
PyObject *__pyx_t_6;
};
/* "distributed/scheduler.py":5708
* return {w: ws._nthreads for w, ws in parent._workers_dv.items()}
*
* async def get_call_stack(self, comm=None, keys=None): # <<<<<<<<<<<<<<
* parent: SchedulerState = cast(SchedulerState, self)
* ts: TaskState
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_45_get_call_stack {
PyObject_HEAD
PyObject *__pyx_v_comm;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_10genexpr123__pyx_v_dts;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_dts;
PyObject *__pyx_v_genexpr;
PyObject *__pyx_v_key;
PyObject *__pyx_v_keys;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_processing;
PyObject *__pyx_10genexpr126__pyx_v_r;
PyObject *__pyx_v_response;
PyObject *__pyx_v_results;
PyObject *__pyx_v_self;
PyObject *__pyx_v_stack;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts;
PyObject *__pyx_10genexpr124__pyx_v_w;
PyObject *__pyx_10genexpr126__pyx_v_w;
PyObject *__pyx_v_workers;
};
/* "distributed/scheduler.py":5734
*
* results = await asyncio.gather(
* *(self.rpc(w).call_stack(keys=v) for w, v in workers.items()) # <<<<<<<<<<<<<<
* )
* response = {w: r for w, r in zip(workers, results) if r}
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_46_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_45_get_call_stack *__pyx_outer_scope;
PyObject *__pyx_v_v;
PyObject *__pyx_v_w;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":5832
* return {"metadata": plugin.metadata, "state": plugin.state}
*
* async def register_worker_plugin(self, comm, plugin, name=None): # <<<<<<<<<<<<<<
* """ Registers a setup function, and call it on every worker """
* self.worker_plugins.append({"plugin": plugin, "name": name})
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_47_register_worker_plugin {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_name;
PyObject *__pyx_v_plugin;
PyObject *__pyx_v_responses;
PyObject *__pyx_v_self;
};
/* "distributed/scheduler.py":6164
* return self._ipython_kernel.get_connection_info()
*
* async def get_profile( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_48_get_profile {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_genexpr;
PyObject *__pyx_v_key;
PyObject *__pyx_v_merge_workers;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_10genexpr136__pyx_v_r;
PyObject *__pyx_v_response;
PyObject *__pyx_v_results;
PyObject *__pyx_v_scheduler;
PyObject *__pyx_v_self;
PyObject *__pyx_v_server;
PyObject *__pyx_v_start;
PyObject *__pyx_v_stop;
PyObject *__pyx_v_workers;
};
/* "distributed/scheduler.py":6186
* results = await asyncio.gather(
* *(
* self.rpc(w).profile(start=start, stop=stop, key=key, server=server) # <<<<<<<<<<<<<<
* for w in workers
* ),
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_49_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_48_get_profile *__pyx_outer_scope;
PyObject *__pyx_v_w;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
PyObject *(*__pyx_t_2)(PyObject *);
};
/* "distributed/scheduler.py":6200
* return response
*
* async def get_profile_metadata( # <<<<<<<<<<<<<<
* self,
* comm=None,
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_50_get_profile_metadata {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_counts;
PyObject *__pyx_v_d;
PyObject *__pyx_v_dt;
PyObject *__pyx_v_genexpr;
PyObject *__pyx_10genexpr140__pyx_v_group;
PyObject *__pyx_v_groups1;
PyObject *__pyx_v_groups2;
PyObject *__pyx_10genexpr141__pyx_v_k;
PyObject *__pyx_v_k;
PyObject *__pyx_v_keys;
PyObject *__pyx_v_last;
PyObject *__pyx_v_merge_workers;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_profile_cycle_interval;
PyObject *__pyx_10genexpr138__pyx_v_r;
PyObject *__pyx_v_results;
PyObject *__pyx_v_self;
PyObject *__pyx_v_start;
PyObject *__pyx_v_stop;
PyObject *__pyx_v_t;
PyObject *__pyx_10genexpr140__pyx_v_time;
PyObject *__pyx_v_tt;
PyObject *__pyx_10genexpr139__pyx_v_v;
PyObject *__pyx_10genexpr142__pyx_v_v;
PyObject *__pyx_v_v;
PyObject *__pyx_v_workers;
};
/* "distributed/scheduler.py":6220
* workers = set(parent._workers_dv) & set(workers)
* results = await asyncio.gather(
* *(self.rpc(w).profile_metadata(start=start, stop=stop) for w in workers), # <<<<<<<<<<<<<<
* return_exceptions=True,
* )
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_51_genexpr {
PyObject_HEAD
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_50_get_profile_metadata *__pyx_outer_scope;
PyObject *__pyx_v_w;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
PyObject *(*__pyx_t_2)(PyObject *);
};
/* "distributed/scheduler.py":6251
* return {"counts": counts, "keys": keys}
*
* async def performance_report(self, comm=None, start=None, code=""): # <<<<<<<<<<<<<<
* parent: SchedulerState = cast(SchedulerState, self)
* stop = time()
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_52_performance_report {
PyObject_HEAD
PyObject *__pyx_v_BandwidthTypes;
PyObject *__pyx_v_BandwidthWorkers;
PyObject *__pyx_v_Div;
PyObject *__pyx_v_Panel;
PyObject *__pyx_v_Tabs;
PyObject *__pyx_v_bandwidth_types;
PyObject *__pyx_v_bandwidth_workers;
PyObject *__pyx_v_code;
PyObject *__pyx_v_comm;
PyObject *__pyx_v_compute;
PyObject *__pyx_v_d;
PyObject *__pyx_v_data;
PyObject *__pyx_v_distributed;
PyObject *__pyx_v_f;
PyObject *__pyx_v_fn;
PyObject *__pyx_v_get_env;
PyObject *__pyx_v_html;
PyObject *__pyx_v_k;
PyObject *__pyx_v_output_file;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_profile;
PyObject *__pyx_v_profile_to_figure;
PyObject *__pyx_v_rectangles;
PyObject *__pyx_v_rects;
PyObject *__pyx_v_save;
PyObject *__pyx_v_scheduler;
PyObject *__pyx_v_self;
PyObject *__pyx_v_source;
PyObject *__pyx_v_start;
PyObject *__pyx_v_stop;
PyObject *__pyx_v_tabs;
PyObject *__pyx_v_task_stream;
PyObject *__pyx_v_task_stream_figure;
PyObject *__pyx_v_tasks_timings;
PyObject *__pyx_v_template;
PyObject *__pyx_v_template_directory;
PyObject *__pyx_v_template_environment;
PyObject *__pyx_v_timespent;
Py_ssize_t __pyx_v_total_tasks;
PyObject *__pyx_v_workers;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_10genexpr143__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_10genexpr144__pyx_v_ws;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_v_x;
};
/* "distributed/scheduler.py":6388
* return data
*
* async def get_worker_logs(self, comm=None, n=None, workers=None, nanny=False): # <<<<<<<<<<<<<<
* results = await self.broadcast(
* msg={"op": "get_logs", "n": n}, workers=workers, nanny=nanny
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_53_get_worker_logs {
PyObject_HEAD
PyObject *__pyx_v_comm;
PyObject *__pyx_v_n;
PyObject *__pyx_v_nanny;
PyObject *__pyx_v_results;
PyObject *__pyx_v_self;
PyObject *__pyx_v_workers;
};
/* "distributed/scheduler.py":6464
* raise
*
* async def check_worker_ttl(self): # <<<<<<<<<<<<<<
* parent: SchedulerState = cast(SchedulerState, self)
* ws: WorkerState
*/
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_54_check_worker_ttl {
PyObject_HEAD
PyObject *__pyx_v_now;
struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_parent;
PyObject *__pyx_v_self;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws;
PyObject *__pyx_t_0;
Py_ssize_t __pyx_t_1;
Py_ssize_t __pyx_t_2;
int __pyx_t_3;
};
/* "distributed/scheduler.py":266
* @final
* @cclass
* class WorkerState: # <<<<<<<<<<<<<<
* """
* A simple object holding information about a worker.
*/
struct __pyx_vtabstruct_11distributed_9scheduler_WorkerState {
PyObject *(*clean)(struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
PyObject *(*identity)(struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_11distributed_9scheduler_WorkerState *__pyx_vtabptr_11distributed_9scheduler_WorkerState;
static PyObject *__pyx_f_11distributed_9scheduler_11WorkerState_clean(struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
static PyObject *__pyx_f_11distributed_9scheduler_11WorkerState_identity(struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
/* "distributed/scheduler.py":755
* @final
* @cclass
* class TaskGroup: # <<<<<<<<<<<<<<
* """Collection tracking all tasks within a group
*
*/
struct __pyx_vtabstruct_11distributed_9scheduler_TaskGroup {
PyObject *(*add)(struct __pyx_obj_11distributed_9scheduler_TaskGroup *, PyObject *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_11distributed_9scheduler_TaskGroup *__pyx_vtabptr_11distributed_9scheduler_TaskGroup;
static PyObject *__pyx_f_11distributed_9scheduler_9TaskGroup_add(struct __pyx_obj_11distributed_9scheduler_TaskGroup *, PyObject *, int __pyx_skip_dispatch);
/* "distributed/scheduler.py":871
* @final
* @cclass
* class TaskState: # <<<<<<<<<<<<<<
* """
* A simple object holding information about a task.
*/
struct __pyx_vtabstruct_11distributed_9scheduler_TaskState {
PyObject *(*add_dependency)(struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
Py_ssize_t (*get_nbytes)(struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
PyObject *(*set_nbytes)(struct __pyx_obj_11distributed_9scheduler_TaskState *, Py_ssize_t, int __pyx_skip_dispatch);
PyObject *(*validate)(struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_11distributed_9scheduler_TaskState *__pyx_vtabptr_11distributed_9scheduler_TaskState;
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_add_dependency(struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
static CYTHON_INLINE Py_ssize_t __pyx_f_11distributed_9scheduler_9TaskState_get_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_set_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *, Py_ssize_t, int __pyx_skip_dispatch);
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_validate(struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
/* "distributed/scheduler.py":1534
*
* @cclass
* class SchedulerState: # <<<<<<<<<<<<<<
* """Underlying task state of dynamic scheduler
*
*/
struct __pyx_vtabstruct_11distributed_9scheduler_SchedulerState {
struct __pyx_obj_11distributed_9scheduler_WorkerState *(*decide_worker)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
double (*set_duration_estimate)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
PyObject *(*remove_key)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*check_idle_saturated)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch, struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_check_idle_saturated *__pyx_optional_args);
double (*get_comm_cost)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
double (*get_task_duration)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch, struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_get_task_duration *__pyx_optional_args);
PyObject *(*valid_workers)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, int __pyx_skip_dispatch);
PyObject *(*consume_resources)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
PyObject *(*release_resources)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
PyObject *(*coerce_hostname)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*worker_objective)(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_11distributed_9scheduler_SchedulerState *__pyx_vtabptr_11distributed_9scheduler_SchedulerState;
/* --- Runtime support code (head) --- */
/* Refnanny.proto */
#ifndef CYTHON_REFNANNY
#define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
typedef struct {
void (*INCREF)(void*, PyObject*, int);
void (*DECREF)(void*, PyObject*, int);
void (*GOTREF)(void*, PyObject*, int);
void (*GIVEREF)(void*, PyObject*, int);
void* (*SetupContext)(const char*, int, const char*);
void (*FinishContext)(void**);
} __Pyx_RefNannyAPIStruct;
static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
#define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
#ifdef WITH_THREAD
#define __Pyx_RefNannySetupContext(name, acquire_gil)\
if (acquire_gil) {\
PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
PyGILState_Release(__pyx_gilstate_save);\
} else {\
__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
}
#else
#define __Pyx_RefNannySetupContext(name, acquire_gil)\
__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
#endif
#define __Pyx_RefNannyFinishContext()\
__Pyx_RefNanny->FinishContext(&__pyx_refnanny)
#define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0)
#define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0)
#define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0)
#define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0)
#else
#define __Pyx_RefNannyDeclarations
#define __Pyx_RefNannySetupContext(name, acquire_gil)
#define __Pyx_RefNannyFinishContext()
#define __Pyx_INCREF(r) Py_INCREF(r)
#define __Pyx_DECREF(r) Py_DECREF(r)
#define __Pyx_GOTREF(r)
#define __Pyx_GIVEREF(r)
#define __Pyx_XINCREF(r) Py_XINCREF(r)
#define __Pyx_XDECREF(r) Py_XDECREF(r)
#define __Pyx_XGOTREF(r)
#define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_XDECREF_SET(r, v) do {\
PyObject *tmp = (PyObject *) r;\
r = v; __Pyx_XDECREF(tmp);\
} while (0)
#define __Pyx_DECREF_SET(r, v) do {\
PyObject *tmp = (PyObject *) r;\
r = v; __Pyx_DECREF(tmp);\
} while (0)
#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)
/* PyObjectGetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif
/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);
/* RaiseArgTupleInvalid.proto */
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);
/* RaiseDoubleKeywords.proto */
static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name);
/* ParseKeywords.proto */
static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\
PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\
const char* function_name);
/* KeywordStringCheck.proto */
static int __Pyx_CheckKeywordStrings(PyObject *kwdict, const char* function_name, int kw_allowed);
/* GetItemInt.proto */
#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
(__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
__Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\
(is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\
__Pyx_GetItemInt_Generic(o, to_py_func(i))))
#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
(__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
__Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
(PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
int wraparound, int boundscheck);
#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
(__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
__Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
(PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
int wraparound, int boundscheck);
static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
int is_list, int wraparound, int boundscheck);
/* FetchCommonType.proto */
static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type);
/* CythonFunctionShared.proto */
#define __Pyx_CyFunction_USED 1
#define __Pyx_CYFUNCTION_STATICMETHOD 0x01
#define __Pyx_CYFUNCTION_CLASSMETHOD 0x02
#define __Pyx_CYFUNCTION_CCLASS 0x04
#define __Pyx_CyFunction_GetClosure(f)\
(((__pyx_CyFunctionObject *) (f))->func_closure)
#define __Pyx_CyFunction_GetClassObj(f)\
(((__pyx_CyFunctionObject *) (f))->func_classobj)
#define __Pyx_CyFunction_Defaults(type, f)\
((type *)(((__pyx_CyFunctionObject *) (f))->defaults))
#define __Pyx_CyFunction_SetDefaultsGetter(f, g)\
((__pyx_CyFunctionObject *) (f))->defaults_getter = (g)
typedef struct {
PyCFunctionObject func;
#if PY_VERSION_HEX < 0x030500A0
PyObject *func_weakreflist;
#endif
PyObject *func_dict;
PyObject *func_name;
PyObject *func_qualname;
PyObject *func_doc;
PyObject *func_globals;
PyObject *func_code;
PyObject *func_closure;
PyObject *func_classobj;
void *defaults;
int defaults_pyobjects;
size_t defaults_size; // used by FusedFunction for copying defaults
int flags;
PyObject *defaults_tuple;
PyObject *defaults_kwdict;
PyObject *(*defaults_getter)(PyObject *);
PyObject *func_annotations;
} __pyx_CyFunctionObject;
static PyTypeObject *__pyx_CyFunctionType = 0;
#define __Pyx_CyFunction_Check(obj) (__Pyx_TypeCheck(obj, __pyx_CyFunctionType))
static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml,
int flags, PyObject* qualname,
PyObject *self,
PyObject *module, PyObject *globals,
PyObject* code);
static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *m,
size_t size,
int pyobjects);
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m,
PyObject *tuple);
static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m,
PyObject *dict);
static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *m,
PyObject *dict);
static int __pyx_CyFunction_init(void);
/* CythonFunction.proto */
static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml,
int flags, PyObject* qualname,
PyObject *closure,
PyObject *module, PyObject *globals,
PyObject* code);
/* ArgTypeTest.proto */
#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\
((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\
__Pyx__ArgTypeTest(obj, type, name, exact))
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact);
/* PyDictVersioning.proto */
#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1)
#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag)
#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\
(version_var) = __PYX_GET_DICT_VERSION(dict);\
(cache_var) = (value);
#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\
static PY_UINT64_T __pyx_dict_version = 0;\
static PyObject *__pyx_dict_cached_value = NULL;\
if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
(VAR) = __pyx_dict_cached_value;\
} else {\
(VAR) = __pyx_dict_cached_value = (LOOKUP);\
__pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
}\
}
static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj);
static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj);
static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version);
#else
#define __PYX_GET_DICT_VERSION(dict) (0)
#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)
#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP);
#endif
/* GetModuleGlobalName.proto */
#if CYTHON_USE_DICT_VERSIONS
#define __Pyx_GetModuleGlobalName(var, name) {\
static PY_UINT64_T __pyx_dict_version = 0;\
static PyObject *__pyx_dict_cached_value = NULL;\
(var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
(likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\
__Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\
}
#define __Pyx_GetModuleGlobalNameUncached(var, name) {\
PY_UINT64_T __pyx_dict_version;\
PyObject *__pyx_dict_cached_value;\
(var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\
}
static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value);
#else
#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name)
#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name)
static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name);
#endif
/* PyFunctionFastCall.proto */
#if CYTHON_FAST_PYCALL
#define __Pyx_PyFunction_FastCall(func, args, nargs)\
__Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs);
#else
#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs)
#endif
#define __Pyx_BUILD_ASSERT_EXPR(cond)\
(sizeof(char [1 - 2*!(cond)]) - 1)
#ifndef Py_MEMBER_SIZE
#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member)
#endif
static size_t __pyx_pyframe_localsplus_offset = 0;
#include "frameobject.h"
#define __Pxy_PyFrame_Initialize_Offsets()\
((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\
(void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus)))
#define __Pyx_PyFrame_GetLocalsplus(frame)\
(assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset))
#endif
/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif
/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif
/* PyObjectCallNoArg.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#else
#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL)
#endif
/* PyCFunctionFastCall.proto */
#if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs);
#else
#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL)
#endif
/* PyObjectCallOneArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);
/* ExtTypeTest.proto */
static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type);
/* IncludeStringH.proto */
#include <string.h>
/* BytesEquals.proto */
static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals);
/* UnicodeEquals.proto */
static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals);
/* PyErrExceptionMatches.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err)
#endif
/* PyThreadStateGet.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate;
#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current;
#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
#define __Pyx_PyErr_Occurred() PyErr_Occurred()
#endif
/* PyErrFetchRestore.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#endif
#else
#define __Pyx_PyErr_Clear() PyErr_Clear()
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb)
#endif
/* GetAttr.proto */
static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *);
/* GetAttr3.proto */
static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *);
/* pyobject_as_double.proto */
static double __Pyx__PyObject_AsDouble(PyObject* obj);
#if CYTHON_COMPILING_IN_PYPY
#define __Pyx_PyObject_AsDouble(obj)\
(likely(PyFloat_CheckExact(obj)) ? PyFloat_AS_DOUBLE(obj) :\
likely(PyInt_CheckExact(obj)) ?\
PyFloat_AsDouble(obj) : __Pyx__PyObject_AsDouble(obj))
#else
#define __Pyx_PyObject_AsDouble(obj)\
((likely(PyFloat_CheckExact(obj))) ?\
PyFloat_AS_DOUBLE(obj) : __Pyx__PyObject_AsDouble(obj))
#endif
/* PyObjectCall2Args.proto */
static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2);
/* ListCompAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {
PyListObject* L = (PyListObject*) list;
Py_ssize_t len = Py_SIZE(list);
if (likely(L->allocated > len)) {
Py_INCREF(x);
PyList_SET_ITEM(list, len, x);
__Pyx_SET_SIZE(list, len + 1);
return 0;
}
return PyList_Append(list, x);
}
#else
#define __Pyx_ListComp_Append(L,x) PyList_Append(L,x)
#endif
/* PyObjectFormatSimple.proto */
#if CYTHON_COMPILING_IN_PYPY
#define __Pyx_PyObject_FormatSimple(s, f) (\
likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
PyObject_Format(s, f))
#elif PY_MAJOR_VERSION < 3
#define __Pyx_PyObject_FormatSimple(s, f) (\
likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
likely(PyString_CheckExact(s)) ? PyUnicode_FromEncodedObject(s, NULL, "strict") :\
PyObject_Format(s, f))
#elif CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_FormatSimple(s, f) (\
likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
likely(PyLong_CheckExact(s)) ? PyLong_Type.tp_str(s) :\
likely(PyFloat_CheckExact(s)) ? PyFloat_Type.tp_str(s) :\
PyObject_Format(s, f))
#else
#define __Pyx_PyObject_FormatSimple(s, f) (\
likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\
PyObject_Format(s, f))
#endif
/* RaiseException.proto */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);
/* IterFinish.proto */
static CYTHON_INLINE int __Pyx_IterFinish(void);
/* PyObjectGetMethod.proto */
static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method);
/* PyObjectCallMethod0.proto */
static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name);
/* RaiseNeedMoreValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);
/* RaiseTooManyValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected);
/* UnpackItemEndCheck.proto */
static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected);
/* RaiseNoneIterError.proto */
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void);
/* UnpackTupleError.proto */
static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index);
/* UnpackTuple2.proto */
#define __Pyx_unpack_tuple2(tuple, value1, value2, is_tuple, has_known_size, decref_tuple)\
(likely(is_tuple || PyTuple_Check(tuple)) ?\
(likely(has_known_size || PyTuple_GET_SIZE(tuple) == 2) ?\
__Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple) :\
(__Pyx_UnpackTupleError(tuple, 2), -1)) :\
__Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple))
static CYTHON_INLINE int __Pyx_unpack_tuple2_exact(
PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple);
static int __Pyx_unpack_tuple2_generic(
PyObject* tuple, PyObject** value1, PyObject** value2, int has_known_size, int decref_tuple);
/* dict_iter.proto */
static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* dict, int is_dict, PyObject* method_name,
Py_ssize_t* p_orig_length, int* p_is_dict);
static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* dict_or_iter, Py_ssize_t orig_length, Py_ssize_t* ppos,
PyObject** pkey, PyObject** pvalue, PyObject** pitem, int is_dict);
/* PyObjectFormatAndDecref.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f);
static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f);
/* BuildPyUnicode.proto */
static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, char* chars, int clength,
int prepend_sign, char padding_char);
/* CIntToPyUnicode.proto */
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_Py_ssize_t(Py_ssize_t value, Py_ssize_t width, char padding_char, char format_char);
/* JoinPyUnicode.proto */
static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_count, Py_ssize_t result_ulength,
Py_UCS4 max_char);
/* RaiseMappingExpected.proto */
static void __Pyx_RaiseMappingExpectedError(PyObject* arg);
/* PySequenceContains.proto */
static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* seq, int eq) {
int result = PySequence_Contains(seq, item);
return unlikely(result < 0) ? result : (result == (eq == Py_EQ));
}
/* DictGetItem.proto */
#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key);
#define __Pyx_PyObject_Dict_GetItem(obj, name)\
(likely(PyDict_CheckExact(obj)) ?\
__Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name))
#else
#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key)
#define __Pyx_PyObject_Dict_GetItem(obj, name) PyObject_GetItem(obj, name)
#endif
/* PyIntCompare.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_NeObjC(PyObject *op1, PyObject *op2, long intval, long inplace);
/* None.proto */
static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname);
/* set_iter.proto */
static CYTHON_INLINE PyObject* __Pyx_set_iterator(PyObject* iterable, int is_set,
Py_ssize_t* p_orig_length, int* p_source_is_set);
static CYTHON_INLINE int __Pyx_set_iter_next(
PyObject* iter_obj, Py_ssize_t orig_length,
Py_ssize_t* ppos, PyObject **value,
int source_is_set);
/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyInt_AddObjC(op1, op2, intval, inplace, zerodivision_check)\
(inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2))
#endif
/* py_dict_items.proto */
static CYTHON_INLINE PyObject* __Pyx_PyDict_Items(PyObject* d);
/* UnpackUnboundCMethod.proto */
typedef struct {
PyObject *type;
PyObject **method_name;
PyCFunction func;
PyObject *method;
int flag;
} __Pyx_CachedCFunction;
/* CallUnboundCMethod0.proto */
static PyObject* __Pyx__CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self);
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_CallUnboundCMethod0(cfunc, self)\
(likely((cfunc)->func) ?\
(likely((cfunc)->flag == METH_NOARGS) ? (*((cfunc)->func))(self, NULL) :\
(PY_VERSION_HEX >= 0x030600B1 && likely((cfunc)->flag == METH_FASTCALL) ?\
(PY_VERSION_HEX >= 0x030700A0 ?\
(*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)(cfunc)->func)(self, &__pyx_empty_tuple, 0) :\
(*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)(cfunc)->func)(self, &__pyx_empty_tuple, 0, NULL)) :\
(PY_VERSION_HEX >= 0x030700A0 && (cfunc)->flag == (METH_FASTCALL | METH_KEYWORDS) ?\
(*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)(cfunc)->func)(self, &__pyx_empty_tuple, 0, NULL) :\
(likely((cfunc)->flag == (METH_VARARGS | METH_KEYWORDS)) ? ((*(PyCFunctionWithKeywords)(void*)(PyCFunction)(cfunc)->func)(self, __pyx_empty_tuple, NULL)) :\
((cfunc)->flag == METH_VARARGS ? (*((cfunc)->func))(self, __pyx_empty_tuple) :\
__Pyx__CallUnboundCMethod0(cfunc, self)))))) :\
__Pyx__CallUnboundCMethod0(cfunc, self))
#else
#define __Pyx_CallUnboundCMethod0(cfunc, self) __Pyx__CallUnboundCMethod0(cfunc, self)
#endif
/* py_dict_values.proto */
static CYTHON_INLINE PyObject* __Pyx_PyDict_Values(PyObject* d);
/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyInt_SubtractObjC(op1, op2, intval, inplace, zerodivision_check)\
(inplace ? PyNumber_InPlaceSubtract(op1, op2) : PyNumber_Subtract(op1, op2))
#endif
/* PyUnicode_Unicode.proto */
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_Unicode(PyObject *obj);
/* GetTopmostException.proto */
#if CYTHON_USE_EXC_INFO_STACK
static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate);
#endif
/* SaveResetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
#else
#define __Pyx_ExceptionSave(type, value, tb) PyErr_GetExcInfo(type, value, tb)
#define __Pyx_ExceptionReset(type, value, tb) PyErr_SetExcInfo(type, value, tb)
#endif
/* GetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif
/* Import.proto */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);
/* SwapException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSwap(type, value, tb) __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb);
#endif
/* PyObjectSetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL)
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value);
#else
#define __Pyx_PyObject_DelAttrStr(o,n) PyObject_DelAttr(o,n)
#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v)
#endif
/* ObjectGetItem.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key);
#else
#define __Pyx_PyObject_GetItem(obj, key) PyObject_GetItem(obj, key)
#endif
/* pyfrozenset_new.proto */
static CYTHON_INLINE PyObject* __Pyx_PyFrozenSet_New(PyObject* it);
/* PySetContains.proto */
static CYTHON_INLINE int __Pyx_PySet_ContainsTF(PyObject* key, PyObject* set, int eq);
/* py_set_remove.proto */
static CYTHON_INLINE int __Pyx_PySet_Remove(PyObject *set, PyObject *key);
/* None.proto */
static CYTHON_INLINE Py_ssize_t __Pyx_mod_Py_ssize_t(Py_ssize_t, Py_ssize_t);
/* PyDictContains.proto */
static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, int eq) {
int result = PyDict_Contains(dict, item);
return unlikely(result < 0) ? result : (result == (eq == Py_EQ));
}
/* dict_getitem_default.proto */
static PyObject* __Pyx_PyDict_GetItemDefault(PyObject* d, PyObject* key, PyObject* default_value);
/* CallUnboundCMethod1.proto */
static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg);
#else
#define __Pyx_CallUnboundCMethod1(cfunc, self, arg) __Pyx__CallUnboundCMethod1(cfunc, self, arg)
#endif
/* CallUnboundCMethod2.proto */
static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2);
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030600B1
static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2);
#else
#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2)
#endif
/* ListAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {
PyListObject* L = (PyListObject*) list;
Py_ssize_t len = Py_SIZE(list);
if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) {
Py_INCREF(x);
PyList_SET_ITEM(list, len, x);
__Pyx_SET_SIZE(list, len + 1);
return 0;
}
return PyList_Append(list, x);
}
#else
#define __Pyx_PyList_Append(L,x) PyList_Append(L,x)
#endif
/* py_set_discard.proto */
static CYTHON_INLINE int __Pyx_PySet_Discard(PyObject *set, PyObject *key);
/* PyObjectLookupSpecial.proto */
#if CYTHON_USE_PYTYPE_LOOKUP && CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_LookupSpecial(PyObject* obj, PyObject* attr_name) {
PyObject *res;
PyTypeObject *tp = Py_TYPE(obj);
#if PY_MAJOR_VERSION < 3
if (unlikely(PyInstance_Check(obj)))
return __Pyx_PyObject_GetAttrStr(obj, attr_name);
#endif
res = _PyType_Lookup(tp, attr_name);
if (likely(res)) {
descrgetfunc f = Py_TYPE(res)->tp_descr_get;
if (!f) {
Py_INCREF(res);
} else {
res = f(res, obj, (PyObject *)tp);
}
} else {
PyErr_SetObject(PyExc_AttributeError, attr_name);
}
return res;
}
#else
#define __Pyx_PyObject_LookupSpecial(o,n) __Pyx_PyObject_GetAttrStr(o,n)
#endif
/* py_dict_pop.proto */
static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyObject *default_value);
/* PyObjectCallMethod1.proto */
static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg);
/* append.proto */
static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x);
/* None.proto */
static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname);
/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_TrueDivideObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyInt_TrueDivideObjC(op1, op2, intval, inplace, zerodivision_check)\
(inplace ? PyNumber_InPlaceTrueDivide(op1, op2) : PyNumber_TrueDivide(op1, op2))
#endif
/* MergeKeywords.proto */
static int __Pyx_MergeKeywords(PyObject *kwdict, PyObject *source_mapping);
/* CoroutineBase.proto */
typedef PyObject *(*__pyx_coroutine_body_t)(PyObject *, PyThreadState *, PyObject *);
#if CYTHON_USE_EXC_INFO_STACK
#define __Pyx_ExcInfoStruct _PyErr_StackItem
#else
typedef struct {
PyObject *exc_type;
PyObject *exc_value;
PyObject *exc_traceback;
} __Pyx_ExcInfoStruct;
#endif
typedef struct {
PyObject_HEAD
__pyx_coroutine_body_t body;
PyObject *closure;
__Pyx_ExcInfoStruct gi_exc_state;
PyObject *gi_weakreflist;
PyObject *classobj;
PyObject *yieldfrom;
PyObject *gi_name;
PyObject *gi_qualname;
PyObject *gi_modulename;
PyObject *gi_code;
int resume_label;
char is_running;
} __pyx_CoroutineObject;
static __pyx_CoroutineObject *__Pyx__Coroutine_New(
PyTypeObject *type, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
PyObject *name, PyObject *qualname, PyObject *module_name);
static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit(
__pyx_CoroutineObject *gen, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
PyObject *name, PyObject *qualname, PyObject *module_name);
static CYTHON_INLINE void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *self);
static int __Pyx_Coroutine_clear(PyObject *self);
static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value);
static PyObject *__Pyx_Coroutine_Close(PyObject *self);
static PyObject *__Pyx_Coroutine_Throw(PyObject *gen, PyObject *args);
#if CYTHON_USE_EXC_INFO_STACK
#define __Pyx_Coroutine_SwapException(self)
#define __Pyx_Coroutine_ResetAndClearException(self) __Pyx_Coroutine_ExceptionClear(&(self)->gi_exc_state)
#else
#define __Pyx_Coroutine_SwapException(self) {\
__Pyx_ExceptionSwap(&(self)->gi_exc_state.exc_type, &(self)->gi_exc_state.exc_value, &(self)->gi_exc_state.exc_traceback);\
__Pyx_Coroutine_ResetFrameBackpointer(&(self)->gi_exc_state);\
}
#define __Pyx_Coroutine_ResetAndClearException(self) {\
__Pyx_ExceptionReset((self)->gi_exc_state.exc_type, (self)->gi_exc_state.exc_value, (self)->gi_exc_state.exc_traceback);\
(self)->gi_exc_state.exc_type = (self)->gi_exc_state.exc_value = (self)->gi_exc_state.exc_traceback = NULL;\
}
#endif
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyGen_FetchStopIterationValue(pvalue)\
__Pyx_PyGen__FetchStopIterationValue(__pyx_tstate, pvalue)
#else
#define __Pyx_PyGen_FetchStopIterationValue(pvalue)\
__Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, pvalue)
#endif
static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *tstate, PyObject **pvalue);
static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state);
/* PyObject_GenericGetAttrNoDict.proto */
#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000
static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr
#endif
/* PatchModuleWithCoroutine.proto */
static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code);
/* PatchGeneratorABC.proto */
static int __Pyx_patch_abc(void);
/* Coroutine.proto */
#define __Pyx_Coroutine_USED
static PyTypeObject *__pyx_CoroutineType = 0;
static PyTypeObject *__pyx_CoroutineAwaitType = 0;
#define __Pyx_Coroutine_CheckExact(obj) (Py_TYPE(obj) == __pyx_CoroutineType)
#define __Pyx_Coroutine_Check(obj) __Pyx_Coroutine_CheckExact(obj)
#define __Pyx_CoroutineAwait_CheckExact(obj) (Py_TYPE(obj) == __pyx_CoroutineAwaitType)
#define __Pyx_Coroutine_New(body, code, closure, name, qualname, module_name)\
__Pyx__Coroutine_New(__pyx_CoroutineType, body, code, closure, name, qualname, module_name)
static int __pyx_Coroutine_init(void);
static PyObject *__Pyx__Coroutine_await(PyObject *coroutine);
typedef struct {
PyObject_HEAD
PyObject *coroutine;
} __pyx_CoroutineAwaitObject;
static PyObject *__Pyx_CoroutineAwait_Close(__pyx_CoroutineAwaitObject *self, PyObject *arg);
static PyObject *__Pyx_CoroutineAwait_Throw(__pyx_CoroutineAwaitObject *self, PyObject *args);
/* GetAwaitIter.proto */
static CYTHON_INLINE PyObject *__Pyx_Coroutine_GetAwaitableIter(PyObject *o);
static PyObject *__Pyx__Coroutine_GetAwaitableIter(PyObject *o);
/* CoroutineYieldFrom.proto */
static CYTHON_INLINE PyObject* __Pyx_Coroutine_Yield_From(__pyx_CoroutineObject *gen, PyObject *source);
/* ReturnWithStopIteration.proto */
#define __Pyx_ReturnWithStopIteration(value)\
if (value == Py_None) PyErr_SetNone(PyExc_StopIteration); else __Pyx__ReturnWithStopIteration(value)
static void __Pyx__ReturnWithStopIteration(PyObject* value);
/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_SubtractCObj(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyInt_SubtractCObj(op1, op2, intval, inplace, zerodivision_check)\
(inplace ? PyNumber_InPlaceSubtract(op1, op2) : PyNumber_Subtract(op1, op2))
#endif
/* SliceObject.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(
PyObject* obj, Py_ssize_t cstart, Py_ssize_t cstop,
PyObject** py_start, PyObject** py_stop, PyObject** py_slice,
int has_cstart, int has_cstop, int wraparound);
/* pop.proto */
static CYTHON_INLINE PyObject* __Pyx__PyObject_Pop(PyObject* L);
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE PyObject* __Pyx_PyList_Pop(PyObject* L);
#define __Pyx_PyObject_Pop(L) (likely(PyList_CheckExact(L)) ?\
__Pyx_PyList_Pop(L) : __Pyx__PyObject_Pop(L))
#else
#define __Pyx_PyList_Pop(L) __Pyx__PyObject_Pop(L)
#define __Pyx_PyObject_Pop(L) __Pyx__PyObject_Pop(L)
#endif
/* ListExtend.proto */
static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) {
#if CYTHON_COMPILING_IN_CPYTHON
PyObject* none = _PyList_Extend((PyListObject*)L, v);
if (unlikely(!none))
return -1;
Py_DECREF(none);
return 0;
#else
return PyList_SetSlice(L, PY_SSIZE_T_MAX, PY_SSIZE_T_MAX, v);
#endif
}
/* PyFloatBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyFloat_SubtractObjC(PyObject *op1, PyObject *op2, double floatval, int inplace, int zerodivision_check);
#else
#define __Pyx_PyFloat_SubtractObjC(op1, op2, floatval, inplace, zerodivision_check)\
(inplace ? PyNumber_InPlaceSubtract(op1, op2) : PyNumber_Subtract(op1, op2))
#endif
/* py_abs.proto */
#if CYTHON_USE_PYLONG_INTERNALS
static PyObject *__Pyx_PyLong_AbsNeg(PyObject *num);
#define __Pyx_PyNumber_Absolute(x)\
((likely(PyLong_CheckExact(x))) ?\
(likely(Py_SIZE(x) >= 0) ? (Py_INCREF(x), (x)) : __Pyx_PyLong_AbsNeg(x)) :\
PyNumber_Absolute(x))
#else
#define __Pyx_PyNumber_Absolute(x) PyNumber_Absolute(x)
#endif
/* FastTypeChecks.proto */
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
#else
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
#endif
#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)
/* IterNext.proto */
#define __Pyx_PyIter_Next(obj) __Pyx_PyIter_Next2(obj, NULL)
static CYTHON_INLINE PyObject *__Pyx_PyIter_Next2(PyObject *, PyObject *);
/* None.proto */
static CYTHON_INLINE Py_ssize_t __Pyx_div_Py_ssize_t(Py_ssize_t, Py_ssize_t);
/* SliceTupleAndList.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyList_GetSlice(PyObject* src, Py_ssize_t start, Py_ssize_t stop);
static CYTHON_INLINE PyObject* __Pyx_PyTuple_GetSlice(PyObject* src, Py_ssize_t start, Py_ssize_t stop);
#else
#define __Pyx_PyList_GetSlice(seq, start, stop) PySequence_GetSlice(seq, start, stop)
#define __Pyx_PyTuple_GetSlice(seq, start, stop) PySequence_GetSlice(seq, start, stop)
#endif
/* PyIntCompare.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, long intval, long inplace);
/* ImportFrom.proto */
static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name);
/* SetItemInt.proto */
#define __Pyx_SetItemInt(o, i, v, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
(__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
__Pyx_SetItemInt_Fast(o, (Py_ssize_t)i, v, is_list, wraparound, boundscheck) :\
(is_list ? (PyErr_SetString(PyExc_IndexError, "list assignment index out of range"), -1) :\
__Pyx_SetItemInt_Generic(o, to_py_func(i), v)))
static int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v);
static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v,
int is_list, int wraparound, int boundscheck);
/* HasAttr.proto */
static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *);
/* PyObjectGetAttrStrNoError.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name);
/* SetupReduce.proto */
static int __Pyx_setup_reduce(PyObject* type_obj);
/* SetVTable.proto */
static int __Pyx_SetVtable(PyObject *dict, void *vtable);
/* PyObject_GenericGetAttr.proto */
#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000
static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GenericGetAttr PyObject_GenericGetAttr
#endif
/* PatchInspect.proto */
static PyObject* __Pyx_patch_inspect(PyObject* module);
/* PatchAsyncIO.proto */
static PyObject* __Pyx_patch_asyncio(PyObject* module);
/* Globals.proto */
static PyObject* __Pyx_Globals(void);
/* CalculateMetaclass.proto */
static PyObject *__Pyx_CalculateMetaclass(PyTypeObject *metaclass, PyObject *bases);
/* SetNameInClass.proto */
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
#define __Pyx_SetNameInClass(ns, name, value)\
(likely(PyDict_CheckExact(ns)) ? _PyDict_SetItem_KnownHash(ns, name, value, ((PyASCIIObject *) name)->hash) : PyObject_SetItem(ns, name, value))
#elif CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_SetNameInClass(ns, name, value)\
(likely(PyDict_CheckExact(ns)) ? PyDict_SetItem(ns, name, value) : PyObject_SetItem(ns, name, value))
#else
#define __Pyx_SetNameInClass(ns, name, value) PyObject_SetItem(ns, name, value)
#endif
/* Py3ClassCreate.proto */
static PyObject *__Pyx_Py3MetaclassPrepare(PyObject *metaclass, PyObject *bases, PyObject *name, PyObject *qualname,
PyObject *mkw, PyObject *modname, PyObject *doc);
static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObject *bases, PyObject *dict,
PyObject *mkw, int calculate_metaclass, int allow_py2_metaclass);
/* CyFunctionClassCell.proto */
static int __Pyx_CyFunction_InitClassCell(PyObject *cyfunctions, PyObject *classobj);
/* CLineInTraceback.proto */
#ifdef CYTHON_CLINE_IN_TRACEBACK
#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
#else
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line);
#endif
/* CodeObjectCache.proto */
typedef struct {
PyCodeObject* code_object;
int code_line;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
int count;
int max_count;
__Pyx_CodeObjectCacheEntry* entries;
};
static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static PyCodeObject *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);
/* AddTraceback.proto */
static void __Pyx_AddTraceback(const char *funcname, int c_line,
int py_line, const char *filename);
/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);
/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);
/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);
/* Generator.proto */
#define __Pyx_Generator_USED
static PyTypeObject *__pyx_GeneratorType = 0;
#define __Pyx_Generator_CheckExact(obj) (Py_TYPE(obj) == __pyx_GeneratorType)
#define __Pyx_Generator_New(body, code, closure, name, qualname, module_name)\
__Pyx__Coroutine_New(__pyx_GeneratorType, body, code, closure, name, qualname, module_name)
static PyObject *__Pyx_Generator_Next(PyObject *self);
static int __pyx_Generator_init(void);
/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(void);
/* InitStrings.proto */
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);
static PyObject *__pyx_f_11distributed_9scheduler_11WorkerState_clean(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_11WorkerState_identity(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskGroup_add(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v_o, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_add_dependency(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_other, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static CYTHON_INLINE Py_ssize_t __pyx_f_11distributed_9scheduler_9TaskState_get_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_set_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, Py_ssize_t __pyx_v_nbytes, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_validate(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch); /* proto*/
static struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_f_11distributed_9scheduler_14SchedulerState_decide_worker(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, int __pyx_skip_dispatch); /* proto*/
static double __pyx_f_11distributed_9scheduler_14SchedulerState_set_duration_estimate(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_remove_key(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key, int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_check_idle_saturated(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, int __pyx_skip_dispatch, struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_check_idle_saturated *__pyx_optional_args); /* proto*/
static double __pyx_f_11distributed_9scheduler_14SchedulerState_get_comm_cost(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, int __pyx_skip_dispatch); /* proto*/
static double __pyx_f_11distributed_9scheduler_14SchedulerState_get_task_duration(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, int __pyx_skip_dispatch, struct __pyx_opt_args_11distributed_9scheduler_14SchedulerState_get_task_duration *__pyx_optional_args); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_valid_workers(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_consume_resources(CYTHON_UNUSED struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_release_resources(CYTHON_UNUSED struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_coerce_hostname(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_host, int __pyx_skip_dispatch); /* proto*/
static PyObject *__pyx_f_11distributed_9scheduler_14SchedulerState_worker_objective(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, int __pyx_skip_dispatch); /* proto*/
/* Module declarations from 'distributed.scheduler' */
static PyTypeObject *__pyx_ptype_11distributed_9scheduler_ClientState = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler_WorkerState = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler_TaskPrefix = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler_TaskGroup = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler_TaskState = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler_SchedulerState = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct____repr__ = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_1_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_2___repr__ = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_3_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_4___iter__ = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_5___len__ = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_6_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_7___iter__ = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_8_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_9_start = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_10_close = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_11_close_worker = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_12_add_worker = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_13_update_graph = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_14_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_15_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_16_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_17_remove_worker = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_18_cancel_key = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_19_validate_state = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_20_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_21_add_client = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_22_remove_client = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_23_handle_worker = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_24_add_plugin = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_25_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_26_scatter = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_27_gather = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_28_restart = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_29_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_30_broadcast = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_31_send_message = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_32_proxy = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_33__delete_worker_data = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_34_rebalance = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_35_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_36_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_37_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_38_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_39_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_40_replicate = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_41_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_42_workers_to_close = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_43_retire_workers = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_44_feed = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_45_get_call_stack = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_46_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_47_register_worker_plugin = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_48_get_profile = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_49_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_50_get_profile_metadata = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_51_genexpr = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_52_performance_report = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_53_get_worker_logs = 0;
static PyTypeObject *__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_54_check_worker_ttl = 0;
static Py_ssize_t __pyx_v_11distributed_9scheduler_DEFAULT_DATA_SIZE;
static double __pyx_v_11distributed_9scheduler_UNKNOWN_TASK_DURATION;
static PyObject *__pyx_v_11distributed_9scheduler_ALL_TASK_STATES = 0;
static PyObject *__pyx_f_11distributed_9scheduler__remove_from_processing(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__add_to_memory(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *, PyObject *, PyObject *, struct __pyx_opt_args_11distributed_9scheduler__add_to_memory *__pyx_optional_args); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__propagate_forgotten(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, PyObject *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__client_releases_keys(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, PyObject *, struct __pyx_obj_11distributed_9scheduler_ClientState *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__task_to_msg(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *, struct __pyx_opt_args_11distributed_9scheduler__task_to_msg *__pyx_optional_args); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__task_to_report_msg(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__task_to_client_msgs(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_TaskState *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler__reevaluate_occupancy_worker(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, struct __pyx_obj_11distributed_9scheduler_WorkerState *); /*proto*/
static struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_f_11distributed_9scheduler_decide_worker(struct __pyx_obj_11distributed_9scheduler_TaskState *, PyObject *, PyObject *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler___pyx_unpickle_ClientState__set_state(struct __pyx_obj_11distributed_9scheduler_ClientState *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler___pyx_unpickle_WorkerState__set_state(struct __pyx_obj_11distributed_9scheduler_WorkerState *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler___pyx_unpickle_TaskPrefix__set_state(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler___pyx_unpickle_TaskGroup__set_state(struct __pyx_obj_11distributed_9scheduler_TaskGroup *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler___pyx_unpickle_TaskState__set_state(struct __pyx_obj_11distributed_9scheduler_TaskState *, PyObject *); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler___pyx_unpickle_SchedulerState__set_state(struct __pyx_obj_11distributed_9scheduler_SchedulerState *, PyObject *); /*proto*/
#define __Pyx_MODULE_NAME "distributed.scheduler"
extern int __pyx_module_is_main_distributed__scheduler;
int __pyx_module_is_main_distributed__scheduler = 0;
/* Implementation of 'distributed.scheduler' */
static PyObject *__pyx_builtin_ImportError;
static PyObject *__pyx_builtin_TypeError;
static PyObject *__pyx_builtin_sum;
static PyObject *__pyx_builtin_any;
static PyObject *__pyx_builtin_map;
static PyObject *__pyx_builtin_KeyError;
static PyObject *__pyx_builtin_super;
static PyObject *__pyx_builtin_min;
static PyObject *__pyx_builtin_all;
static PyObject *__pyx_builtin_AttributeError;
static PyObject *__pyx_builtin_open;
static PyObject *__pyx_builtin_range;
static PyObject *__pyx_builtin_ValueError;
static PyObject *__pyx_builtin_sorted;
static PyObject *__pyx_builtin_zip;
static PyObject *__pyx_builtin_reversed;
static PyObject *__pyx_builtin_StopIteration;
static PyObject *__pyx_builtin_EnvironmentError;
static PyObject *__pyx_builtin_RuntimeError;
static const char __pyx_k_T[] = "T";
static const char __pyx_k_a[] = "a";
static const char __pyx_k_b[] = "b";
static const char __pyx_k_c[] = "c";
static const char __pyx_k_d[] = "d";
static const char __pyx_k_e[] = "e";
static const char __pyx_k_f[] = "f";
static const char __pyx_k_g[] = "g";
static const char __pyx_k_i[] = "i";
static const char __pyx_k_k[] = "k";
static const char __pyx_k_n[] = "n";
static const char __pyx_k_p[] = "p";
static const char __pyx_k_r[] = "r";
static const char __pyx_k_s[] = "s";
static const char __pyx_k_t[] = "t";
static const char __pyx_k_v[] = "v";
static const char __pyx_k_w[] = "w";
static const char __pyx_k_x[] = "x";
static const char __pyx_k_1s[] = "1s";
static const char __pyx_k_OK[] = "OK";
static const char __pyx_k__3[] = ">";
static const char __pyx_k__4[] = ": ";
static const char __pyx_k__5[] = "<";
static const char __pyx_k__6[] = ", ";
static const char __pyx_k__7[] = " ";
static const char __pyx_k__8[] = "(";
static const char __pyx_k__9[] = ")";
static const char __pyx_k_bw[] = "bw";
static const char __pyx_k_cs[] = "cs";
static const char __pyx_k_dt[] = "dt";
static const char __pyx_k_fn[] = "fn";
static const char __pyx_k_id[] = "id";
static const char __pyx_k_ip[] = "ip";
static const char __pyx_k_kv[] = "kv";
static const char __pyx_k_li[] = "\n<li> ";
static const char __pyx_k_ms[] = "ms";
static const char __pyx_k_nb[] = "nb";
static const char __pyx_k_ns[] = "ns";
static const char __pyx_k_op[] = "op";
static const char __pyx_k_os[] = "os";
static const char __pyx_k_pc[] = "pc";
static const char __pyx_k_st[] = "st";
static const char __pyx_k_tg[] = "tg";
static const char __pyx_k_tp[] = "tp";
static const char __pyx_k_ts[] = "ts";
static const char __pyx_k_tt[] = "tt";
static const char __pyx_k_vv[] = "vv";
static const char __pyx_k_wh[] = "wh";
static const char __pyx_k_ws[] = "ws";
static const char __pyx_k_ww[] = "ww";
static const char __pyx_k_2ms[] = "2ms";
static const char __pyx_k_5ms[] = "5ms";
static const char __pyx_k_60s[] = "60s";
static const char __pyx_k_All[] = "All";
static const char __pyx_k_Div[] = "Div";
static const char __pyx_k_Set[] = "Set";
static const char __pyx_k__14[] = "/";
static const char __pyx_k__48[] = "://";
static const char __pyx_k__50[] = "";
static const char __pyx_k__51[] = ":";
static const char __pyx_k__53[] = "]";
static const char __pyx_k__60[] = "-";
static const char __pyx_k__61[] = "_";
static const char __pyx_k__84[] = ".";
static const char __pyx_k_add[] = "add";
static const char __pyx_k_all[] = "all";
static const char __pyx_k_any[] = "any";
static const char __pyx_k_avg[] = "avg";
static const char __pyx_k_cls[] = "cls";
static const char __pyx_k_cpu[] = "cpu";
static const char __pyx_k_cts[] = "cts";
static const char __pyx_k_dep[] = "dep";
static const char __pyx_k_doc[] = "__doc__";
static const char __pyx_k_dsk[] = "dsk";
static const char __pyx_k_dts[] = "dts";
static const char __pyx_k_end[] = "end";
static const char __pyx_k_ext[] = "ext";
static const char __pyx_k_fig[] = "fig";
static const char __pyx_k_get[] = "get";
static const char __pyx_k_hlg[] = "hlg";
static const char __pyx_k_key[] = "key";
static const char __pyx_k_len[] = "len";
static const char __pyx_k_log[] = "log";
static const char __pyx_k_map[] = "map";
static const char __pyx_k_min[] = "min";
static const char __pyx_k_msg[] = "msg";
static const char __pyx_k_new[] = "__new__";
static const char __pyx_k_now[] = "now";
static const char __pyx_k_occ[] = "occ";
static const char __pyx_k_out[] = "out";
static const char __pyx_k_pdb[] = "pdb";
static const char __pyx_k_pid[] = "pid";
static const char __pyx_k_pop[] = "pop";
static const char __pyx_k_rpc[] = "rpc";
static const char __pyx_k_run[] = "run";
static const char __pyx_k_sum[] = "sum";
static const char __pyx_k_sys[] = "sys";
static const char __pyx_k_tlz[] = "tlz";
static const char __pyx_k_tsp[] = "tsp";
static const char __pyx_k_typ[] = "typ";
static const char __pyx_k_wws[] = "wws";
static const char __pyx_k_zip[] = "zip";
static const char __pyx_k_Lock[] = "Lock";
static const char __pyx_k_None[] = "None";
static const char __pyx_k_Tabs[] = "Tabs";
static const char __pyx_k_Task[] = "<Task ";
static const char __pyx_k_addr[] = "addr";
static const char __pyx_k_args[] = "args";
static const char __pyx_k_bint[] = "bint";
static const char __pyx_k_cast[] = "cast";
static const char __pyx_k_ceil[] = "ceil";
static const char __pyx_k_code[] = "code";
static const char __pyx_k_comm[] = "comm";
static const char __pyx_k_core[] = "core";
static const char __pyx_k_dask[] = "dask";
static const char __pyx_k_data[] = "data";
static const char __pyx_k_deps[] = "deps";
static const char __pyx_k_dict[] = "__dict__";
static const char __pyx_k_done[] = "done";
static const char __pyx_k_dump[] = "dump";
static const char __pyx_k_exit[] = "__exit__";
static const char __pyx_k_fast[] = "fast";
static const char __pyx_k_feed[] = "feed";
static const char __pyx_k_file[] = "__file__";
static const char __pyx_k_frac[] = "frac";
static const char __pyx_k_func[] = "func";
static const char __pyx_k_hash[] = "_hash";
static const char __pyx_k_host[] = "host";
static const char __pyx_k_html[] = ".html";
static const char __pyx_k_http[] = "http";
static const char __pyx_k_idle[] = "idle";
static const char __pyx_k_info[] = "info";
static const char __pyx_k_init[] = "__init__";
static const char __pyx_k_iter[] = "__iter__";
static const char __pyx_k_join[] = "join";
static const char __pyx_k_json[] = "json";
static const char __pyx_k_keys[] = "keys";
static const char __pyx_k_last[] = "last";
static const char __pyx_k_li_2[] = " </li>";
static const char __pyx_k_lock[] = "_lock";
static const char __pyx_k_logs[] = "logs";
static const char __pyx_k_loop[] = "loop";
static const char __pyx_k_main[] = "__main__";
static const char __pyx_k_math[] = "math";
static const char __pyx_k_msgs[] = "msgs";
static const char __pyx_k_name[] = "name";
static const char __pyx_k_node[] = "node";
static const char __pyx_k_open[] = "open";
static const char __pyx_k_path[] = "path";
static const char __pyx_k_port[] = "port";
static const char __pyx_k_proc[] = "proc";
static const char __pyx_k_read[] = "read";
static const char __pyx_k_repr[] = "__repr__";
static const char __pyx_k_resp[] = "resp";
static const char __pyx_k_safe[] = "safe";
static const char __pyx_k_save[] = "save";
static const char __pyx_k_seen[] = "seen";
static const char __pyx_k_self[] = "self";
static const char __pyx_k_send[] = "send";
static const char __pyx_k_sort[] = "sort";
static const char __pyx_k_spec[] = "spec";
static const char __pyx_k_stop[] = "stop";
static const char __pyx_k_tabs[] = "tabs";
static const char __pyx_k_task[] = "task";
static const char __pyx_k_test[] = "__test__";
static const char __pyx_k_text[] = "text";
static const char __pyx_k_time[] = "time";
static const char __pyx_k_type[] = "type";
static const char __pyx_k_wait[] = "wait";
static const char __pyx_k_warn[] = "warn";
static const char __pyx_k_wrap[] = "wrap";
static const char __pyx_k_500ms[] = "500ms";
static const char __pyx_k_Panel[] = "Panel";
static const char __pyx_k_abort[] = "abort";
static const char __pyx_k_actor[] = "actor";
static const char __pyx_k_aexit[] = "__aexit__";
static const char __pyx_k_alpha[] = "alpha";
static const char __pyx_k_await[] = "__await__";
static const char __pyx_k_bcomm[] = "bcomm";
static const char __pyx_k_bytes[] = "bytes";
static const char __pyx_k_cause[] = "cause";
static const char __pyx_k_ccall[] = "ccall";
static const char __pyx_k_cfunc[] = "cfunc";
static const char __pyx_k_child[] = "child";
static const char __pyx_k_class[] = "__class__";
static const char __pyx_k_clear[] = "clear";
static const char __pyx_k_close[] = "close";
static const char __pyx_k_cores[] = " cores: ";
static const char __pyx_k_count[] = "count";
static const char __pyx_k_debug[] = "debug";
static const char __pyx_k_delay[] = "delay";
static const char __pyx_k_deque[] = "deque";
static const char __pyx_k_dumps[] = "dumps";
static const char __pyx_k_enter[] = "__enter__";
static const char __pyx_k_erred[] = "erred";
static const char __pyx_k_error[] = "error";
static const char __pyx_k_event[] = "event";
static const char __pyx_k_extra[] = "extra";
static const char __pyx_k_final[] = "final";
static const char __pyx_k_first[] = "first";
static const char __pyx_k_force[] = "force";
static const char __pyx_k_group[] = "group";
static const char __pyx_k_hosts[] = "hosts";
static const char __pyx_k_ident[] = "ident";
static const char __pyx_k_items[] = "items";
static const char __pyx_k_key_2[] = "_key";
static const char __pyx_k_len_2[] = "__len__";
static const char __pyx_k_limit[] = "limit";
static const char __pyx_k_loads[] = "loads";
static const char __pyx_k_merge[] = "merge";
static const char __pyx_k_names[] = "names";
static const char __pyx_k_nanny[] = "nanny";
static const char __pyx_k_new_2[] = "new";
static const char __pyx_k_nogil[] = "nogil";
static const char __pyx_k_order[] = "order";
static const char __pyx_k_other[] = "other";
static const char __pyx_k_pid_2[] = "_pid";
static const char __pyx_k_pluck[] = "pluck";
static const char __pyx_k_proxy[] = "proxy";
static const char __pyx_k_range[] = "range";
static const char __pyx_k_rects[] = "rects";
static const char __pyx_k_resps[] = "resps";
static const char __pyx_k_retry[] = "retry";
static const char __pyx_k_reuse[] = "reuse";
static const char __pyx_k_roots[] = "roots";
static const char __pyx_k_setup[] = "setup";
static const char __pyx_k_sleep[] = "sleep";
static const char __pyx_k_slots[] = "__slots__";
static const char __pyx_k_stack[] = "stack";
static const char __pyx_k_start[] = "start";
static const char __pyx_k_state[] = "state";
static const char __pyx_k_story[] = "story";
static const char __pyx_k_super[] = "super";
static const char __pyx_k_tasks[] = "tasks";
static const char __pyx_k_throw[] = "throw";
static const char __pyx_k_title[] = "title";
static const char __pyx_k_topic[] = "topic";
static const char __pyx_k_total[] = "total";
static const char __pyx_k_types[] = "types";
static const char __pyx_k_union[] = "union";
static const char __pyx_k_utils[] = "utils";
static const char __pyx_k_valid[] = "valid";
static const char __pyx_k_value[] = "value";
static const char __pyx_k_write[] = "write";
static const char __pyx_k_IOLoop[] = "IOLoop";
static const char __pyx_k_Number[] = "Number";
static const char __pyx_k_Status[] = "Status";
static const char __pyx_k_Worker[] = "<Worker ";
static const char __pyx_k_a_recs[] = "a_recs";
static const char __pyx_k_action[] = "action";
static const char __pyx_k_active[] = "active";
static const char __pyx_k_actors[] = "actors";
static const char __pyx_k_aenter[] = "__aenter__";
static const char __pyx_k_append[] = "append";
static const char __pyx_k_b_recs[] = "b_recs";
static const char __pyx_k_cancel[] = "cancel";
static const char __pyx_k_cclass[] = "cclass";
static const char __pyx_k_client[] = "client";
static const char __pyx_k_closed[] = "closed";
static const char __pyx_k_concat[] = "concat";
static const char __pyx_k_config[] = "config";
static const char __pyx_k_counts[] = "counts";
static const char __pyx_k_ctypes[] = "ctypes";
static const char __pyx_k_delete[] = "delete";
static const char __pyx_k_dict_2[] = "dict";
static const char __pyx_k_double[] = "double";
static const char __pyx_k_ensure[] = "ensure";
static const char __pyx_k_events[] = "events";
static const char __pyx_k_exists[] = "exists";
static const char __pyx_k_extend[] = "extend";
static const char __pyx_k_figure[] = "figure";
static const char __pyx_k_finish[] = "finish";
static const char __pyx_k_format[] = "format";
static const char __pyx_k_future[] = "future";
static const char __pyx_k_gather[] = "gather";
static const char __pyx_k_groups[] = "groups";
static const char __pyx_k_html_2[] = "html";
static const char __pyx_k_import[] = "__import__";
static const char __pyx_k_indent[] = "indent";
static const char __pyx_k_inline[] = "inline";
static const char __pyx_k_inproc[] = "inproc://";
static const char __pyx_k_kwargs[] = "kwargs";
static const char __pyx_k_listen[] = "listen";
static const char __pyx_k_loader[] = "loader";
static const char __pyx_k_lock_2[] = "lock";
static const char __pyx_k_logger[] = "logger";
static const char __pyx_k_maxlen[] = "maxlen";
static const char __pyx_k_memory[] = ", memory: ";
static const char __pyx_k_module[] = "__module__";
static const char __pyx_k_name_2[] = ", name: ";
static const char __pyx_k_name_3[] = "__name__";
static const char __pyx_k_name_4[] = "_name";
static const char __pyx_k_nbytes[] = "nbytes";
static const char __pyx_k_ncores[] = "ncores";
static const char __pyx_k_ntasks[] = "ntasks";
static const char __pyx_k_parent[] = "parent";
static const char __pyx_k_pickle[] = "pickle";
static const char __pyx_k_plugin[] = "plugin";
static const char __pyx_k_prefix[] = "prefix";
static const char __pyx_k_psutil[] = "psutil";
static const char __pyx_k_pubsub[] = "pubsub";
static const char __pyx_k_queues[] = "queues";
static const char __pyx_k_random[] = "random";
static const char __pyx_k_reduce[] = "__reduce__";
static const char __pyx_k_remove[] = "remove";
static const char __pyx_k_report[] = "report";
static const char __pyx_k_result[] = "result";
static const char __pyx_k_return[] = "return";
static const char __pyx_k_routes[] = "routes";
static const char __pyx_k_sample[] = "sample";
static const char __pyx_k_second[] = "second";
static const char __pyx_k_sender[] = "sender";
static const char __pyx_k_server[] = "server";
static const char __pyx_k_sorted[] = "sorted";
static const char __pyx_k_source[] = "source";
static const char __pyx_k_states[] = "states";
static const char __pyx_k_status[] = "status";
static const char __pyx_k_stream[] = "stream";
static const char __pyx_k_target[] = "target";
static const char __pyx_k_time_2[] = " time: ";
static const char __pyx_k_type_2[] = "_type";
static const char __pyx_k_update[] = "update";
static const char __pyx_k_valmap[] = "valmap";
static const char __pyx_k_values[] = "values";
static const char __pyx_k_worker[] = "worker";
static const char __pyx_k_0_0_0_0[] = "0.0.0.0";
static const char __pyx_k_LOG_PDB[] = "LOG_PDB";
static const char __pyx_k_Mapping[] = "Mapping";
static const char __pyx_k_Process[] = "Process";
static const char __pyx_k_Summary[] = "Summary";
static const char __pyx_k_WeakSet[] = "WeakSet";
static const char __pyx_k_a_cmsgs[] = "a_cmsgs";
static const char __pyx_k_a_wmsgs[] = "a_wmsgs";
static const char __pyx_k_abspath[] = "abspath";
static const char __pyx_k_actor_2[] = "_actor";
static const char __pyx_k_address[] = "address";
static const char __pyx_k_aliases[] = "aliases";
static const char __pyx_k_asyncio[] = "asyncio";
static const char __pyx_k_b_cmsgs[] = "b_cmsgs";
static const char __pyx_k_b_wmsgs[] = "b_wmsgs";
static const char __pyx_k_batched[] = "batched";
static const char __pyx_k_clients[] = "clients";
static const char __pyx_k_closing[] = "closing";
static const char __pyx_k_collect[] = "collect";
static const char __pyx_k_compose[] = "compose";
static const char __pyx_k_compute[] = "compute";
static const char __pyx_k_connect[] = "connect";
static const char __pyx_k_current[] = "current";
static const char __pyx_k_declare[] = "declare";
static const char __pyx_k_default[] = "default";
static const char __pyx_k_digests[] = "digests";
static const char __pyx_k_dirname[] = "dirname";
static const char __pyx_k_discard[] = "discard";
static const char __pyx_k_extra_2[] = "_extra";
static const char __pyx_k_finish2[] = "finish2";
static const char __pyx_k_futures[] = "futures";
static const char __pyx_k_gathers[] = "gathers";
static const char __pyx_k_genexpr[] = "genexpr";
static const char __pyx_k_get_env[] = "get_env";
static const char __pyx_k_getitem[] = "__getitem__";
static const char __pyx_k_group_2[] = "_group";
static const char __pyx_k_groupby[] = "groupby";
static const char __pyx_k_groups1[] = "groups1";
static const char __pyx_k_groups2[] = "groups2";
static const char __pyx_k_inspect[] = "inspect";
static const char __pyx_k_io_loop[] = "io_loop";
static const char __pyx_k_is_idle[] = "is_idle";
static const char __pyx_k_logging[] = "logging";
static const char __pyx_k_message[] = "message";
static const char __pyx_k_metrics[] = "metrics";
static const char __pyx_k_minimum[] = "minimum";
static const char __pyx_k_missing[] = "missing";
static const char __pyx_k_modules[] = "modules";
static const char __pyx_k_msg_key[] = "msg_key";
static const char __pyx_k_n_tasks[] = "n_tasks";
static const char __pyx_k_nannies[] = "nannies";
static const char __pyx_k_nanny_2[] = "_nanny";
static const char __pyx_k_numbers[] = "numbers";
static const char __pyx_k_partial[] = "partial";
static const char __pyx_k_pickle5[] = "pickle5";
static const char __pyx_k_plugins[] = "plugins";
static const char __pyx_k_popitem[] = "popitem";
static const char __pyx_k_preload[] = "preload";
static const char __pyx_k_prepare[] = "__prepare__";
static const char __pyx_k_profile[] = "profile";
static const char __pyx_k_publish[] = "publish";
static const char __pyx_k_release[] = "release";
static const char __pyx_k_resolve[] = "resolve";
static const char __pyx_k_restart[] = "restart";
static const char __pyx_k_results[] = "results";
static const char __pyx_k_retired[] = "retired";
static const char __pyx_k_retries[] = "retries";
static const char __pyx_k_reverse[] = "reverse";
static const char __pyx_k_running[] = "running";
static const char __pyx_k_scatter[] = "scatter";
static const char __pyx_k_seconds[] = "seconds";
static const char __pyx_k_senders[] = "senders";
static const char __pyx_k_started[] = "started";
static const char __pyx_k_state_2[] = "_state";
static const char __pyx_k_summary[] = "summary";
static const char __pyx_k_threads[] = "threads";
static const char __pyx_k_timeout[] = "timeout";
static const char __pyx_k_tmpfile[] = "tmpfile";
static const char __pyx_k_unicode[] = "unicode";
static const char __pyx_k_version[] = "__version__";
static const char __pyx_k_waiters[] = "waiters";
static const char __pyx_k_waiting[] = "waiting";
static const char __pyx_k_warning[] = "warning";
static const char __pyx_k_weakref[] = "weakref";
static const char __pyx_k_who_has[] = "who_has";
static const char __pyx_k_workers[] = "workers";
static const char __pyx_k_wrapper[] = "wrapper";
static const char __pyx_k_Client_s[] = "<Client '%s'>";
static const char __pyx_k_KeyError[] = "KeyError";
static const char __pyx_k_Security[] = "Security";
static const char __pyx_k_Worker_2[] = "Worker";
static const char __pyx_k_accessor[] = "accessor";
static const char __pyx_k_actors_2[] = "_actors";
static const char __pyx_k_add_keys[] = "add-keys";
static const char __pyx_k_c_double[] = "c_double";
static const char __pyx_k_contains[] = "__contains__";
static const char __pyx_k_critical[] = "critical";
static const char __pyx_k_datasets[] = "datasets";
static const char __pyx_k_datetime[] = "datetime";
static const char __pyx_k_dsk_keys[] = "dsk_keys";
static const char __pyx_k_duration[] = "duration";
static const char __pyx_k_exc_info[] = "exc_info";
static const char __pyx_k_filename[] = "filename";
static const char __pyx_k_finalize[] = "finalize";
static const char __pyx_k_finished[] = "finished";
static const char __pyx_k_function[] = "function";
static const char __pyx_k_get_logs[] = "get_logs";
static const char __pyx_k_getstate[] = "__getstate__";
static const char __pyx_k_handlers[] = "handlers";
static const char __pyx_k_has_what[] = "has_what";
static const char __pyx_k_identity[] = "identity";
static const char __pyx_k_interval[] = "interval";
static const char __pyx_k_issubset[] = "issubset";
static const char __pyx_k_listener[] = "listener";
static const char __pyx_k_memory_2[] = "memory";
static const char __pyx_k_metadata[] = "metadata";
static const char __pyx_k_n_remain[] = "n_remain";
static const char __pyx_k_nbytes_2[] = "_nbytes";
static const char __pyx_k_new_attr[] = "new_attr";
static const char __pyx_k_new_msgs[] = "new_msgs";
static const char __pyx_k_new_recs[] = "new_recs";
static const char __pyx_k_new_task[] = "new_task";
static const char __pyx_k_no_group[] = "no-group";
static const char __pyx_k_nthreads[] = "nthreads";
static const char __pyx_k_nworkers[] = "nworkers";
static const char __pyx_k_old_attr[] = "old_attr";
static const char __pyx_k_operator[] = "operator";
static const char __pyx_k_prefix_2[] = "_prefix";
static const char __pyx_k_preloads[] = "preloads";
static const char __pyx_k_priority[] = "priority";
static const char __pyx_k_protocol[] = "protocol";
static const char __pyx_k_pyx_type[] = "__pyx_type";
static const char __pyx_k_qualname[] = "__qualname__";
static const char __pyx_k_quantity[] = "quantity";
static const char __pyx_k_released[] = "released";
static const char __pyx_k_resource[] = "resource";
static const char __pyx_k_response[] = "response";
static const char __pyx_k_reversed[] = "reversed";
static const char __pyx_k_run_spec[] = "run_spec";
static const char __pyx_k_security[] = "security";
static const char __pyx_k_send_all[] = "send_all";
static const char __pyx_k_services[] = "services";
static const char __pyx_k_setstate[] = "__setstate__";
static const char __pyx_k_states_2[] = "_states";
static const char __pyx_k_status_2[] = "_status";
static const char __pyx_k_stealing[] = "stealing";
static const char __pyx_k_suppress[] = "suppress";
static const char __pyx_k_teardown[] = "teardown";
static const char __pyx_k_template[] = "template";
static const char __pyx_k_to_close[] = "to_close";
static const char __pyx_k_typename[] = "typename";
static const char __pyx_k_validate[] = "validate";
static const char __pyx_k_variable[] = "variable";
static const char __pyx_k_versions[] = "versions";
static const char __pyx_k_wait_for[] = "wait_for";
static const char __pyx_k_warnings[] = "warnings";
static const char __pyx_k_Py_hash_t[] = "Py_hash_t";
static const char __pyx_k_Scheduler[] = "Scheduler";
static const char __pyx_k_TaskGroup[] = "TaskGroup";
static const char __pyx_k_TaskState[] = "TaskState";
static const char __pyx_k_TypeError[] = "TypeError";
static const char __pyx_k_address_2[] = "_address";
static const char __pyx_k_addresses[] = "addresses";
static const char __pyx_k_attribute[] = "attribute";
static const char __pyx_k_bandwidth[] = "bandwidth";
static const char __pyx_k_broadcast[] = "broadcast";
static const char __pyx_k_but_found[] = " but found ";
static const char __pyx_k_c_ssize_t[] = "c_ssize_t";
static const char __pyx_k_close_rpc[] = "close_rpc";
static const char __pyx_k_dashboard[] = "dashboard";
static const char __pyx_k_exception[] = "exception";
static const char __pyx_k_exceptval[] = "exceptval";
static const char __pyx_k_executing[] = "executing";
static const char __pyx_k_extension[] = "extension";
static const char __pyx_k_forgotten[] = "forgotten";
static const char __pyx_k_functools[] = "functools";
static const char __pyx_k_getLogger[] = "getLogger";
static const char __pyx_k_group_key[] = "_group_key";
static const char __pyx_k_heartbeat[] = "heartbeat";
static const char __pyx_k_host_info[] = "host_info";
static const char __pyx_k_instances[] = "_instances";
static const char __pyx_k_interface[] = "interface";
static const char __pyx_k_itertools[] = "itertools";
static const char __pyx_k_key_count[] = "key-count";
static const char __pyx_k_key_split[] = "key_split";
static const char __pyx_k_last_seen[] = "last_seen";
static const char __pyx_k_last_time[] = "_last_time";
static const char __pyx_k_listen_ip[] = "listen_ip";
static const char __pyx_k_listeners[] = "listeners";
static const char __pyx_k_local_now[] = "local_now";
static const char __pyx_k_localhost[] = "localhost";
static const char __pyx_k_log_event[] = "log-event";
static const char __pyx_k_lost_data[] = "lost-data";
static const char __pyx_k_metaclass[] = "__metaclass__";
static const char __pyx_k_metrics_2[] = "_metrics";
static const char __pyx_k_n_missing[] = "n_missing";
static const char __pyx_k_n_workers[] = "n_workers";
static const char __pyx_k_new_cmsgs[] = "new_cmsgs";
static const char __pyx_k_new_wmsgs[] = "new_wmsgs";
static const char __pyx_k_next_time[] = "next_time";
static const char __pyx_k_no_worker[] = "no-worker";
static const char __pyx_k_not_found[] = "not found";
static const char __pyx_k_occupancy[] = "occupancy";
static const char __pyx_k_plot_data[] = "plot_data";
static const char __pyx_k_processes[] = "\" processes: ";
static const char __pyx_k_proctitle[] = "proctitle";
static const char __pyx_k_pyx_state[] = "__pyx_state";
static const char __pyx_k_rebalance[] = "rebalance";
static const char __pyx_k_recipient[] = "recipient";
static const char __pyx_k_reduce_ex[] = "__reduce_ex__";
static const char __pyx_k_replicate[] = "replicate";
static const char __pyx_k_resources[] = "resources";
static const char __pyx_k_responses[] = "responses";
static const char __pyx_k_retries_2[] = "_retries";
static const char __pyx_k_runnables[] = "runnables";
static const char __pyx_k_saturated[] = "saturated";
static const char __pyx_k_scheduler[] = "scheduler";
static const char __pyx_k_semaphore[] = "semaphore";
static const char __pyx_k_send_recv[] = "send_recv";
static const char __pyx_k_set_trace[] = "set_trace";
static const char __pyx_k_task_dict[] = "task_dict";
static const char __pyx_k_templates[] = "templates";
static const char __pyx_k_terminate[] = "terminate";
static const char __pyx_k_timedelta[] = "timedelta";
static const char __pyx_k_timespent[] = "timespent";
static const char __pyx_k_traceback[] = "traceback";
static const char __pyx_k_undefined[] = "undefined";
static const char __pyx_k_waiters_2[] = "_waiters";
static const char __pyx_k_who_has_2[] = "_who_has";
static const char __pyx_k_who_wants[] = "who_wants";
static const char __pyx_k_11s_at_25s[] = "%11s at: %25s";
static const char __pyx_k_Key_lost_s[] = "Key lost: %s";
static const char __pyx_k_Py_ssize_t[] = "Py_ssize_t";
static const char __pyx_k_ServerNode[] = "ServerNode";
static const char __pyx_k_SortedDict[] = "SortedDict";
static const char __pyx_k_TaskPrefix[] = "TaskPrefix";
static const char __pyx_k_ValueError[] = "ValueError";
static const char __pyx_k_accessor_2[] = "_accessor";
static const char __pyx_k_add_client[] = "add_client";
static const char __pyx_k_add_keys_2[] = "add_keys";
static const char __pyx_k_add_plugin[] = "add_plugin";
static const char __pyx_k_add_worker[] = "add_worker";
static const char __pyx_k_attrgetter[] = "attrgetter";
static const char __pyx_k_call_later[] = "call_later";
static const char __pyx_k_call_stack[] = "call_stack";
static const char __pyx_k_cancel_key[] = "cancel_key";
static const char __pyx_k_check_idle[] = "check_idle";
static const char __pyx_k_child_deps[] = "child_deps";
static const char __pyx_k_client_key[] = "_client_key";
static const char __pyx_k_collection[] = "collection";
static const char __pyx_k_contextlib[] = "contextlib";
static const char __pyx_k_dependents[] = "dependents";
static const char __pyx_k_erred_deps[] = "erred_deps";
static const char __pyx_k_exceptions[] = "exceptions";
static const char __pyx_k_extensions[] = "extensions";
static const char __pyx_k_generation[] = "generation";
static const char __pyx_k_get_events[] = "get_events";
static const char __pyx_k_get_nbytes[] = "get_nbytes";
static const char __pyx_k_get_ncores[] = "get_ncores";
static const char __pyx_k_has_what_2[] = "_has_what";
static const char __pyx_k_idempotent[] = "idempotent";
static const char __pyx_k_idle_since[] = "idle_since";
static const char __pyx_k_keep_alive[] = "keep-alive";
static const char __pyx_k_log_errors[] = "log_errors";
static const char __pyx_k_merge_with[] = "merge_with";
static const char __pyx_k_metadata_2[] = "_metadata";
static const char __pyx_k_moved_keys[] = "moved_keys";
static const char __pyx_k_nanny_addr[] = "nanny_addr";
static const char __pyx_k_no_default[] = "no_default";
static const char __pyx_k_nthreads_2[] = "_nthreads";
static const char __pyx_k_plugin_add[] = "plugin-add";
static const char __pyx_k_prefix_key[] = "prefix_key";
static const char __pyx_k_preloading[] = "preloading";
static const char __pyx_k_priority_2[] = "_priority";
static const char __pyx_k_processing[] = ", processing: ";
static const char __pyx_k_pyx_result[] = "__pyx_result";
static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__";
static const char __pyx_k_recipients[] = "recipients";
static const char __pyx_k_rectangles[] = "rectangles";
static const char __pyx_k_remove_key[] = "remove_key";
static const char __pyx_k_report_key[] = "report-key";
static const char __pyx_k_report_msg[] = "report_msg";
static const char __pyx_k_reschedule[] = "reschedule";
static const char __pyx_k_run_spec_2[] = "_run_spec";
static const char __pyx_k_searchpath[] = "searchpath";
static const char __pyx_k_services_2[] = "_services";
static const char __pyx_k_startstops[] = "startstops";
static const char __pyx_k_startswith[] = "startswith";
static const char __pyx_k_suspicious[] = "suspicious";
static const char __pyx_k_task_erred[] = "task-erred";
static const char __pyx_k_time_delay[] = "_time_delay";
static const char __pyx_k_to_senders[] = "to_senders";
static const char __pyx_k_total_keys[] = "total-keys";
static const char __pyx_k_tracebacks[] = "tracebacks";
static const char __pyx_k_transition[] = "transition";
static const char __pyx_k_unregister[] = "unregister";
static const char __pyx_k_unrunnable[] = "unrunnable";
static const char __pyx_k_utils_comm[] = "utils_comm";
static const char __pyx_k_utils_perf[] = "utils_perf";
static const char __pyx_k_validate_2[] = "validate_";
static const char __pyx_k_versions_2[] = "_versions";
static const char __pyx_k_waiting_on[] = "waiting_on";
static const char __pyx_k_wants_what[] = "wants_what";
static const char __pyx_k_worker_ttl[] = "worker_ttl";
static const char __pyx_k_BatchedSend[] = "BatchedSend";
static const char __pyx_k_ClientState[] = "ClientState";
static const char __pyx_k_ImportError[] = "ImportError";
static const char __pyx_k_PickleError[] = "PickleError";
static const char __pyx_k_Scheduler_2[] = "<Scheduler: \"";
static const char __pyx_k_Task_Stream[] = "Task Stream";
static const char __pyx_k_This_Worker[] = "This Worker";
static const char __pyx_k_WorkerState[] = "WorkerState";
static const char __pyx_k_add_timeout[] = "add_timeout";
static const char __pyx_k_annotations[] = "annotations";
static const char __pyx_k_bandwidth_2[] = "_bandwidth";
static const char __pyx_k_client_keys[] = "client_keys";
static const char __pyx_k_client_msgs[] = "client_msgs";
static const char __pyx_k_client_name[] = "client_name";
static const char __pyx_k_client_send[] = "client_send";
static const char __pyx_k_collections[] = "collections";
static const char __pyx_k_compression[] = "compression";
static const char __pyx_k_cpu_percent[] = "cpu_percent";
static const char __pyx_k_defaultdict[] = "defaultdict";
static const char __pyx_k_delete_data[] = "delete-data";
static const char __pyx_k_dep_missing[] = "dep missing";
static const char __pyx_k_deserialize[] = "deserialize";
static const char __pyx_k_distributed[] = "distributed";
static const char __pyx_k_exception_2[] = "_exception";
static const char __pyx_k_executing_2[] = "_executing";
static const char __pyx_k_format_time[] = "format_time";
static const char __pyx_k_get_profile[] = "get_profile";
static const char __pyx_k_get_who_has[] = "get_who_has";
static const char __pyx_k_group_bytes[] = "group_bytes";
static const char __pyx_k_group_key_2[] = "group_key";
static const char __pyx_k_http_prefix[] = "http_prefix";
static const char __pyx_k_http_server[] = "http_server";
static const char __pyx_k_isawaitable[] = "isawaitable";
static const char __pyx_k_last_client[] = "_last_client";
static const char __pyx_k_last_seen_2[] = "last-seen";
static const char __pyx_k_last_seen_3[] = "_last_seen";
static const char __pyx_k_last_worker[] = "last_worker";
static const char __pyx_k_limit_bytes[] = "limit_bytes";
static const char __pyx_k_log_event_2[] = "log_event";
static const char __pyx_k_occupancy_2[] = "_occupancy";
static const char __pyx_k_output_file[] = "output_file";
static const char __pyx_k_parse_bytes[] = "parse_bytes";
static const char __pyx_k_plot_figure[] = "plot_figure";
static const char __pyx_k_resources_2[] = "_resources";
static const char __pyx_k_round_robin[] = "_round_robin";
static const char __pyx_k_rprocessing[] = "rprocessing";
static const char __pyx_k_sender_keys[] = "sender_keys";
static const char __pyx_k_serializers[] = "serializers";
static const char __pyx_k_sizing_mode[] = "sizing_mode";
static const char __pyx_k_task_groups[] = "task_groups";
static const char __pyx_k_task_stream[] = "task_stream";
static const char __pyx_k_total_tasks[] = "total_tasks";
static const char __pyx_k_traceback_2[] = "_traceback";
static const char __pyx_k_transitions[] = "_transitions";
static const char __pyx_k_update_data[] = "update-data";
static const char __pyx_k_who_wants_2[] = "_who_wants";
static const char __pyx_k_worker_comm[] = "worker_comm";
static const char __pyx_k_worker_info[] = "worker_info";
static const char __pyx_k_worker_keys[] = "worker_keys";
static const char __pyx_k_worker_logs[] = "worker_logs";
static const char __pyx_k_worker_msgs[] = "worker_msgs";
static const char __pyx_k_worker_send[] = "worker_send";
static const char __pyx_k_KilledWorker[] = "KilledWorker";
static const char __pyx_k_RuntimeError[] = "RuntimeError";
static const char __pyx_k_TimeoutError[] = "TimeoutError";
static const char __pyx_k_WorkStealing[] = "WorkStealing";
static const char __pyx_k_add_callback[] = "add_callback";
static const char __pyx_k_add_client_2[] = "add-client";
static const char __pyx_k_add_worker_2[] = "add-worker";
static const char __pyx_k_avg_duration[] = "avg_duration";
static const char __pyx_k_bokeh_models[] = "bokeh.models";
static const char __pyx_k_client_comms[] = "client_comms";
static const char __pyx_k_close_client[] = "close-client";
static const char __pyx_k_close_stream[] = "close-stream";
static const char __pyx_k_close_worker[] = "close_worker";
static const char __pyx_k_compute_task[] = "compute-task";
static const char __pyx_k_dask_version[] = "dask_version";
static const char __pyx_k_default_port[] = "default_port";
static const char __pyx_k_dependencies[] = "dependencies";
static const char __pyx_k_dependents_2[] = "_dependents";
static const char __pyx_k_event_counts[] = "event_counts";
static const char __pyx_k_extensions_2[] = "_extensions";
static const char __pyx_k_fifo_timeout[] = "fifo_timeout";
static const char __pyx_k_format_bytes[] = "format_bytes";
static const char __pyx_k_get_handlers[] = "get_handlers";
static const char __pyx_k_get_has_what[] = "get_has_what";
static const char __pyx_k_get_metadata[] = "get_metadata";
static const char __pyx_k_get_template[] = "get_template";
static const char __pyx_k_get_versions[] = "get_versions";
static const char __pyx_k_idle_timeout[] = "idle_timeout";
static const char __pyx_k_intersection[] = "intersection";
static const char __pyx_k_long_running[] = "long-running";
static const char __pyx_k_memory_limit[] = "memory_limit";
static const char __pyx_k_memory_ratio[] = "memory_ratio";
static const char __pyx_k_merge_sorted[] = "merge_sorted";
static const char __pyx_k_missing_data[] = "missing-data";
static const char __pyx_k_missing_keys[] = "missing_keys";
static const char __pyx_k_moved_keys_2[] = "moved-keys";
static const char __pyx_k_name_taken_s[] = "name taken, %s";
static const char __pyx_k_new_duration[] = "new_duration";
static const char __pyx_k_old_duration[] = "old_duration";
static const char __pyx_k_preload_argv[] = "preload_argv";
static const char __pyx_k_processing_2[] = "processing";
static const char __pyx_k_processing_3[] = "_processing";
static const char __pyx_k_pyx_checksum[] = "__pyx_checksum";
static const char __pyx_k_release_task[] = "release-task";
static const char __pyx_k_restrictions[] = "restrictions";
static const char __pyx_k_reverse_dict[] = "reverse_dict";
static const char __pyx_k_run_function[] = "run_function";
static const char __pyx_k_send_message[] = "send_message";
static const char __pyx_k_service_name[] = "service_name";
static const char __pyx_k_set_metadata[] = "set_metadata";
static const char __pyx_k_setproctitle[] = "setproctitle";
static const char __pyx_k_start_finish[] = "start_finish";
static const char __pyx_k_stream_comms[] = "stream_comms";
static const char __pyx_k_stream_start[] = "stream-start";
static const char __pyx_k_stretch_both[] = "stretch_both";
static const char __pyx_k_stringsource[] = "stringsource";
static const char __pyx_k_suspicious_2[] = "_suspicious";
static const char __pyx_k_task_retried[] = "task-retried";
static const char __pyx_k_time_started[] = "time_started";
static const char __pyx_k_touched_keys[] = "touched_keys";
static const char __pyx_k_transition_2[] = "_transition";
static const char __pyx_k_update_graph[] = "update-graph";
static const char __pyx_k_validate_key[] = "validate_key";
static const char __pyx_k_version_info[] = "version_info";
static const char __pyx_k_waiting_data[] = "waiting_data";
static const char __pyx_k_waiting_on_2[] = "_waiting_on";
static const char __pyx_k_wants_what_2[] = "_wants_what";
static const char __pyx_k_worker_bytes[] = "worker_bytes";
static const char __pyx_k_worker_index[] = "worker_index";
static const char __pyx_k_worker_ttl_2[] = "worker-ttl";
static const char __pyx_k_workers_list[] = "workers_list";
static const char __pyx_k_LockExtension[] = "LockExtension";
static const char __pyx_k_StopIteration[] = "StopIteration";
static const char __pyx_k_Update_data_s[] = "Update data %s";
static const char __pyx_k_add_resources[] = "add_resources";
static const char __pyx_k_all_forgotten[] = "all_forgotten";
static const char __pyx_k_allow_offload[] = "allow_offload";
static const char __pyx_k_allow_overlap[] = "allow_overlap";
static const char __pyx_k_annotations_2[] = "_annotations";
static const char __pyx_k_asyncio_tasks[] = "asyncio.tasks";
static const char __pyx_k_cancelled_key[] = "cancelled-key";
static const char __pyx_k_cleanup_delay[] = "cleanup_delay";
static const char __pyx_k_close_workers[] = "close_workers";
static const char __pyx_k_decide_worker[] = "decide_worker";
static const char __pyx_k_delete_data_2[] = "delete_data";
static const char __pyx_k_empty_context[] = "empty_context";
static const char __pyx_k_errant_worker[] = "errant_worker";
static const char __pyx_k_error_message[] = "error_message";
static const char __pyx_k_executor_wait[] = "executor_wait";
static const char __pyx_k_get_comm_cost[] = "get_comm_cost";
static const char __pyx_k_handle_stream[] = "handle_stream";
static const char __pyx_k_handle_worker[] = "handle_worker";
static const char __pyx_k_ipython_utils[] = "_ipython_utils";
static const char __pyx_k_key_in_memory[] = "key-in-memory";
static const char __pyx_k_merge_workers[] = "merge_workers";
static const char __pyx_k_missing_bokeh[] = "missing_bokeh";
static const char __pyx_k_nanny_address[] = "nanny_address";
static const char __pyx_k_other_workers[] = "other_workers";
static const char __pyx_k_processing_on[] = "processing_on";
static const char __pyx_k_reduce_cython[] = "__reduce_cython__";
static const char __pyx_k_remove_client[] = "remove_client";
static const char __pyx_k_remove_plugin[] = "remove_plugin";
static const char __pyx_k_remove_worker[] = "remove_worker";
static const char __pyx_k_removed_tasks[] = "removed_tasks";
static const char __pyx_k_replicate_add[] = "replicate-add";
static const char __pyx_k_report_on_key[] = "report_on_key";
static const char __pyx_k_service_specs[] = "service_specs";
static const char __pyx_k_set_resources[] = "set_resources";
static const char __pyx_k_setup_logging[] = "_setup_logging";
static const char __pyx_k_shutting_down[] = "shutting_down";
static const char __pyx_k_start_address[] = "_start_address";
static const char __pyx_k_start_ipython[] = "start_ipython";
static const char __pyx_k_stop_services[] = "stop_services";
static const char __pyx_k_stream_closed[] = "stream-closed";
static const char __pyx_k_stripped_deps[] = "stripped_deps";
static const char __pyx_k_task_finished[] = "task-finished";
static const char __pyx_k_task_prefixes[] = "task_prefixes";
static const char __pyx_k_tasks_timings[] = "tasks_timings";
static const char __pyx_k_to_recipients[] = "to_recipients";
static const char __pyx_k_touched_tasks[] = "touched_tasks";
static const char __pyx_k_transitions_2[] = "transitions";
static const char __pyx_k_update_data_2[] = "update_data";
static const char __pyx_k_user_priority[] = "user_priority";
static const char __pyx_k_valid_workers[] = "valid_workers";
static const char __pyx_k_AttributeError[] = "AttributeError";
static const char __pyx_k_BandwidthTypes[] = "BandwidthTypes";
static const char __pyx_k_EventExtension[] = "EventExtension";
static const char __pyx_k_QueueExtension[] = "QueueExtension";
static const char __pyx_k_SchedulerState[] = "SchedulerState";
static const char __pyx_k_Scheduler_feed[] = "Scheduler.feed";
static const char __pyx_k_StateLegacySet[] = "_StateLegacySet";
static const char __pyx_k_bokeh_plotting[] = "bokeh.plotting";
static const char __pyx_k_close_worker_2[] = "close-worker";
static const char __pyx_k_coerce_address[] = "coerce_address";
static const char __pyx_k_dask_scheduler[] = "dask-scheduler [";
static const char __pyx_k_del_candidates[] = "del_candidates";
static const char __pyx_k_dependencies_2[] = "_dependencies";
static const char __pyx_k_get_call_stack[] = "get_call_stack";
static const char __pyx_k_get_processing[] = "get_processing";
static const char __pyx_k_idle_timeout_2[] = "idle-timeout";
static const char __pyx_k_ipython_kernel[] = "_ipython_kernel";
static const char __pyx_k_listen_address[] = "listen_address";
static const char __pyx_k_memory_limit_2[] = "_memory_limit";
static const char __pyx_k_missing_data_2[] = "missing_data";
static const char __pyx_k_missing_states[] = "missing_states";
static const char __pyx_k_retire_workers[] = "retire_workers";
static const char __pyx_k_run_function_2[] = "run-function";
static const char __pyx_k_scheduler_file[] = "scheduler_file";
static const char __pyx_k_service_kwargs[] = "service_kwargs";
static const char __pyx_k_show_dashboard[] = "show_dashboard";
static const char __pyx_k_sorted_workers[] = "sorted_workers";
static const char __pyx_k_start_services[] = "start_services";
static const char __pyx_k_stimulus_retry[] = "stimulus_retry";
static const char __pyx_k_tornado_ioloop[] = "tornado.ioloop";
static const char __pyx_k_total_nthreads[] = "total_nthreads";
static const char __pyx_k_transition_log[] = "transition_log";
static const char __pyx_k_update_graph_2[] = "update_graph";
static const char __pyx_k_used_resources[] = "used_resources";
static const char __pyx_k_validate_erred[] = "validate_erred";
static const char __pyx_k_validate_state[] = "validate_state";
static const char __pyx_k_version_module[] = "version_module";
static const char __pyx_k_worker_address[] = "worker_address";
static const char __pyx_k_worker_plugins[] = "worker_plugins";
static const char __pyx_k_ALL_TASK_STATES[] = "ALL_TASK_STATES";
static const char __pyx_k_Bandwidth_Types[] = "Bandwidth (Types)";
static const char __pyx_k_CommClosedError[] = "CommClosedError";
static const char __pyx_k_Remove_client_s[] = "Remove client %s";
static const char __pyx_k_Remove_worker_s[] = "Remove worker %s";
static const char __pyx_k_SchedulerPlugin[] = "SchedulerPlugin";
static const char __pyx_k_Scheduler_close[] = "Scheduler.close";
static const char __pyx_k_Scheduler_proxy[] = "Scheduler.proxy";
static const char __pyx_k_Scheduler_start[] = "Scheduler.start";
static const char __pyx_k_Scheduler_story[] = "Scheduler.story";
static const char __pyx_k_adaptive_target[] = "adaptive_target";
static const char __pyx_k_already_removed[] = "already-removed";
static const char __pyx_k_bandwidth_types[] = "bandwidth_types";
static const char __pyx_k_clean_exception[] = "clean_exception";
static const char __pyx_k_client_handlers[] = "client_handlers";
static const char __pyx_k_coerce_hostname[] = "coerce_hostname";
static const char __pyx_k_collections_abc[] = "collections.abc";
static const char __pyx_k_comm_addressing[] = "comm.addressing";
static const char __pyx_k_connection_args[] = "connection_args";
static const char __pyx_k_contact_address[] = "contact_address";
static const char __pyx_k_delete_interval[] = "delete_interval";
static const char __pyx_k_exception_blame[] = "exception_blame";
static const char __pyx_k_fire_and_forget[] = "fire-and-forget";
static const char __pyx_k_get_listen_args[] = "get_listen_args";
static const char __pyx_k_get_task_status[] = "get_task_status";
static const char __pyx_k_get_task_stream[] = "get_task_stream";
static const char __pyx_k_get_worker_logs[] = "get_worker_logs";
static const char __pyx_k_key_split_group[] = "key_split_group";
static const char __pyx_k_local_directory[] = "local_directory";
static const char __pyx_k_missing_workers[] = "missing_workers";
static const char __pyx_k_parse_timedelta[] = "parse_timedelta";
static const char __pyx_k_pickle_protocol[] = "pickle-protocol";
static const char __pyx_k_processing_on_2[] = "_processing_on";
static const char __pyx_k_pyx_PickleError[] = "__pyx_PickleError";
static const char __pyx_k_recommendations[] = "recommendations";
static const char __pyx_k_register_client[] = "register-client";
static const char __pyx_k_register_worker[] = "register-worker";
static const char __pyx_k_remove_client_2[] = "remove-client";
static const char __pyx_k_remove_worker_2[] = "remove-worker";
static const char __pyx_k_resolve_address[] = "resolve_address";
static const char __pyx_k_retry_operation[] = "retry_operation";
static const char __pyx_k_setstate_cython[] = "__setstate_cython__";
static const char __pyx_k_stimulus_cancel[] = "stimulus_cancel";
static const char __pyx_k_stream_handlers[] = "stream_handlers";
static const char __pyx_k_submitting_task[] = "submitting_task";
static const char __pyx_k_target_duration[] = "target_duration";
static const char __pyx_k_tasks_by_worker[] = "tasks_by_worker";
static const char __pyx_k_total_occupancy[] = "total_occupancy";
static const char __pyx_k_validate_memory[] = "validate_memory";
static const char __pyx_k_version_warning[] = "version_warning";
static const char __pyx_k_worker_handlers[] = "worker_handlers";
static const char __pyx_k_workers_by_task[] = "workers_by_task";
static const char __pyx_k_BandwidthWorkers[] = "BandwidthWorkers";
static const char __pyx_k_Clear_task_state[] = "Clear task state";
static const char __pyx_k_Closing_worker_s[] = "Closing worker %s";
static const char __pyx_k_EnvironmentError[] = "EnvironmentError";
static const char __pyx_k_Lost_all_workers[] = "Lost all workers";
static const char __pyx_k_No_workers_found[] = "No workers found";
static const char __pyx_k_PeriodicCallback[] = "PeriodicCallback";
static const char __pyx_k_PublishExtension[] = "PublishExtension";
static const char __pyx_k_Removed_worker_s[] = "Removed worker %s";
static const char __pyx_k_Retire_workers_s[] = "Retire workers %s";
static const char __pyx_k_Scheduler_Client[] = "Scheduler->Client";
static const char __pyx_k_Scheduler___init[] = "Scheduler.__init__";
static const char __pyx_k_Scheduler___repr[] = "Scheduler.__repr__";
static const char __pyx_k_Scheduler_at_25s[] = " Scheduler at: %25s";
static const char __pyx_k_Scheduler_gather[] = "Scheduler.gather";
static const char __pyx_k_Scheduler_report[] = "Scheduler.report";
static const char __pyx_k_TaskStreamPlugin[] = "TaskStreamPlugin";
static const char __pyx_k_allowed_failures[] = "allowed_failures";
static const char __pyx_k_branching_factor[] = "branching_factor";
static const char __pyx_k_check_worker_ttl[] = "check_worker_ttl";
static const char __pyx_k_clear_task_state[] = "clear_task_state";
static const char __pyx_k_client_heartbeat[] = "client_heartbeat";
static const char __pyx_k_close_gracefully[] = "close_gracefully";
static const char __pyx_k_compute_duration[] = "compute_duration";
static const char __pyx_k_connection_limit[] = "connection_limit";
static const char __pyx_k_del_worker_tasks[] = "del_worker_tasks";
static const char __pyx_k_exceptions_blame[] = "exceptions_blame";
static const char __pyx_k_get_address_host[] = "get_address_host";
static const char __pyx_k_get_fileno_limit[] = "get_fileno_limit";
static const char __pyx_k_heartbeat_client[] = "heartbeat-client";
static const char __pyx_k_heartbeat_worker[] = "heartbeat_worker";
static const char __pyx_k_http_application[] = "http_application";
static const char __pyx_k_log_worker_event[] = "log_worker_event";
static const char __pyx_k_process_preloads[] = "process_preloads";
static const char __pyx_k_processing_tasks[] = "processing-tasks";
static const char __pyx_k_profile_metadata[] = "profile_metadata";
static const char __pyx_k_remove_resources[] = "remove_resources";
static const char __pyx_k_retire_workers_2[] = "retire-workers";
static const char __pyx_k_sortedcontainers[] = "sortedcontainers";
static const char __pyx_k_suspicious_tasks[] = "suspicious_tasks";
static const char __pyx_k_task_key_or_none[] = "_task_key_or_none";
static const char __pyx_k_tasks_processing[] = "tasks_processing";
static const char __pyx_k_transition_story[] = "transition_story";
static const char __pyx_k_update_graph_hlg[] = "update-graph-hlg";
static const char __pyx_k_used_resources_2[] = "_used_resources";
static const char __pyx_k_validate_waiting[] = "validate_waiting";
static const char __pyx_k_worker_objective[] = "worker_objective";
static const char __pyx_k_worker_plugins_2[] = "worker-plugins";
static const char __pyx_k_worker_resources[] = "worker_resources";
static const char __pyx_k_workers_to_close[] = "workers_to_close";
static const char __pyx_k_Bandwidth_Workers[] = "Bandwidth (Workers)";
static const char __pyx_k_Register_worker_s[] = "Register worker %s";
static const char __pyx_k_Scheduler_closing[] = "Scheduler closing...";
static const char __pyx_k_Scheduler_restart[] = "Scheduler.restart";
static const char __pyx_k_Scheduler_scatter[] = "Scheduler.scatter";
static const char __pyx_k_VariableExtension[] = "VariableExtension";
static const char __pyx_k_already_in_memory[] = "already_in_memory";
static const char __pyx_k_bandwidth_workers[] = "bandwidth_workers";
static const char __pyx_k_consume_resources[] = "consume_resources";
static const char __pyx_k_dashboard_address[] = "dashboard_address";
static const char __pyx_k_exception_blame_2[] = "_exception_blame";
static const char __pyx_k_get_task_duration[] = "get_task_duration";
static const char __pyx_k_handle_task_erred[] = "handle_task_erred";
static const char __pyx_k_host_restrictions[] = "host_restrictions";
static const char __pyx_k_local_directory_2[] = "_local_directory";
static const char __pyx_k_normalize_address[] = "normalize_address";
static const char __pyx_k_profile_to_figure[] = "profile_to_figure";
static const char __pyx_k_release_resources[] = "release_resources";
static const char __pyx_k_return_exceptions[] = "return_exceptions";
static const char __pyx_k_start_http_server[] = "start_http_server";
static const char __pyx_k_unknown_durations[] = "unknown_durations";
static const char __pyx_k_unparse_host_port[] = "unparse_host_port";
static const char __pyx_k_validate_released[] = "validate_released";
static const char __pyx_k_worker_coroutines[] = "_worker_coroutines";
static const char __pyx_k_DEFAULT_EXTENSIONS[] = "DEFAULT_EXTENSIONS";
static const char __pyx_k_Scheduler_add_keys[] = "Scheduler.add_keys";
static const char __pyx_k_Scheduler_identity[] = "Scheduler.identity";
static const char __pyx_k_Scheduler_new_task[] = "Scheduler.new_task";
static const char __pyx_k_Scheduler_send_all[] = "Scheduler.send_all";
static const char __pyx_k_SemaphoreExtension[] = "SemaphoreExtension";
static const char __pyx_k_StateLegacyMapping[] = "_StateLegacyMapping";
static const char __pyx_k_WorkerStatusPlugin[] = "WorkerStatusPlugin";
static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines";
static const char __pyx_k_branching_factor_2[] = "branching-factor";
static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_closing_gracefully[] = "closing_gracefully";
static const char __pyx_k_del_scheduler_file[] = "del_scheduler_file";
static const char __pyx_k_delete_worker_data[] = "_delete_worker_data";
static const char __pyx_k_diagnostics_plugin[] = "diagnostics.plugin";
static const char __pyx_k_heartbeat_interval[] = "heartbeat-interval";
static const char __pyx_k_loose_restrictions[] = "loose_restrictions";
static const char __pyx_k_performance_report[] = "performance_report";
static const char __pyx_k_periodic_callbacks[] = "periodic_callbacks";
static const char __pyx_k_remove_worker_data[] = "remove-worker-data";
static const char __pyx_k_scatter_to_workers[] = "scatter_to_workers";
static const char __pyx_k_stop_task_metadata[] = "stop_task_metadata";
static const char __pyx_k_task_stream_figure[] = "task_stream_figure";
static const char __pyx_k_template_directory[] = "template_directory";
static const char __pyx_k_update_graph_hlg_2[] = "update_graph_hlg";
static const char __pyx_k_validate_no_worker[] = "validate_no_worker";
static const char __pyx_k_waiter_not_in_play[] = "waiter not in play";
static const char __pyx_k_worker_collections[] = "_worker_collections";
static const char __pyx_k_KilledWorker___init[] = "KilledWorker.__init__";
static const char __pyx_k_Scheduler_Broadcast[] = "Scheduler Broadcast";
static const char __pyx_k_Scheduler_broadcast[] = "Scheduler.broadcast";
static const char __pyx_k_Scheduler_log_event[] = "Scheduler.log_event";
static const char __pyx_k_Scheduler_rebalance[] = "Scheduler.rebalance";
static const char __pyx_k_Scheduler_replicate[] = "Scheduler.replicate";
static const char __pyx_k_allow_other_workers[] = "allow_other_workers";
static const char __pyx_k_client_desires_keys[] = "client-desires-keys";
static const char __pyx_k_distributed_version[] = "distributed_version";
static const char __pyx_k_enable_gc_diagnosis[] = "enable_gc_diagnosis";
static const char __pyx_k_gather_from_workers[] = "gather_from_workers";
static const char __pyx_k_get_connection_args[] = "get_connection_args";
static const char __pyx_k_get_connection_info[] = "get_connection_info";
static const char __pyx_k_handle_long_running[] = "handle_long_running";
static const char __pyx_k_handle_missing_data[] = "handle_missing_data";
static const char __pyx_k_handle_release_data[] = "handle_release_data";
static const char __pyx_k_handshake_overrides[] = "handshake_overrides";
static const char __pyx_k_host_restrictions_2[] = "_host_restrictions";
static const char __pyx_k_http_server_modules[] = "http_server_modules";
static const char __pyx_k_legacy_task_key_set[] = "_legacy_task_key_set";
static const char __pyx_k_recreate_exceptions[] = "recreate_exceptions";
static const char __pyx_k_release_worker_data[] = "release-worker-data";
static const char __pyx_k_send_task_to_worker[] = "send_task_to_worker";
static const char __pyx_k_start_task_metadata[] = "start_task_metadata";
static const char __pyx_k_stimulus_task_erred[] = "stimulus_task_erred";
static const char __pyx_k_validate_processing[] = "validate_processing";
static const char __pyx_k_validate_task_state[] = "validate_task_state";
static const char __pyx_k_worker_restrictions[] = "worker_restrictions";
static const char __pyx_k_Scheduler_add_client[] = "Scheduler.add_client";
static const char __pyx_k_Scheduler_add_plugin[] = "Scheduler.add_plugin";
static const char __pyx_k_Scheduler_add_worker[] = "Scheduler.add_worker";
static const char __pyx_k_Scheduler_cancel_key[] = "Scheduler.cancel_key";
static const char __pyx_k_Scheduler_check_idle[] = "Scheduler.check_idle";
static const char __pyx_k_Scheduler_get_events[] = "Scheduler.get_events";
static const char __pyx_k_Scheduler_get_nbytes[] = "Scheduler.get_nbytes";
static const char __pyx_k_Scheduler_get_ncores[] = "Scheduler.get_ncores";
static const char __pyx_k_Scheduler_reschedule[] = "Scheduler.reschedule";
static const char __pyx_k_Scheduler_transition[] = "Scheduler.transition";
static const char __pyx_k_StateLegacySet___len[] = "_StateLegacySet.__len__";
static const char __pyx_k_bokeh_core_templates[] = "bokeh.core.templates";
static const char __pyx_k_check_idle_saturated[] = "check_idle_saturated";
static const char __pyx_k_client_releases_keys[] = "client-releases-keys";
static const char __pyx_k_disable_gc_diagnosis[] = "disable_gc_diagnosis";
static const char __pyx_k_get_profile_metadata[] = "get_profile_metadata";
static const char __pyx_k_handle_task_finished[] = "handle_task_finished";
static const char __pyx_k_heartbeat_interval_2[] = "heartbeat_interval";
static const char __pyx_k_legacy_task_key_dict[] = "_legacy_task_key_dict";
static const char __pyx_k_loose_restrictions_2[] = "_loose_restrictions";
static const char __pyx_k_put_key_in_stealable[] = "put_key_in_stealable";
static const char __pyx_k_reevaluate_occupancy[] = "reevaluate_occupancy";
static const char __pyx_k_template_environment[] = "template_environment";
static const char __pyx_k_Retire_worker_names_s[] = "Retire worker names %s";
static const char __pyx_k_Scheduler__transition[] = "Scheduler._transition";
static const char __pyx_k_Scheduler_client_send[] = "Scheduler.client_send";
static const char __pyx_k_Scheduler_get_profile[] = "Scheduler.get_profile";
static const char __pyx_k_Scheduler_get_who_has[] = "Scheduler.get_who_has";
static const char __pyx_k_Scheduler_transitions[] = "Scheduler.transitions";
static const char __pyx_k_Scheduler_update_data[] = "Scheduler.update_data";
static const char __pyx_k_Scheduler_worker_send[] = "Scheduler.worker_send";
static const char __pyx_k_StateLegacySet___init[] = "_StateLegacySet.__init__";
static const char __pyx_k_StateLegacySet___iter[] = "_StateLegacySet.__iter__";
static const char __pyx_k_StateLegacySet___repr[] = "_StateLegacySet.__repr__";
static const char __pyx_k_client_desires_keys_2[] = "client_desires_keys";
static const char __pyx_k_dask_scheduler_closed[] = "dask-scheduler [closed]";
static const char __pyx_k_distributed_scheduler[] = "distributed.scheduler";
static const char __pyx_k_handle_uncaught_error[] = "handle_uncaught_error";
static const char __pyx_k_has_lost_dependencies[] = "_has_lost_dependencies";
static const char __pyx_k_highlevelgraph_unpack[] = "highlevelgraph_unpack";
static const char __pyx_k_legacy_client_key_set[] = "_legacy_client_key_set";
static const char __pyx_k_legacy_worker_key_set[] = "_legacy_worker_key_set";
static const char __pyx_k_release_worker_data_2[] = "release_worker_data";
static const char __pyx_k_repr___locals_genexpr[] = "__repr__.<locals>.genexpr";
static const char __pyx_k_resource_restrictions[] = "resource_restrictions";
static const char __pyx_k_set_duration_estimate[] = "set_duration_estimate";
static const char __pyx_k_stimulus_missing_data[] = "stimulus_missing_data";
static const char __pyx_k_update_graph_duration[] = "update-graph-duration";
static const char __pyx_k_validate_worker_state[] = "validate_worker_state";
static const char __pyx_k_worker_restrictions_2[] = "_worker_restrictions";
static const char __pyx_k_Scheduler_close_worker[] = "Scheduler.close_worker";
static const char __pyx_k_Scheduler_get_has_what[] = "Scheduler.get_has_what";
static const char __pyx_k_Scheduler_get_metadata[] = "Scheduler.get_metadata";
static const char __pyx_k_Scheduler_run_function[] = "Scheduler.run_function";
static const char __pyx_k_Scheduler_set_metadata[] = "Scheduler.set_metadata";
static const char __pyx_k_Scheduler_update_graph[] = "Scheduler.update_graph";
static const char __pyx_k_Scheduler_validate_key[] = "Scheduler.validate_key";
static const char __pyx_k_Scheduler_workers_list[] = "Scheduler.workers_list";
static const char __pyx_k_Worker_Profile_compute[] = "Worker Profile (compute)";
static const char __pyx_k_actual_total_occupancy[] = "actual_total_occupancy";
static const char __pyx_k_client_releases_keys_2[] = "client_releases_keys";
static const char __pyx_k_dask_scheduler_closing[] = "dask-scheduler [closing]";
static const char __pyx_k_profile_cycle_interval[] = "profile_cycle_interval";
static const char __pyx_k_pyx_unpickle_TaskGroup[] = "__pyx_unpickle_TaskGroup";
static const char __pyx_k_pyx_unpickle_TaskState[] = "__pyx_unpickle_TaskState";
static const char __pyx_k_register_worker_plugin[] = "register_worker_plugin";
static const char __pyx_k_stimulus_task_finished[] = "stimulus_task_finished";
static const char __pyx_k_task_state_collections[] = "_task_state_collections";
static const char __pyx_k_Dask_Performance_Report[] = "Dask Performance Report";
static const char __pyx_k_Scheduler_add_resources[] = "Scheduler.add_resources";
static const char __pyx_k_Scheduler_handle_worker[] = "Scheduler.handle_worker";
static const char __pyx_k_Scheduler_remove_client[] = "Scheduler.remove_client";
static const char __pyx_k_Scheduler_remove_plugin[] = "Scheduler.remove_plugin";
static const char __pyx_k_Scheduler_remove_worker[] = "Scheduler.remove_worker";
static const char __pyx_k_Scheduler_report_on_key[] = "Scheduler.report_on_key";
static const char __pyx_k_Scheduler_start_ipython[] = "Scheduler.start_ipython";
static const char __pyx_k_Stimulus_task_erred_s_s[] = "Stimulus task erred %s, %s";
static const char __pyx_k_Worker_already_exists_s[] = "Worker already exists %s";
static const char __pyx_k_diagnostics_task_stream[] = "diagnostics.task_stream";
static const char __pyx_k_get_worker_service_addr[] = "get_worker_service_addr";
static const char __pyx_k_not_in_has_what_who_has[] = "not in has_what' who_has";
static const char __pyx_k_not_in_who_has_has_what[] = "not in who_has' has_what";
static const char __pyx_k_performance_report_html[] = "performance_report.html";
static const char __pyx_k_protocol_highlevelgraph[] = "protocol.highlevelgraph";
static const char __pyx_k_pyx_unpickle_TaskPrefix[] = "__pyx_unpickle_TaskPrefix";
static const char __pyx_k_resource_restrictions_2[] = "_resource_restrictions";
static const char __pyx_k_subscribe_worker_status[] = "subscribe_worker_status";
static const char __pyx_k_unneeded_task_in_memory[] = "unneeded task in memory";
static const char __pyx_k_waiting_on_released_dep[] = "waiting on released dep";
static const char __pyx_k_Client_s_releases_keys_s[] = "Client %s releases keys: %s";
static const char __pyx_k_PubSubSchedulerExtension[] = "PubSubSchedulerExtension";
static const char __pyx_k_ReplayExceptionScheduler[] = "ReplayExceptionScheduler";
static const char __pyx_k_Scheduler_coerce_address[] = "Scheduler.coerce_address";
static const char __pyx_k_Scheduler_get_call_stack[] = "Scheduler.get_call_stack";
static const char __pyx_k_Scheduler_get_processing[] = "Scheduler.get_processing";
static const char __pyx_k_Scheduler_retire_workers[] = "Scheduler.retire_workers";
static const char __pyx_k_Scheduler_stimulus_retry[] = "Scheduler.stimulus_retry";
static const char __pyx_k_Scheduler_validate_erred[] = "Scheduler.validate_erred";
static const char __pyx_k_Scheduler_validate_state[] = "Scheduler.validate_state";
static const char __pyx_k_StateLegacyMapping___len[] = "_StateLegacyMapping.__len__";
static const char __pyx_k_addresses_from_user_args[] = "addresses_from_user_args";
static const char __pyx_k_distributed_scheduler_py[] = "distributed/scheduler.py";
static const char __pyx_k_exceptval_locals_wrapper[] = "exceptval.<locals>.wrapper";
static const char __pyx_k_protocol_s_host_s_port_d[] = "%(protocol)s://%(host)s:%(port)d";
static const char __pyx_k_pyx_unpickle_ClientState[] = "__pyx_unpickle_ClientState";
static const char __pyx_k_pyx_unpickle_WorkerState[] = "__pyx_unpickle_WorkerState";
static const char __pyx_k_start_periodic_callbacks[] = "start_periodic_callbacks";
static const char __pyx_k_waiting_on_in_memory_dep[] = "waiting on in-memory dep";
static const char __pyx_k_Close_client_connection_s[] = "Close client connection: %s";
static const char __pyx_k_CollectTaskMetaDataPlugin[] = "CollectTaskMetaDataPlugin";
static const char __pyx_k_Scheduler_adaptive_target[] = "Scheduler.adaptive_target";
static const char __pyx_k_Scheduler_get_task_status[] = "Scheduler.get_task_status";
static const char __pyx_k_Scheduler_get_task_stream[] = "Scheduler.get_task_stream";
static const char __pyx_k_Scheduler_get_worker_logs[] = "Scheduler.get_worker_logs";
static const char __pyx_k_Scheduler_stimulus_cancel[] = "Scheduler.stimulus_cancel";
static const char __pyx_k_Scheduler_validate_memory[] = "Scheduler.validate_memory";
static const char __pyx_k_StateLegacyMapping___init[] = "_StateLegacyMapping.__init__";
static const char __pyx_k_StateLegacyMapping___iter[] = "_StateLegacyMapping.__iter__";
static const char __pyx_k_StateLegacyMapping___repr[] = "_StateLegacyMapping.__repr__";
static const char __pyx_k_StateLegacySet___contains[] = "_StateLegacySet.__contains__";
static const char __pyx_k_Stimulus_missing_data_s_s[] = "Stimulus missing data %s, %s";
static const char __pyx_k_Suggest_closing_workers_s[] = "Suggest closing workers: %s";
static const char __pyx_k_WorkerStatusPlugin___init[] = "WorkerStatusPlugin.__init__";
static const char __pyx_k_remove_client_from_events[] = "remove_client_from_events";
static const char __pyx_k_remove_key_from_stealable[] = "remove_key_from_stealable";
static const char __pyx_k_remove_worker_from_events[] = "remove_worker_from_events";
static const char __pyx_k_transition_erred_released[] = "transition_erred_released";
static const char __pyx_k_transition_released_erred[] = "transition_released_erred";
static const char __pyx_k_transition_waiting_memory[] = "transition_waiting_memory";
static const char __pyx_k_Finished_handling_client_s[] = "Finished handling client %s";
static const char __pyx_k_OptionalStateLegacyMapping[] = "_OptionalStateLegacyMapping";
static const char __pyx_k_Scheduler_check_worker_ttl[] = "Scheduler.check_worker_ttl";
static const char __pyx_k_Scheduler_clear_task_state[] = "Scheduler.clear_task_state";
static const char __pyx_k_Scheduler_client_heartbeat[] = "Scheduler.client_heartbeat";
static const char __pyx_k_Scheduler_heartbeat_worker[] = "Scheduler.heartbeat_worker";
static const char __pyx_k_Scheduler_log_worker_event[] = "Scheduler.log_worker_event";
static const char __pyx_k_Scheduler_remove_resources[] = "Scheduler.remove_resources";
static const char __pyx_k_Scheduler_update_graph_hlg[] = "Scheduler.update_graph_hlg";
static const char __pyx_k_Scheduler_validate_waiting[] = "Scheduler.validate_waiting";
static const char __pyx_k_Scheduler_workers_to_close[] = "Scheduler.workers_to_close";
static const char __pyx_k_Stimulus_task_finished_s_s[] = "Stimulus task finished %s, %s";
static const char __pyx_k_dask_scheduler_not_started[] = "dask-scheduler [not started]";
static const char __pyx_k_expected_Status_or_str_got[] = "expected Status or str, got ";
static const char __pyx_k_self_validate__s_not_found[] = "self.validate_%s not found";
static const char __pyx_k_transition_memory_released[] = "transition_memory_released";
static const char __pyx_k_Receive_client_connection_s[] = "Receive client connection: %s";
static const char __pyx_k_Scheduler_closing_all_comms[] = "Scheduler closing all comms";
static const char __pyx_k_Scheduler_handle_task_erred[] = "Scheduler.handle_task_erred";
static const char __pyx_k_Scheduler_validate_released[] = "Scheduler.validate_released";
static const char __pyx_k_WorkerStatusPlugin_teardown[] = "WorkerStatusPlugin.teardown";
static const char __pyx_k_not_in_wants_what_who_wants[] = "not in wants_what' who_wants";
static const char __pyx_k_not_in_who_wants_wants_what[] = "not in who_wants' wants_what";
static const char __pyx_k_pyx_unpickle_SchedulerState[] = "__pyx_unpickle_SchedulerState";
static const char __pyx_k_synchronize_worker_interval[] = "synchronize_worker_interval";
static const char __pyx_k_transition_memory_forgotten[] = "transition_memory_forgotten";
static const char __pyx_k_transition_processing_erred[] = "transition_processing_erred";
static const char __pyx_k_transition_released_waiting[] = "transition_released_waiting";
static const char __pyx_k_transition_waiting_released[] = "transition_waiting_released";
static const char __pyx_k_Plugin_failed_with_exception[] = "Plugin failed with exception";
static const char __pyx_k_Scheduler_performance_report[] = "Scheduler.performance_report";
static const char __pyx_k_Scheduler_stop_task_metadata[] = "Scheduler.stop_task_metadata";
static const char __pyx_k_Scheduler_validate_no_worker[] = "Scheduler.validate_no_worker";
static const char __pyx_k_StateLegacyMapping___getitem[] = "_StateLegacyMapping.__getitem__";
static const char __pyx_k_distributed_admin_pdb_on_err[] = "distributed.admin.pdb-on-err";
static const char __pyx_k_distributed_scheduler_pickle[] = "distributed.scheduler.pickle";
static const char __pyx_k_transition_no_worker_waiting[] = "transition_no_worker_waiting";
static const char __pyx_k_transition_processing_memory[] = "transition_processing_memory";
static const char __pyx_k_Error_in_reevaluate_occupancy[] = "Error in reevaluate occupancy";
static const char __pyx_k_Scheduler__delete_worker_data[] = "Scheduler._delete_worker_data";
static const char __pyx_k_Scheduler_client_desires_keys[] = "Scheduler.client_desires_keys";
static const char __pyx_k_Scheduler_handle_long_running[] = "Scheduler.handle_long_running";
static const char __pyx_k_Scheduler_handle_missing_data[] = "Scheduler.handle_missing_data";
static const char __pyx_k_Scheduler_handle_release_data[] = "Scheduler.handle_release_data";
static const char __pyx_k_Scheduler_release_worker_data[] = "Scheduler.release_worker_data";
static const char __pyx_k_Scheduler_send_task_to_worker[] = "Scheduler.send_task_to_worker";
static const char __pyx_k_Scheduler_start_task_metadata[] = "Scheduler.start_task_metadata";
static const char __pyx_k_Scheduler_stimulus_task_erred[] = "Scheduler.stimulus_task_erred";
static const char __pyx_k_Scheduler_validate_processing[] = "Scheduler.validate_processing";
static const char __pyx_k_Send_kill_signal_to_nannies_s[] = "Send kill signal to nannies: %s";
static const char __pyx_k_WorkerStatusPlugin_add_worker[] = "WorkerStatusPlugin.add_worker";
static const char __pyx_k_Worker_Profile_administrative[] = "Worker Profile (administrative)";
static const char __pyx_k_Worker_holding_Actor_was_lost[] = "Worker holding Actor was lost";
static const char __pyx_k_distributed_scheduler_preload[] = "distributed.scheduler.preload";
static const char __pyx_k_transition_no_worker_released[] = "transition_no_worker_released";
static const char __pyx_k_transition_released_forgotten[] = "transition_released_forgotten";
static const char __pyx_k_transition_waiting_processing[] = "transition_waiting_processing";
static const char __pyx_k_Find_workers_that_we_can_close[] = "\n Find workers that we can close with low cost\n\n This returns a list of workers that are good candidates to retire.\n These workers are not running anything and are storing\n relatively little data relative to their peers. If all workers are\n idle then we still maintain enough workers to have enough RAM to store\n our data, with a comfortable buffer.\n\n This is for use with systems like ``distributed.deploy.adaptive``.\n\n Parameters\n ----------\n memory_factor : Number\n Amount of extra space we want to have for our stored data.\n Defaults two 2, or that we want to have twice as much memory as we\n currently have data.\n n : int\n Number of workers to close\n minimum : int\n Minimum number of workers to keep around\n key : Callable(WorkerState)\n An optional callable mapping a WorkerState object to a group\n affiliation. Groups will be closed together. This is useful when\n closing workers must be done collectively, such as by hostname.\n target : int\n Target number of workers to have after we close\n attribute : str\n The attribute of the WorkerState object to return, like \"address\"\n or \"name\". Defaults to \"address\".\n\n Examples\n --------\n >>> scheduler.workers_to_close()\n ['tcp://192.168.0.1:1234', 'tcp://192.168.0.2:1234']\n\n Group workers by hostname prior to closing\n\n >>> scheduler.workers_to_close(key=lambda ws: ws.host)\n ['tcp://192.168.0.1:1234', 'tcp://192.168.0.1:4567']\n\n Remove two workers\n\n >>> scheduler.workers_to_close(n=2)\n\n Keep enough workers to have twice as much memory as we we need.\n\n >>> scheduler.workers_to_close(memory_ratio=2)\n\n Returns\n -------\n to_close: list of worker addresses that ""are OK to close\n\n See Also\n --------\n Scheduler.retire_workers\n ";
static const char __pyx_k_Moving_d_keys_to_other_workers[] = "Moving %d keys to other workers";
static const char __pyx_k_Scheduler_client_releases_keys[] = "Scheduler.client_releases_keys";
static const char __pyx_k_Scheduler_connection_to_worker[] = "Scheduler connection to worker";
static const char __pyx_k_Scheduler_get_profile_metadata[] = "Scheduler.get_profile_metadata";
static const char __pyx_k_Scheduler_handle_task_finished[] = "Scheduler.handle_task_finished";
static const char __pyx_k_Scheduler_reevaluate_occupancy[] = "Scheduler.reevaluate_occupancy";
static const char __pyx_k_Scheduler_transition_line_5989[] = "Scheduler.transition (line 5989)";
static const char __pyx_k_Similar_to__StateLegacyMapping[] = "\n Similar to _StateLegacyMapping, but a false-y value is interpreted\n as a missing key.\n ";
static const char __pyx_k_StateLegacySet___iter___locals[] = "_StateLegacySet.__iter__.<locals>.genexpr";
static const char __pyx_k_Tried_writing_to_closed_comm_s[] = "Tried writing to closed comm: %s";
static const char __pyx_k_dashboard_components_scheduler[] = "dashboard.components.scheduler";
static const char __pyx_k_distributed_scheduler_validate[] = "distributed.scheduler.validate";
static const char __pyx_k_not_in_dependency_s_dependents[] = "not in dependency's dependents";
static const char __pyx_k_transition_processing_released[] = "transition_processing_released";
static const char __pyx_k_A_mapping_interface_mimicking_t[] = "\n A mapping interface mimicking the former Scheduler state dictionaries.\n ";
static const char __pyx_k_An_plugin_to_share_worker_statu[] = "\n An plugin to share worker status with a remote observer\n\n This is used in cluster managers to keep updated about the status of the\n scheduler.\n ";
static const char __pyx_k_Can_not_use_replicate_to_delete[] = "Can not use replicate to delete data";
static const char __pyx_k_Error_transitioning_r_from_r_to[] = "Error transitioning %r from %r to %r";
static const char __pyx_k_Exception_while_restarting_This[] = "Exception while restarting. This is normal";
static const char __pyx_k_Impossible_transition_from_r_to[] = "Impossible transition from %r to %r";
static const char __pyx_k_OptionalStateLegacyMapping___ge[] = "_OptionalStateLegacyMapping.__getitem__";
static const char __pyx_k_OptionalStateLegacyMapping___it[] = "_OptionalStateLegacyMapping.__iter__";
static const char __pyx_k_OptionalStateLegacyMapping___le[] = "_OptionalStateLegacyMapping.__len__.<locals>.genexpr";
static const char __pyx_k_Scheduler__transition_line_5845[] = "Scheduler._transition (line 5845)";
static const char __pyx_k_Scheduler_broadcast_locals_send[] = "Scheduler.broadcast.<locals>.send_message";
static const char __pyx_k_Scheduler_cancels_key_s_Force_s[] = "Scheduler cancels key %s. Force=%s";
static const char __pyx_k_Scheduler_get_call_stack_locals[] = "Scheduler.get_call_stack.<locals>.genexpr";
static const char __pyx_k_Scheduler_handle_uncaught_error[] = "Scheduler.handle_uncaught_error";
static const char __pyx_k_Scheduler_stimulus_missing_data[] = "Scheduler.stimulus_missing_data";
static const char __pyx_k_Scheduler_validate_state_locals[] = "Scheduler.validate_state.<locals>.genexpr";
static const char __pyx_k_Scheduler_workers_to_close_line[] = "Scheduler.workers_to_close (line 5262)";
static const char __pyx_k_Task_s_marked_as_failed_because[] = "Task %s marked as failed because %d workers died while trying to run it";
static const char __pyx_k_WorkerState_ncores_has_moved_to[] = "WorkerState.ncores has moved to WorkerState.nthreads";
static const char __pyx_k_Workers_don_t_have_promised_key[] = "Workers don't have promised key: %s, %s";
static const char __pyx_k_distributed_dashboard_scheduler[] = "distributed.dashboard.scheduler";
static const char __pyx_k_distributed_scheduler_bandwidth[] = "distributed.scheduler.bandwidth";
static const char __pyx_k_h1_Dask_Performance_Report_h1_i[] = "\n <h1> Dask Performance Report </h1>\n\n <i> Select different tabs on the top for additional information </i>\n\n <h2> Duration: {time} </h2>\n <h2> Tasks Information </h2>\n <ul>\n <li> number of tasks: {ntasks} </li>\n {tasks_timings}\n </ul>\n\n <h2> Scheduler Information </h2>\n <ul>\n <li> Address: {address} </li>\n <li> Workers: {nworkers} </li>\n <li> Threads: {threads} </li>\n <li> Memory: {memory} </li>\n <li> Dask Version: {dask_version} </li>\n <li> Dask.Distributed Version: {distributed_version} </li>\n </ul>\n\n <h2> Calling Code </h2>\n <pre>\n{code}\n </pre>\n ";
static const char __pyx_k_not_in_dependent_s_dependencies[] = "not in dependent's dependencies";
static const char __pyx_k_Attempting_to_reschedule_task_wh[] = "Attempting to reschedule task {}, which was not found on the scheduler. Aborting reschedule.";
static const char __pyx_k_Client_s_requests_to_cancel_d_ke[] = "Client %s requests to cancel %d keys";
static const char __pyx_k_Client_s_requests_to_retry_d_key[] = "Client %s requests to retry %d keys";
static const char __pyx_k_CollectTaskMetaDataPlugin___init[] = "CollectTaskMetaDataPlugin.__init__";
static const char __pyx_k_CollectTaskMetaDataPlugin_transi[] = "CollectTaskMetaDataPlugin.transition";
static const char __pyx_k_CollectTaskMetaDataPlugin_update[] = "CollectTaskMetaDataPlugin.update_graph";
static const char __pyx_k_Communication_failed_during_repl[] = "Communication failed during replication: %s";
static const char __pyx_k_Couldn_t_gather_keys_s_state_s_w[] = "Couldn't gather keys %s state: %s workers: %s";
static const char __pyx_k_Dynamic_distributed_task_schedul[] = "Dynamic distributed task scheduler\n\n The scheduler tracks the current state of workers, data, and computations.\n The scheduler listens for events and responds by controlling workers\n appropriately. It continuously tries to use the workers to execute an ever\n growing dask graph.\n\n All events are handled quickly, in linear time with respect to their input\n (which is often of constant size) and generally within a millisecond. To\n accomplish this the scheduler tracks a lot of state. Every operation\n maintains the consistency of this state.\n\n The scheduler communicates with the outside world through Comm objects.\n It maintains a consistent and valid view of the world even when listening\n to several clients at once.\n\n A Scheduler is typically started either with the ``dask-scheduler``\n executable::\n\n $ dask-scheduler\n Scheduler started at 127.0.0.1:8786\n\n Or within a LocalCluster a Client starts up without connection\n information::\n\n >>> c = Client() # doctest: +SKIP\n >>> c.cluster.scheduler # doctest: +SKIP\n Scheduler(...)\n\n Users typically do not interact with the scheduler directly but rather with\n the client object ``Client``.\n\n **State**\n\n The scheduler contains the following state variables. Each variable is\n listed along with what it stores and a brief description.\n\n * **tasks:** ``{task key: TaskState}``\n Tasks currently known to the scheduler\n * **unrunnable:** ``{TaskState}``\n Tasks in the \"no-worker\" state\n\n * **workers:** ``{worker key: WorkerState}``\n Workers currently connected to the scheduler\n * **idle:** ``{WorkerState}``:\n Set of workers that are not fully utilized\n * **saturated:** ``{WorkerState}``:\n Set of workers that are not over-utilized\n\n * **host_info:** ``{hostname: dict}``:\n Information about each worker host\n\n * **clients:** ``""{client key: ClientState}``\n Clients currently connected to the scheduler\n\n * **services:** ``{str: port}``:\n Other services running on this scheduler, like Bokeh\n * **loop:** ``IOLoop``:\n The running Tornado IOLoop\n * **client_comms:** ``{client key: Comm}``\n For each client, a Comm object used to receive task requests and\n report task status updates.\n * **stream_comms:** ``{worker key: Comm}``\n For each worker, a Comm object from which we both accept stimuli and\n report results\n * **task_duration:** ``{key-prefix: time}``\n Time we expect certain functions to take, e.g. ``{'sum': 0.25}``\n ";
static const char __pyx_k_Expected_to_find_exactly_one_Col[] = "Expected to find exactly one CollectTaskMetaDataPlugin with name ";
static const char __pyx_k_Incompatible_checksums_s_vs_0x38[] = "Incompatible checksums (%s vs 0x38edd31 = (_client_key, _hash, _last_seen, _versions, _wants_what))";
static const char __pyx_k_Incompatible_checksums_s_vs_0x3d[] = "Incompatible checksums (%s vs 0x3d65355 = (_actor, _annotations, _dependencies, _dependents, _exception, _exception_blame, _group, _group_key, _has_lost_dependencies, _hash, _host_restrictions, _key, _loose_restrictions, _metadata, _nbytes, _prefix, _priority, _processing_on, _resource_restrictions, _retries, _run_spec, _state, _suspicious, _traceback, _type, _waiters, _waiting_on, _who_has, _who_wants, _worker_restrictions))";
static const char __pyx_k_Incompatible_checksums_s_vs_0x69[] = "Incompatible checksums (%s vs 0x694d44f = (_actors, _address, _bandwidth, _executing, _extra, _has_what, _hash, _last_seen, _local_directory, _memory_limit, _metrics, _name, _nanny, _nbytes, _nthreads, _occupancy, _pid, _processing, _resources, _services, _status, _time_delay, _used_resources, _versions))";
static const char __pyx_k_Incompatible_checksums_s_vs_0x81[] = "Incompatible checksums (%s vs 0x813f495 = (_dependencies, _duration, _name, _nbytes_in_memory, _nbytes_total, _prefix, _states, _types))";
static const char __pyx_k_Incompatible_checksums_s_vs_0x9b[] = "Incompatible checksums (%s vs 0x9bc1f9f = (_all_durations, _duration_average, _groups, _name, _suspicious))";
static const char __pyx_k_Incompatible_checksums_s_vs_0xeb[] = "Incompatible checksums (%s vs 0xebac261 = (_aliases, _bandwidth, _clients, _extensions, _host_info, _idle, _idle_dv, _n_tasks, _resources, _saturated, _task_groups, _task_metadata, _task_prefixes, _tasks, _total_nthreads, _total_occupancy, _unknown_durations, _unrunnable, _validate, _workers, _workers_dv))";
static const char __pyx_k_Nannies_didn_t_report_back_resta[] = "Nannies didn't report back restarted within timeout. Continuuing with restart process";
static const char __pyx_k_Not_all_workers_responded_positi[] = "Not all workers responded positively: %s";
static const char __pyx_k_Received_already_computed_task_w[] = "Received already computed task, worker: %s, state: %s, key: %s, who_has: %s";
static const char __pyx_k_Received_long_running_signal_fro[] = "Received long-running signal from duplicate task. Ignoring.";
static const char __pyx_k_Scheduler_Profile_administrative[] = "Scheduler Profile (administrative)";
static const char __pyx_k_Scheduler___init___locals_lambda[] = "Scheduler.__init__.<locals>.<lambda>";
static const char __pyx_k_Scheduler_add_plugin_locals_gene[] = "Scheduler.add_plugin.<locals>.genexpr";
static const char __pyx_k_Scheduler_cancel_key_locals_lamb[] = "Scheduler.cancel_key.<locals>.<lambda>";
static const char __pyx_k_Scheduler_closing_after_being_id[] = "Scheduler closing after being idle for %s";
static const char __pyx_k_Scheduler_get_nbytes_locals_lamb[] = "Scheduler.get_nbytes.<locals>.<lambda>";
static const char __pyx_k_Scheduler_get_profile_locals_gen[] = "Scheduler.get_profile.<locals>.genexpr";
static const char __pyx_k_Scheduler_get_profile_metadata_l[] = "Scheduler.get_profile_metadata.<locals>.genexpr";
static const char __pyx_k_Scheduler_get_worker_service_add[] = "Scheduler.get_worker_service_addr";
static const char __pyx_k_Scheduler_performance_report_loc[] = "Scheduler.performance_report.<locals>.profile_to_figure";
static const char __pyx_k_Scheduler_rebalance_locals_genex[] = "Scheduler.rebalance.<locals>.genexpr";
static const char __pyx_k_Scheduler_rebalance_locals_lambd[] = "Scheduler.rebalance.<locals>.<lambda>";
static const char __pyx_k_Scheduler_register_worker_plugin[] = "Scheduler.register_worker_plugin";
static const char __pyx_k_Scheduler_remove_client_locals_r[] = "Scheduler.remove_client.<locals>.remove_client_from_events";
static const char __pyx_k_Scheduler_remove_worker_locals_r[] = "Scheduler.remove_worker.<locals>.remove_worker_from_events";
static const char __pyx_k_Scheduler_replicate_locals_genex[] = "Scheduler.replicate.<locals>.genexpr";
static const char __pyx_k_Scheduler_restart_locals_genexpr[] = "Scheduler.restart.<locals>.genexpr";
static const char __pyx_k_Scheduler_start_locals_del_sched[] = "Scheduler.start.<locals>.del_scheduler_file";
static const char __pyx_k_Scheduler_stimulus_task_finished[] = "Scheduler.stimulus_task_finished";
static const char __pyx_k_Scheduler_subscribe_worker_statu[] = "Scheduler.subscribe_worker_status";
static const char __pyx_k_Scheduler_update_graph_locals_ge[] = "Scheduler.update_graph.<locals>.genexpr";
static const char __pyx_k_Scheduler_workers_to_close_local[] = "Scheduler.workers_to_close.<locals>._key";
static const char __pyx_k_Send_lost_future_signal_to_clien[] = "Send lost future signal to clients";
static const char __pyx_k_Similar_to__StateLegacyMapping_2[] = "\n Similar to _StateLegacyMapping, but exposes a set containing\n all values with a true value.\n ";
static const char __pyx_k_Starting_worker_compute_stream_s[] = "Starting worker compute stream, %s";
static const char __pyx_k_Transition_a_key_from_its_curren[] = "Transition a key from its current state to the finish state\n\n Examples\n --------\n >>> self._transition('x', 'waiting')\n {'x': 'processing'}\n\n Returns\n -------\n Dictionary of recommendations for future transitions\n\n See Also\n --------\n Scheduler.transitions : transitive version of this function\n ";
static const char __pyx_k_Transitioned_r_s_s_actual_s_Cons[] = "Transitioned %r %s->%s (actual: %s). Consequence: %s";
static const char __pyx_k_Tried_to_call_feed_route_with_cu[] = "Tried to call 'feed' route with custom functions, but pickle is disallowed. Set the 'distributed.scheduler.pickle'config value to True to use the 'feed' route (this is mostly commonly used with progress bars)";
static const char __pyx_k_Unexpected_worker_completed_task[] = "Unexpected worker completed task, likely due to work stealing. Expected: %s, Got: %s, Key: %s";
static const char __pyx_k_User_asked_for_computation_on_lo[] = "User asked for computation on lost data, %s";
static const char __pyx_k_WorkerStatusPlugin_remove_worker[] = "WorkerStatusPlugin.remove_worker";
static const char __pyx_k_Worker_failed_to_heartbeat_withi[] = "Worker failed to heartbeat within %s seconds. Closing: %s";
static const char __pyx_k_Worker_tried_to_connect_with_a_d[] = "Worker tried to connect with a duplicate name: %s";
static const char __pyx_k_Workers_not_the_same_in_all_coll[] = "Workers not the same in all collections";
static const char __pyx_k_addresses_should_be_strings_or_t[] = "addresses should be strings or tuples, got ";
static const char __pyx_k_distributed_adaptive_target_dura[] = "distributed.adaptive.target-duration";
static const char __pyx_k_distributed_dashboard_components[] = "distributed.dashboard.components.scheduler";
static const char __pyx_k_distributed_diagnostics_task_str[] = "distributed.diagnostics.task_stream";
static const char __pyx_k_distributed_http_scheduler_missi[] = "distributed.http.scheduler.missing_bokeh";
static const char __pyx_k_distributed_scheduler_allowed_fa[] = "distributed.scheduler.allowed-failures";
static const char __pyx_k_distributed_scheduler_default_da[] = "distributed.scheduler.default-data-size";
static const char __pyx_k_distributed_scheduler_default_ta[] = "distributed.scheduler.default-task-durations";
static const char __pyx_k_distributed_scheduler_events_cle[] = "distributed.scheduler.events-cleanup-delay";
static const char __pyx_k_distributed_scheduler_http_route[] = "distributed.scheduler.http.routes";
static const char __pyx_k_distributed_scheduler_idle_timeo[] = "distributed.scheduler.idle-timeout";
static const char __pyx_k_distributed_scheduler_preload_ar[] = "distributed.scheduler.preload-argv";
static const char __pyx_k_distributed_scheduler_transition[] = "distributed.scheduler.transition-log-length";
static const char __pyx_k_distributed_scheduler_unknown_ta[] = "distributed.scheduler.unknown-task-duration";
static const char __pyx_k_distributed_scheduler_work_steal[] = "distributed.scheduler.work-stealing";
static const char __pyx_k_distributed_scheduler_worker_ttl[] = "distributed.scheduler.worker-ttl";
static const char __pyx_k_distributed_worker_profile_cycle[] = "distributed.worker.profile.cycle";
static const char __pyx_k_handle_missing_data_key_s_worker[] = "handle missing data key=%s worker=%s";
static const char __pyx_k_task_processing_without_all_deps[] = "task processing without all deps";
static const char __pyx_k_waiters_not_subset_of_dependents[] = "waiters not subset of dependents";
static const char __pyx_k_waiting_not_subset_of_dependenci[] = "waiting not subset of dependencies";
static const char __pyx_k_OptionalStateLegacyMapping___le_2[] = "_OptionalStateLegacyMapping.__len__";
static const char __pyx_k_Scheduler_get_profile_metadata_l_2[] = "Scheduler.get_profile_metadata.<locals>.<lambda>";
static const char __pyx_k_Transition_a_key_from_its_curren_2[] = "Transition a key from its current state to the finish state\n\n Examples\n --------\n >>> self.transition('x', 'waiting')\n {'x': 'processing'}\n\n Returns\n -------\n Dictionary of recommendations for future transitions\n\n See Also\n --------\n Scheduler.transitions: transitive version of this function\n ";
static PyObject *__pyx_kp_u_0_0_0_0;
static PyObject *__pyx_kp_u_11s_at_25s;
static PyObject *__pyx_kp_u_1s;
static PyObject *__pyx_kp_u_2ms;
static PyObject *__pyx_kp_u_500ms;
static PyObject *__pyx_kp_u_5ms;
static PyObject *__pyx_kp_u_60s;
static PyObject *__pyx_n_u_ALL_TASK_STATES;
static PyObject *__pyx_kp_s_A_mapping_interface_mimicking_t;
static PyObject *__pyx_n_s_All;
static PyObject *__pyx_kp_s_An_plugin_to_share_worker_statu;
static PyObject *__pyx_kp_u_Attempting_to_reschedule_task_wh;
static PyObject *__pyx_n_s_AttributeError;
static PyObject *__pyx_n_s_BandwidthTypes;
static PyObject *__pyx_n_s_BandwidthWorkers;
static PyObject *__pyx_kp_u_Bandwidth_Types;
static PyObject *__pyx_kp_u_Bandwidth_Workers;
static PyObject *__pyx_n_s_BatchedSend;
static PyObject *__pyx_kp_u_Can_not_use_replicate_to_delete;
static PyObject *__pyx_kp_u_Clear_task_state;
static PyObject *__pyx_n_s_ClientState;
static PyObject *__pyx_kp_u_Client_s;
static PyObject *__pyx_kp_u_Client_s_releases_keys_s;
static PyObject *__pyx_kp_u_Client_s_requests_to_cancel_d_ke;
static PyObject *__pyx_kp_u_Client_s_requests_to_retry_d_key;
static PyObject *__pyx_kp_u_Close_client_connection_s;
static PyObject *__pyx_kp_u_Closing_worker_s;
static PyObject *__pyx_n_s_CollectTaskMetaDataPlugin;
static PyObject *__pyx_n_s_CollectTaskMetaDataPlugin___init;
static PyObject *__pyx_n_s_CollectTaskMetaDataPlugin_transi;
static PyObject *__pyx_n_s_CollectTaskMetaDataPlugin_update;
static PyObject *__pyx_n_s_CommClosedError;
static PyObject *__pyx_kp_u_Communication_failed_during_repl;
static PyObject *__pyx_kp_u_Couldn_t_gather_keys_s_state_s_w;
static PyObject *__pyx_n_s_DEFAULT_EXTENSIONS;
static PyObject *__pyx_kp_u_Dask_Performance_Report;
static PyObject *__pyx_n_s_Div;
static PyObject *__pyx_kp_s_Dynamic_distributed_task_schedul;
static PyObject *__pyx_n_s_EnvironmentError;
static PyObject *__pyx_kp_u_Error_in_reevaluate_occupancy;
static PyObject *__pyx_kp_u_Error_transitioning_r_from_r_to;
static PyObject *__pyx_n_s_EventExtension;
static PyObject *__pyx_kp_u_Exception_while_restarting_This;
static PyObject *__pyx_kp_u_Expected_to_find_exactly_one_Col;
static PyObject *__pyx_kp_u_Find_workers_that_we_can_close;
static PyObject *__pyx_kp_u_Finished_handling_client_s;
static PyObject *__pyx_n_s_IOLoop;
static PyObject *__pyx_n_s_ImportError;
static PyObject *__pyx_kp_u_Impossible_transition_from_r_to;
static PyObject *__pyx_kp_s_Incompatible_checksums_s_vs_0x38;
static PyObject *__pyx_kp_s_Incompatible_checksums_s_vs_0x3d;
static PyObject *__pyx_kp_s_Incompatible_checksums_s_vs_0x69;
static PyObject *__pyx_kp_s_Incompatible_checksums_s_vs_0x81;
static PyObject *__pyx_kp_s_Incompatible_checksums_s_vs_0x9b;
static PyObject *__pyx_kp_s_Incompatible_checksums_s_vs_0xeb;
static PyObject *__pyx_n_s_KeyError;
static PyObject *__pyx_kp_u_Key_lost_s;
static PyObject *__pyx_n_s_KilledWorker;
static PyObject *__pyx_n_s_KilledWorker___init;
static PyObject *__pyx_n_s_LOG_PDB;
static PyObject *__pyx_n_s_Lock;
static PyObject *__pyx_n_s_LockExtension;
static PyObject *__pyx_kp_u_Lost_all_workers;
static PyObject *__pyx_n_s_Mapping;
static PyObject *__pyx_kp_u_Moving_d_keys_to_other_workers;
static PyObject *__pyx_kp_u_Nannies_didn_t_report_back_resta;
static PyObject *__pyx_kp_u_No_workers_found;
static PyObject *__pyx_kp_u_None;
static PyObject *__pyx_kp_u_Not_all_workers_responded_positi;
static PyObject *__pyx_n_s_Number;
static PyObject *__pyx_n_u_OK;
static PyObject *__pyx_n_s_OptionalStateLegacyMapping;
static PyObject *__pyx_n_s_OptionalStateLegacyMapping___ge;
static PyObject *__pyx_n_s_OptionalStateLegacyMapping___it;
static PyObject *__pyx_n_s_OptionalStateLegacyMapping___le;
static PyObject *__pyx_n_s_OptionalStateLegacyMapping___le_2;
static PyObject *__pyx_n_s_Panel;
static PyObject *__pyx_n_s_PeriodicCallback;
static PyObject *__pyx_n_s_PickleError;
static PyObject *__pyx_kp_u_Plugin_failed_with_exception;
static PyObject *__pyx_n_s_Process;
static PyObject *__pyx_n_s_PubSubSchedulerExtension;
static PyObject *__pyx_n_s_PublishExtension;
static PyObject *__pyx_n_s_Py_hash_t;
static PyObject *__pyx_n_s_Py_ssize_t;
static PyObject *__pyx_n_u_Py_ssize_t;
static PyObject *__pyx_n_s_QueueExtension;
static PyObject *__pyx_kp_u_Receive_client_connection_s;
static PyObject *__pyx_kp_u_Received_already_computed_task_w;
static PyObject *__pyx_kp_u_Received_long_running_signal_fro;
static PyObject *__pyx_kp_u_Register_worker_s;
static PyObject *__pyx_kp_u_Remove_client_s;
static PyObject *__pyx_kp_u_Remove_worker_s;
static PyObject *__pyx_kp_u_Removed_worker_s;
static PyObject *__pyx_n_s_ReplayExceptionScheduler;
static PyObject *__pyx_kp_u_Retire_worker_names_s;
static PyObject *__pyx_kp_u_Retire_workers_s;
static PyObject *__pyx_n_s_RuntimeError;
static PyObject *__pyx_n_s_Scheduler;
static PyObject *__pyx_n_s_SchedulerPlugin;
static PyObject *__pyx_n_s_SchedulerState;
static PyObject *__pyx_kp_u_Scheduler_2;
static PyObject *__pyx_kp_u_Scheduler_Broadcast;
static PyObject *__pyx_kp_u_Scheduler_Client;
static PyObject *__pyx_kp_u_Scheduler_Profile_administrative;
static PyObject *__pyx_n_s_Scheduler___init;
static PyObject *__pyx_n_s_Scheduler___init___locals_lambda;
static PyObject *__pyx_n_s_Scheduler___repr;
static PyObject *__pyx_n_s_Scheduler__delete_worker_data;
static PyObject *__pyx_n_s_Scheduler__transition;
static PyObject *__pyx_kp_u_Scheduler__transition_line_5845;
static PyObject *__pyx_n_s_Scheduler_adaptive_target;
static PyObject *__pyx_n_s_Scheduler_add_client;
static PyObject *__pyx_n_s_Scheduler_add_keys;
static PyObject *__pyx_n_s_Scheduler_add_plugin;
static PyObject *__pyx_n_s_Scheduler_add_plugin_locals_gene;
static PyObject *__pyx_n_s_Scheduler_add_resources;
static PyObject *__pyx_n_s_Scheduler_add_worker;
static PyObject *__pyx_kp_u_Scheduler_at_25s;
static PyObject *__pyx_n_s_Scheduler_broadcast;
static PyObject *__pyx_n_s_Scheduler_broadcast_locals_send;
static PyObject *__pyx_n_s_Scheduler_cancel_key;
static PyObject *__pyx_n_s_Scheduler_cancel_key_locals_lamb;
static PyObject *__pyx_kp_u_Scheduler_cancels_key_s_Force_s;
static PyObject *__pyx_n_s_Scheduler_check_idle;
static PyObject *__pyx_n_s_Scheduler_check_worker_ttl;
static PyObject *__pyx_n_s_Scheduler_clear_task_state;
static PyObject *__pyx_n_s_Scheduler_client_desires_keys;
static PyObject *__pyx_n_s_Scheduler_client_heartbeat;
static PyObject *__pyx_n_s_Scheduler_client_releases_keys;
static PyObject *__pyx_n_s_Scheduler_client_send;
static PyObject *__pyx_n_s_Scheduler_close;
static PyObject *__pyx_n_s_Scheduler_close_worker;
static PyObject *__pyx_kp_u_Scheduler_closing;
static PyObject *__pyx_kp_u_Scheduler_closing_after_being_id;
static PyObject *__pyx_kp_u_Scheduler_closing_all_comms;
static PyObject *__pyx_n_s_Scheduler_coerce_address;
static PyObject *__pyx_kp_u_Scheduler_connection_to_worker;
static PyObject *__pyx_n_s_Scheduler_feed;
static PyObject *__pyx_n_s_Scheduler_gather;
static PyObject *__pyx_n_s_Scheduler_get_call_stack;
static PyObject *__pyx_n_s_Scheduler_get_call_stack_locals;
static PyObject *__pyx_n_s_Scheduler_get_events;
static PyObject *__pyx_n_s_Scheduler_get_has_what;
static PyObject *__pyx_n_s_Scheduler_get_metadata;
static PyObject *__pyx_n_s_Scheduler_get_nbytes;
static PyObject *__pyx_n_s_Scheduler_get_nbytes_locals_lamb;
static PyObject *__pyx_n_s_Scheduler_get_ncores;
static PyObject *__pyx_n_s_Scheduler_get_processing;
static PyObject *__pyx_n_s_Scheduler_get_profile;
static PyObject *__pyx_n_s_Scheduler_get_profile_locals_gen;
static PyObject *__pyx_n_s_Scheduler_get_profile_metadata;
static PyObject *__pyx_n_s_Scheduler_get_profile_metadata_l;
static PyObject *__pyx_n_s_Scheduler_get_profile_metadata_l_2;
static PyObject *__pyx_n_s_Scheduler_get_task_status;
static PyObject *__pyx_n_s_Scheduler_get_task_stream;
static PyObject *__pyx_n_s_Scheduler_get_who_has;
static PyObject *__pyx_n_s_Scheduler_get_worker_logs;
static PyObject *__pyx_n_s_Scheduler_get_worker_service_add;
static PyObject *__pyx_n_s_Scheduler_handle_long_running;
static PyObject *__pyx_n_s_Scheduler_handle_missing_data;
static PyObject *__pyx_n_s_Scheduler_handle_release_data;
static PyObject *__pyx_n_s_Scheduler_handle_task_erred;
static PyObject *__pyx_n_s_Scheduler_handle_task_finished;
static PyObject *__pyx_n_s_Scheduler_handle_uncaught_error;
static PyObject *__pyx_n_s_Scheduler_handle_worker;
static PyObject *__pyx_n_s_Scheduler_heartbeat_worker;
static PyObject *__pyx_n_s_Scheduler_identity;
static PyObject *__pyx_n_s_Scheduler_log_event;
static PyObject *__pyx_n_s_Scheduler_log_worker_event;
static PyObject *__pyx_n_s_Scheduler_new_task;
static PyObject *__pyx_n_s_Scheduler_performance_report;
static PyObject *__pyx_n_s_Scheduler_performance_report_loc;
static PyObject *__pyx_n_s_Scheduler_proxy;
static PyObject *__pyx_n_s_Scheduler_rebalance;
static PyObject *__pyx_n_s_Scheduler_rebalance_locals_genex;
static PyObject *__pyx_n_s_Scheduler_rebalance_locals_lambd;
static PyObject *__pyx_n_s_Scheduler_reevaluate_occupancy;
static PyObject *__pyx_n_s_Scheduler_register_worker_plugin;
static PyObject *__pyx_n_s_Scheduler_release_worker_data;
static PyObject *__pyx_n_s_Scheduler_remove_client;
static PyObject *__pyx_n_s_Scheduler_remove_client_locals_r;
static PyObject *__pyx_n_s_Scheduler_remove_plugin;
static PyObject *__pyx_n_s_Scheduler_remove_resources;
static PyObject *__pyx_n_s_Scheduler_remove_worker;
static PyObject *__pyx_n_s_Scheduler_remove_worker_locals_r;
static PyObject *__pyx_n_s_Scheduler_replicate;
static PyObject *__pyx_n_s_Scheduler_replicate_locals_genex;
static PyObject *__pyx_n_s_Scheduler_report;
static PyObject *__pyx_n_s_Scheduler_report_on_key;
static PyObject *__pyx_n_s_Scheduler_reschedule;
static PyObject *__pyx_n_s_Scheduler_restart;
static PyObject *__pyx_n_s_Scheduler_restart_locals_genexpr;
static PyObject *__pyx_n_s_Scheduler_retire_workers;
static PyObject *__pyx_n_s_Scheduler_run_function;
static PyObject *__pyx_n_s_Scheduler_scatter;
static PyObject *__pyx_n_s_Scheduler_send_all;
static PyObject *__pyx_n_s_Scheduler_send_task_to_worker;
static PyObject *__pyx_n_s_Scheduler_set_metadata;
static PyObject *__pyx_n_s_Scheduler_start;
static PyObject *__pyx_n_s_Scheduler_start_ipython;
static PyObject *__pyx_n_s_Scheduler_start_locals_del_sched;
static PyObject *__pyx_n_s_Scheduler_start_task_metadata;
static PyObject *__pyx_n_s_Scheduler_stimulus_cancel;
static PyObject *__pyx_n_s_Scheduler_stimulus_missing_data;
static PyObject *__pyx_n_s_Scheduler_stimulus_retry;
static PyObject *__pyx_n_s_Scheduler_stimulus_task_erred;
static PyObject *__pyx_n_s_Scheduler_stimulus_task_finished;
static PyObject *__pyx_n_s_Scheduler_stop_task_metadata;
static PyObject *__pyx_n_s_Scheduler_story;
static PyObject *__pyx_n_s_Scheduler_subscribe_worker_statu;
static PyObject *__pyx_n_s_Scheduler_transition;
static PyObject *__pyx_kp_u_Scheduler_transition_line_5989;
static PyObject *__pyx_n_s_Scheduler_transitions;
static PyObject *__pyx_n_s_Scheduler_update_data;
static PyObject *__pyx_n_s_Scheduler_update_graph;
static PyObject *__pyx_n_s_Scheduler_update_graph_hlg;
static PyObject *__pyx_n_s_Scheduler_update_graph_locals_ge;
static PyObject *__pyx_n_s_Scheduler_validate_erred;
static PyObject *__pyx_n_s_Scheduler_validate_key;
static PyObject *__pyx_n_s_Scheduler_validate_memory;
static PyObject *__pyx_n_s_Scheduler_validate_no_worker;
static PyObject *__pyx_n_s_Scheduler_validate_processing;
static PyObject *__pyx_n_s_Scheduler_validate_released;
static PyObject *__pyx_n_s_Scheduler_validate_state;
static PyObject *__pyx_n_s_Scheduler_validate_state_locals;
static PyObject *__pyx_n_s_Scheduler_validate_waiting;
static PyObject *__pyx_n_s_Scheduler_worker_send;
static PyObject *__pyx_n_s_Scheduler_workers_list;
static PyObject *__pyx_n_s_Scheduler_workers_to_close;
static PyObject *__pyx_kp_u_Scheduler_workers_to_close_line;
static PyObject *__pyx_n_s_Scheduler_workers_to_close_local;
static PyObject *__pyx_n_s_Security;
static PyObject *__pyx_n_s_SemaphoreExtension;
static PyObject *__pyx_kp_u_Send_kill_signal_to_nannies_s;
static PyObject *__pyx_kp_u_Send_lost_future_signal_to_clien;
static PyObject *__pyx_n_s_ServerNode;
static PyObject *__pyx_n_s_Set;
static PyObject *__pyx_kp_s_Similar_to__StateLegacyMapping;
static PyObject *__pyx_kp_s_Similar_to__StateLegacyMapping_2;
static PyObject *__pyx_n_s_SortedDict;
static PyObject *__pyx_kp_u_Starting_worker_compute_stream_s;
static PyObject *__pyx_n_s_StateLegacyMapping;
static PyObject *__pyx_n_s_StateLegacyMapping___getitem;
static PyObject *__pyx_n_s_StateLegacyMapping___init;
static PyObject *__pyx_n_s_StateLegacyMapping___iter;
static PyObject *__pyx_n_s_StateLegacyMapping___len;
static PyObject *__pyx_n_s_StateLegacyMapping___repr;
static PyObject *__pyx_n_s_StateLegacySet;
static PyObject *__pyx_n_s_StateLegacySet___contains;
static PyObject *__pyx_n_s_StateLegacySet___init;
static PyObject *__pyx_n_s_StateLegacySet___iter;
static PyObject *__pyx_n_s_StateLegacySet___iter___locals;
static PyObject *__pyx_n_s_StateLegacySet___len;
static PyObject *__pyx_n_s_StateLegacySet___repr;
static PyObject *__pyx_n_s_Status;
static PyObject *__pyx_kp_u_Stimulus_missing_data_s_s;
static PyObject *__pyx_kp_u_Stimulus_task_erred_s_s;
static PyObject *__pyx_kp_u_Stimulus_task_finished_s_s;
static PyObject *__pyx_n_s_StopIteration;
static PyObject *__pyx_kp_u_Suggest_closing_workers_s;
static PyObject *__pyx_n_u_Summary;
static PyObject *__pyx_n_s_T;
static PyObject *__pyx_n_s_Tabs;
static PyObject *__pyx_kp_u_Task;
static PyObject *__pyx_n_s_TaskGroup;
static PyObject *__pyx_n_s_TaskPrefix;
static PyObject *__pyx_n_s_TaskState;
static PyObject *__pyx_n_u_TaskState;
static PyObject *__pyx_n_s_TaskStreamPlugin;
static PyObject *__pyx_kp_u_Task_Stream;
static PyObject *__pyx_kp_u_Task_s_marked_as_failed_because;
static PyObject *__pyx_kp_u_This_Worker;
static PyObject *__pyx_n_s_TimeoutError;
static PyObject *__pyx_kp_u_Transition_a_key_from_its_curren;
static PyObject *__pyx_kp_u_Transition_a_key_from_its_curren_2;
static PyObject *__pyx_kp_u_Transitioned_r_s_s_actual_s_Cons;
static PyObject *__pyx_kp_u_Tried_to_call_feed_route_with_cu;
static PyObject *__pyx_kp_u_Tried_writing_to_closed_comm_s;
static PyObject *__pyx_n_s_TypeError;
static PyObject *__pyx_kp_u_Unexpected_worker_completed_task;
static PyObject *__pyx_kp_u_Update_data_s;
static PyObject *__pyx_kp_u_User_asked_for_computation_on_lo;
static PyObject *__pyx_n_s_ValueError;
static PyObject *__pyx_n_s_VariableExtension;
static PyObject *__pyx_n_s_WeakSet;
static PyObject *__pyx_n_s_WorkStealing;
static PyObject *__pyx_kp_u_Worker;
static PyObject *__pyx_n_s_WorkerState;
static PyObject *__pyx_kp_u_WorkerState_ncores_has_moved_to;
static PyObject *__pyx_n_s_WorkerStatusPlugin;
static PyObject *__pyx_n_s_WorkerStatusPlugin___init;
static PyObject *__pyx_n_s_WorkerStatusPlugin_add_worker;
static PyObject *__pyx_n_s_WorkerStatusPlugin_remove_worker;
static PyObject *__pyx_n_s_WorkerStatusPlugin_teardown;
static PyObject *__pyx_n_u_Worker_2;
static PyObject *__pyx_kp_u_Worker_Profile_administrative;
static PyObject *__pyx_kp_u_Worker_Profile_compute;
static PyObject *__pyx_kp_u_Worker_already_exists_s;
static PyObject *__pyx_kp_u_Worker_failed_to_heartbeat_withi;
static PyObject *__pyx_kp_u_Worker_holding_Actor_was_lost;
static PyObject *__pyx_kp_u_Worker_tried_to_connect_with_a_d;
static PyObject *__pyx_kp_u_Workers_don_t_have_promised_key;
static PyObject *__pyx_kp_u_Workers_not_the_same_in_all_coll;
static PyObject *__pyx_kp_u__14;
static PyObject *__pyx_kp_u__3;
static PyObject *__pyx_kp_u__4;
static PyObject *__pyx_kp_u__48;
static PyObject *__pyx_kp_u__5;
static PyObject *__pyx_n_s__50;
static PyObject *__pyx_kp_u__50;
static PyObject *__pyx_kp_u__51;
static PyObject *__pyx_kp_u__53;
static PyObject *__pyx_kp_u__6;
static PyObject *__pyx_kp_u__60;
static PyObject *__pyx_n_u__61;
static PyObject *__pyx_kp_u__7;
static PyObject *__pyx_kp_u__8;
static PyObject *__pyx_kp_u__84;
static PyObject *__pyx_kp_u__9;
static PyObject *__pyx_n_s_a;
static PyObject *__pyx_n_s_a_cmsgs;
static PyObject *__pyx_n_s_a_recs;
static PyObject *__pyx_n_s_a_wmsgs;
static PyObject *__pyx_n_s_abort;
static PyObject *__pyx_n_s_abspath;
static PyObject *__pyx_n_s_accessor;
static PyObject *__pyx_n_s_accessor_2;
static PyObject *__pyx_n_u_action;
static PyObject *__pyx_n_s_active;
static PyObject *__pyx_n_s_actor;
static PyObject *__pyx_n_u_actor;
static PyObject *__pyx_n_u_actor_2;
static PyObject *__pyx_n_s_actors;
static PyObject *__pyx_n_u_actors_2;
static PyObject *__pyx_n_s_actual_total_occupancy;
static PyObject *__pyx_n_s_adaptive_target;
static PyObject *__pyx_n_u_adaptive_target;
static PyObject *__pyx_n_s_add;
static PyObject *__pyx_n_u_add;
static PyObject *__pyx_n_s_add_callback;
static PyObject *__pyx_n_s_add_client;
static PyObject *__pyx_kp_u_add_client_2;
static PyObject *__pyx_kp_u_add_keys;
static PyObject *__pyx_n_s_add_keys_2;
static PyObject *__pyx_n_u_add_keys_2;
static PyObject *__pyx_n_s_add_plugin;
static PyObject *__pyx_n_s_add_resources;
static PyObject *__pyx_n_s_add_timeout;
static PyObject *__pyx_n_s_add_worker;
static PyObject *__pyx_kp_u_add_worker_2;
static PyObject *__pyx_n_s_addr;
static PyObject *__pyx_n_s_address;
static PyObject *__pyx_n_u_address;
static PyObject *__pyx_n_u_address_2;
static PyObject *__pyx_n_s_addresses;
static PyObject *__pyx_n_u_addresses;
static PyObject *__pyx_n_s_addresses_from_user_args;
static PyObject *__pyx_kp_u_addresses_should_be_strings_or_t;
static PyObject *__pyx_n_s_aenter;
static PyObject *__pyx_n_s_aexit;
static PyObject *__pyx_n_s_aliases;
static PyObject *__pyx_n_s_all;
static PyObject *__pyx_n_u_all;
static PyObject *__pyx_n_s_all_forgotten;
static PyObject *__pyx_n_s_allow_offload;
static PyObject *__pyx_n_u_allow_other_workers;
static PyObject *__pyx_n_s_allow_overlap;
static PyObject *__pyx_n_s_allowed_failures;
static PyObject *__pyx_n_s_alpha;
static PyObject *__pyx_n_s_already_in_memory;
static PyObject *__pyx_kp_u_already_removed;
static PyObject *__pyx_n_s_annotations;
static PyObject *__pyx_n_u_annotations_2;
static PyObject *__pyx_n_s_any;
static PyObject *__pyx_n_s_append;
static PyObject *__pyx_n_s_args;
static PyObject *__pyx_n_s_asyncio;
static PyObject *__pyx_n_s_asyncio_coroutines;
static PyObject *__pyx_n_s_asyncio_tasks;
static PyObject *__pyx_n_s_attrgetter;
static PyObject *__pyx_n_s_attribute;
static PyObject *__pyx_n_s_avg;
static PyObject *__pyx_n_s_avg_duration;
static PyObject *__pyx_n_s_await;
static PyObject *__pyx_n_s_b;
static PyObject *__pyx_n_s_b_cmsgs;
static PyObject *__pyx_n_s_b_recs;
static PyObject *__pyx_n_s_b_wmsgs;
static PyObject *__pyx_n_u_bandwidth;
static PyObject *__pyx_n_u_bandwidth_2;
static PyObject *__pyx_n_s_bandwidth_types;
static PyObject *__pyx_n_s_bandwidth_workers;
static PyObject *__pyx_n_s_batched;
static PyObject *__pyx_n_s_bcomm;
static PyObject *__pyx_n_s_bint;
static PyObject *__pyx_n_s_bokeh_core_templates;
static PyObject *__pyx_n_s_bokeh_models;
static PyObject *__pyx_n_s_bokeh_plotting;
static PyObject *__pyx_n_s_branching_factor;
static PyObject *__pyx_kp_u_branching_factor_2;
static PyObject *__pyx_n_s_broadcast;
static PyObject *__pyx_n_u_broadcast;
static PyObject *__pyx_kp_u_but_found;
static PyObject *__pyx_n_s_bw;
static PyObject *__pyx_n_s_bytes;
static PyObject *__pyx_n_s_c;
static PyObject *__pyx_n_s_c_double;
static PyObject *__pyx_n_s_c_ssize_t;
static PyObject *__pyx_n_s_call_later;
static PyObject *__pyx_n_s_call_stack;
static PyObject *__pyx_n_u_call_stack;
static PyObject *__pyx_n_s_cancel;
static PyObject *__pyx_n_u_cancel;
static PyObject *__pyx_n_s_cancel_key;
static PyObject *__pyx_kp_u_cancelled_key;
static PyObject *__pyx_n_s_cast;
static PyObject *__pyx_n_s_cause;
static PyObject *__pyx_n_s_ccall;
static PyObject *__pyx_n_s_cclass;
static PyObject *__pyx_n_s_ceil;
static PyObject *__pyx_n_s_cfunc;
static PyObject *__pyx_n_s_check_idle;
static PyObject *__pyx_n_s_check_idle_saturated;
static PyObject *__pyx_n_s_check_worker_ttl;
static PyObject *__pyx_n_s_child;
static PyObject *__pyx_n_s_child_deps;
static PyObject *__pyx_n_s_class;
static PyObject *__pyx_n_s_clean_exception;
static PyObject *__pyx_n_s_cleanup_delay;
static PyObject *__pyx_n_s_clear;
static PyObject *__pyx_n_s_clear_task_state;
static PyObject *__pyx_n_s_client;
static PyObject *__pyx_n_u_client;
static PyObject *__pyx_n_s_client_comms;
static PyObject *__pyx_kp_u_client_desires_keys;
static PyObject *__pyx_n_s_client_desires_keys_2;
static PyObject *__pyx_n_s_client_handlers;
static PyObject *__pyx_n_s_client_heartbeat;
static PyObject *__pyx_n_u_client_key;
static PyObject *__pyx_n_s_client_keys;
static PyObject *__pyx_n_s_client_msgs;
static PyObject *__pyx_n_s_client_name;
static PyObject *__pyx_kp_u_client_releases_keys;
static PyObject *__pyx_n_s_client_releases_keys_2;
static PyObject *__pyx_n_s_client_send;
static PyObject *__pyx_n_s_clients;
static PyObject *__pyx_n_u_clients;
static PyObject *__pyx_n_s_cline_in_traceback;
static PyObject *__pyx_n_s_close;
static PyObject *__pyx_n_u_close;
static PyObject *__pyx_kp_u_close_client;
static PyObject *__pyx_n_u_close_gracefully;
static PyObject *__pyx_n_s_close_rpc;
static PyObject *__pyx_kp_u_close_stream;
static PyObject *__pyx_n_s_close_worker;
static PyObject *__pyx_kp_u_close_worker_2;
static PyObject *__pyx_n_s_close_workers;
static PyObject *__pyx_n_s_closed;
static PyObject *__pyx_n_s_closing;
static PyObject *__pyx_n_s_closing_gracefully;
static PyObject *__pyx_n_s_cls;
static PyObject *__pyx_n_s_code;
static PyObject *__pyx_n_s_coerce_address;
static PyObject *__pyx_n_s_coerce_hostname;
static PyObject *__pyx_n_s_collect;
static PyObject *__pyx_n_s_collection;
static PyObject *__pyx_n_s_collections;
static PyObject *__pyx_n_s_collections_abc;
static PyObject *__pyx_n_s_comm;
static PyObject *__pyx_n_s_comm_addressing;
static PyObject *__pyx_n_s_compose;
static PyObject *__pyx_n_u_compression;
static PyObject *__pyx_n_s_compute;
static PyObject *__pyx_n_u_compute;
static PyObject *__pyx_n_s_compute_duration;
static PyObject *__pyx_kp_u_compute_task;
static PyObject *__pyx_n_s_concat;
static PyObject *__pyx_n_s_config;
static PyObject *__pyx_n_s_connect;
static PyObject *__pyx_n_s_connection_args;
static PyObject *__pyx_n_s_connection_limit;
static PyObject *__pyx_n_s_consume_resources;
static PyObject *__pyx_n_s_contact_address;
static PyObject *__pyx_n_s_contains;
static PyObject *__pyx_n_s_contextlib;
static PyObject *__pyx_n_s_core;
static PyObject *__pyx_kp_u_cores;
static PyObject *__pyx_n_s_count;
static PyObject *__pyx_n_u_count;
static PyObject *__pyx_n_s_counts;
static PyObject *__pyx_n_u_counts;
static PyObject *__pyx_n_s_cpu;
static PyObject *__pyx_n_s_cpu_percent;
static PyObject *__pyx_n_s_critical;
static PyObject *__pyx_n_s_cs;
static PyObject *__pyx_n_s_cts;
static PyObject *__pyx_n_s_ctypes;
static PyObject *__pyx_n_s_current;
static PyObject *__pyx_n_s_d;
static PyObject *__pyx_n_u_d;
static PyObject *__pyx_n_s_dashboard;
static PyObject *__pyx_n_u_dashboard;
static PyObject *__pyx_n_s_dashboard_address;
static PyObject *__pyx_n_s_dashboard_components_scheduler;
static PyObject *__pyx_n_s_dask;
static PyObject *__pyx_kp_u_dask_scheduler;
static PyObject *__pyx_kp_u_dask_scheduler_closed;
static PyObject *__pyx_kp_u_dask_scheduler_closing;
static PyObject *__pyx_kp_u_dask_scheduler_not_started;
static PyObject *__pyx_n_s_dask_version;
static PyObject *__pyx_n_s_data;
static PyObject *__pyx_n_u_data;
static PyObject *__pyx_n_s_datasets;
static PyObject *__pyx_n_s_datetime;
static PyObject *__pyx_n_s_debug;
static PyObject *__pyx_n_s_decide_worker;
static PyObject *__pyx_n_s_declare;
static PyObject *__pyx_n_s_default;
static PyObject *__pyx_n_s_default_port;
static PyObject *__pyx_n_s_defaultdict;
static PyObject *__pyx_n_s_del_candidates;
static PyObject *__pyx_n_s_del_scheduler_file;
static PyObject *__pyx_n_s_del_worker_tasks;
static PyObject *__pyx_n_s_delay;
static PyObject *__pyx_n_s_delete;
static PyObject *__pyx_kp_u_delete_data;
static PyObject *__pyx_n_s_delete_data_2;
static PyObject *__pyx_n_s_delete_interval;
static PyObject *__pyx_n_s_delete_worker_data;
static PyObject *__pyx_n_s_dep;
static PyObject *__pyx_kp_u_dep_missing;
static PyObject *__pyx_n_s_dependencies;
static PyObject *__pyx_n_u_dependencies;
static PyObject *__pyx_n_u_dependencies_2;
static PyObject *__pyx_n_s_dependents;
static PyObject *__pyx_n_u_dependents;
static PyObject *__pyx_n_u_dependents_2;
static PyObject *__pyx_n_s_deps;
static PyObject *__pyx_n_s_deque;
static PyObject *__pyx_n_s_deserialize;
static PyObject *__pyx_n_s_diagnostics_plugin;
static PyObject *__pyx_n_s_diagnostics_task_stream;
static PyObject *__pyx_n_s_dict;
static PyObject *__pyx_n_u_dict_2;
static PyObject *__pyx_n_s_digests;
static PyObject *__pyx_n_s_dirname;
static PyObject *__pyx_n_s_disable_gc_diagnosis;
static PyObject *__pyx_n_s_discard;
static PyObject *__pyx_n_s_distributed;
static PyObject *__pyx_kp_u_distributed_adaptive_target_dura;
static PyObject *__pyx_kp_u_distributed_admin_pdb_on_err;
static PyObject *__pyx_n_s_distributed_dashboard_components;
static PyObject *__pyx_n_s_distributed_dashboard_scheduler;
static PyObject *__pyx_n_s_distributed_diagnostics_task_str;
static PyObject *__pyx_kp_u_distributed_http_scheduler_missi;
static PyObject *__pyx_n_s_distributed_scheduler;
static PyObject *__pyx_kp_u_distributed_scheduler_allowed_fa;
static PyObject *__pyx_kp_u_distributed_scheduler_bandwidth;
static PyObject *__pyx_kp_u_distributed_scheduler_default_da;
static PyObject *__pyx_kp_u_distributed_scheduler_default_ta;
static PyObject *__pyx_kp_u_distributed_scheduler_events_cle;
static PyObject *__pyx_kp_u_distributed_scheduler_http_route;
static PyObject *__pyx_kp_u_distributed_scheduler_idle_timeo;
static PyObject *__pyx_kp_u_distributed_scheduler_pickle;
static PyObject *__pyx_kp_u_distributed_scheduler_preload;
static PyObject *__pyx_kp_u_distributed_scheduler_preload_ar;
static PyObject *__pyx_kp_s_distributed_scheduler_py;
static PyObject *__pyx_kp_u_distributed_scheduler_transition;
static PyObject *__pyx_kp_u_distributed_scheduler_unknown_ta;
static PyObject *__pyx_kp_u_distributed_scheduler_validate;
static PyObject *__pyx_kp_u_distributed_scheduler_work_steal;
static PyObject *__pyx_kp_u_distributed_scheduler_worker_ttl;
static PyObject *__pyx_n_s_distributed_version;
static PyObject *__pyx_kp_u_distributed_worker_profile_cycle;
static PyObject *__pyx_n_s_doc;
static PyObject *__pyx_n_s_done;
static PyObject *__pyx_n_s_double;
static PyObject *__pyx_n_s_dsk;
static PyObject *__pyx_n_s_dsk_keys;
static PyObject *__pyx_n_s_dt;
static PyObject *__pyx_n_s_dts;
static PyObject *__pyx_n_s_dump;
static PyObject *__pyx_n_s_dumps;
static PyObject *__pyx_n_s_duration;
static PyObject *__pyx_n_u_duration;
static PyObject *__pyx_n_s_e;
static PyObject *__pyx_n_s_empty_context;
static PyObject *__pyx_n_s_enable_gc_diagnosis;
static PyObject *__pyx_n_s_end;
static PyObject *__pyx_n_s_ensure;
static PyObject *__pyx_n_s_enter;
static PyObject *__pyx_n_s_errant_worker;
static PyObject *__pyx_n_u_erred;
static PyObject *__pyx_n_s_erred_deps;
static PyObject *__pyx_n_s_error;
static PyObject *__pyx_n_u_error;
static PyObject *__pyx_n_s_error_message;
static PyObject *__pyx_n_s_event;
static PyObject *__pyx_n_s_event_counts;
static PyObject *__pyx_n_s_events;
static PyObject *__pyx_n_u_events;
static PyObject *__pyx_n_s_exc_info;
static PyObject *__pyx_n_s_exception;
static PyObject *__pyx_n_u_exception;
static PyObject *__pyx_n_u_exception_2;
static PyObject *__pyx_n_s_exception_blame;
static PyObject *__pyx_n_u_exception_blame;
static PyObject *__pyx_n_u_exception_blame_2;
static PyObject *__pyx_n_u_exceptions;
static PyObject *__pyx_n_u_exceptions_blame;
static PyObject *__pyx_n_s_exceptval;
static PyObject *__pyx_n_s_exceptval_locals_wrapper;
static PyObject *__pyx_n_s_executing;
static PyObject *__pyx_n_u_executing_2;
static PyObject *__pyx_n_s_executor_wait;
static PyObject *__pyx_n_s_exists;
static PyObject *__pyx_n_s_exit;
static PyObject *__pyx_kp_u_expected_Status_or_str_got;
static PyObject *__pyx_n_s_ext;
static PyObject *__pyx_n_s_extend;
static PyObject *__pyx_n_s_extension;
static PyObject *__pyx_n_s_extensions;
static PyObject *__pyx_n_u_extensions;
static PyObject *__pyx_n_s_extensions_2;
static PyObject *__pyx_n_s_extra;
static PyObject *__pyx_n_u_extra_2;
static PyObject *__pyx_n_s_f;
static PyObject *__pyx_n_s_fast;
static PyObject *__pyx_n_s_feed;
static PyObject *__pyx_n_u_feed;
static PyObject *__pyx_n_s_fifo_timeout;
static PyObject *__pyx_n_s_fig;
static PyObject *__pyx_n_s_figure;
static PyObject *__pyx_n_s_file;
static PyObject *__pyx_n_s_filename;
static PyObject *__pyx_n_s_final;
static PyObject *__pyx_n_s_finalize;
static PyObject *__pyx_n_s_finish;
static PyObject *__pyx_n_s_finish2;
static PyObject *__pyx_n_s_finished;
static PyObject *__pyx_kp_u_fire_and_forget;
static PyObject *__pyx_n_s_first;
static PyObject *__pyx_n_s_fn;
static PyObject *__pyx_n_s_force;
static PyObject *__pyx_n_u_force;
static PyObject *__pyx_n_u_forgotten;
static PyObject *__pyx_n_s_format;
static PyObject *__pyx_n_s_format_bytes;
static PyObject *__pyx_n_s_format_time;
static PyObject *__pyx_n_s_frac;
static PyObject *__pyx_n_s_func;
static PyObject *__pyx_n_s_function;
static PyObject *__pyx_n_u_function;
static PyObject *__pyx_n_s_functools;
static PyObject *__pyx_n_s_future;
static PyObject *__pyx_n_s_futures;
static PyObject *__pyx_n_s_g;
static PyObject *__pyx_n_s_gather;
static PyObject *__pyx_n_u_gather;
static PyObject *__pyx_n_s_gather_from_workers;
static PyObject *__pyx_n_s_gathers;
static PyObject *__pyx_n_s_generation;
static PyObject *__pyx_n_s_genexpr;
static PyObject *__pyx_n_s_get;
static PyObject *__pyx_n_s_getLogger;
static PyObject *__pyx_n_s_get_address_host;
static PyObject *__pyx_n_s_get_call_stack;
static PyObject *__pyx_n_s_get_comm_cost;
static PyObject *__pyx_n_s_get_connection_args;
static PyObject *__pyx_n_s_get_connection_info;
static PyObject *__pyx_n_s_get_env;
static PyObject *__pyx_n_s_get_events;
static PyObject *__pyx_n_s_get_fileno_limit;
static PyObject *__pyx_n_s_get_handlers;
static PyObject *__pyx_n_s_get_has_what;
static PyObject *__pyx_n_s_get_listen_args;
static PyObject *__pyx_n_s_get_logs;
static PyObject *__pyx_n_u_get_logs;
static PyObject *__pyx_n_s_get_metadata;
static PyObject *__pyx_n_u_get_metadata;
static PyObject *__pyx_n_s_get_nbytes;
static PyObject *__pyx_n_s_get_ncores;
static PyObject *__pyx_n_s_get_processing;
static PyObject *__pyx_n_s_get_profile;
static PyObject *__pyx_n_s_get_profile_metadata;
static PyObject *__pyx_n_s_get_task_duration;
static PyObject *__pyx_n_s_get_task_status;
static PyObject *__pyx_n_u_get_task_status;
static PyObject *__pyx_n_s_get_task_stream;
static PyObject *__pyx_n_u_get_task_stream;
static PyObject *__pyx_n_s_get_template;
static PyObject *__pyx_n_s_get_versions;
static PyObject *__pyx_n_s_get_who_has;
static PyObject *__pyx_n_s_get_worker_logs;
static PyObject *__pyx_n_s_get_worker_service_addr;
static PyObject *__pyx_n_s_getitem;
static PyObject *__pyx_n_s_getstate;
static PyObject *__pyx_n_s_group;
static PyObject *__pyx_n_u_group_2;
static PyObject *__pyx_n_s_group_bytes;
static PyObject *__pyx_n_u_group_key;
static PyObject *__pyx_n_s_group_key_2;
static PyObject *__pyx_n_s_groupby;
static PyObject *__pyx_n_s_groups;
static PyObject *__pyx_n_s_groups1;
static PyObject *__pyx_n_s_groups2;
static PyObject *__pyx_kp_u_h1_Dask_Performance_Report_h1_i;
static PyObject *__pyx_n_s_handle_long_running;
static PyObject *__pyx_n_s_handle_missing_data;
static PyObject *__pyx_kp_u_handle_missing_data_key_s_worker;
static PyObject *__pyx_n_s_handle_release_data;
static PyObject *__pyx_n_s_handle_stream;
static PyObject *__pyx_n_s_handle_task_erred;
static PyObject *__pyx_n_s_handle_task_finished;
static PyObject *__pyx_n_s_handle_uncaught_error;
static PyObject *__pyx_n_s_handle_worker;
static PyObject *__pyx_n_s_handlers;
static PyObject *__pyx_n_s_handshake_overrides;
static PyObject *__pyx_n_u_handshake_overrides;
static PyObject *__pyx_n_u_has_lost_dependencies;
static PyObject *__pyx_n_s_has_what;
static PyObject *__pyx_n_u_has_what;
static PyObject *__pyx_n_u_has_what_2;
static PyObject *__pyx_n_u_hash;
static PyObject *__pyx_n_u_heartbeat;
static PyObject *__pyx_kp_u_heartbeat_client;
static PyObject *__pyx_kp_u_heartbeat_interval;
static PyObject *__pyx_n_s_heartbeat_interval_2;
static PyObject *__pyx_n_s_heartbeat_worker;
static PyObject *__pyx_n_u_heartbeat_worker;
static PyObject *__pyx_n_s_highlevelgraph_unpack;
static PyObject *__pyx_n_s_hlg;
static PyObject *__pyx_n_s_host;
static PyObject *__pyx_n_u_host;
static PyObject *__pyx_n_s_host_info;
static PyObject *__pyx_n_u_host_info;
static PyObject *__pyx_n_u_host_restrictions;
static PyObject *__pyx_n_u_host_restrictions_2;
static PyObject *__pyx_n_s_hosts;
static PyObject *__pyx_kp_u_html;
static PyObject *__pyx_n_s_html_2;
static PyObject *__pyx_n_s_http;
static PyObject *__pyx_n_s_http_application;
static PyObject *__pyx_n_s_http_prefix;
static PyObject *__pyx_n_s_http_server;
static PyObject *__pyx_n_s_http_server_modules;
static PyObject *__pyx_n_s_i;
static PyObject *__pyx_n_s_id;
static PyObject *__pyx_n_u_id;
static PyObject *__pyx_n_s_idempotent;
static PyObject *__pyx_n_s_ident;
static PyObject *__pyx_n_s_identity;
static PyObject *__pyx_n_s_idle;
static PyObject *__pyx_n_u_idle;
static PyObject *__pyx_n_s_idle_since;
static PyObject *__pyx_n_s_idle_timeout;
static PyObject *__pyx_kp_u_idle_timeout_2;
static PyObject *__pyx_n_s_import;
static PyObject *__pyx_n_s_indent;
static PyObject *__pyx_n_s_info;
static PyObject *__pyx_n_s_init;
static PyObject *__pyx_n_s_inline;
static PyObject *__pyx_kp_u_inproc;
static PyObject *__pyx_n_s_inspect;
static PyObject *__pyx_n_s_instances;
static PyObject *__pyx_n_s_interface;
static PyObject *__pyx_n_s_intersection;
static PyObject *__pyx_n_s_interval;
static PyObject *__pyx_n_s_io_loop;
static PyObject *__pyx_n_s_ip;
static PyObject *__pyx_n_s_ipython_kernel;
static PyObject *__pyx_n_s_ipython_utils;
static PyObject *__pyx_n_s_is_idle;
static PyObject *__pyx_n_s_isawaitable;
static PyObject *__pyx_n_s_issubset;
static PyObject *__pyx_n_s_items;
static PyObject *__pyx_n_s_iter;
static PyObject *__pyx_n_s_itertools;
static PyObject *__pyx_n_s_join;
static PyObject *__pyx_n_s_json;
static PyObject *__pyx_n_s_k;
static PyObject *__pyx_kp_u_keep_alive;
static PyObject *__pyx_n_s_key;
static PyObject *__pyx_n_u_key;
static PyObject *__pyx_n_s_key_2;
static PyObject *__pyx_n_u_key_2;
static PyObject *__pyx_kp_u_key_count;
static PyObject *__pyx_kp_u_key_in_memory;
static PyObject *__pyx_n_s_key_split;
static PyObject *__pyx_n_s_key_split_group;
static PyObject *__pyx_n_s_keys;
static PyObject *__pyx_n_u_keys;
static PyObject *__pyx_n_s_kv;
static PyObject *__pyx_n_s_kwargs;
static PyObject *__pyx_n_s_last;
static PyObject *__pyx_n_s_last_client;
static PyObject *__pyx_n_u_last_seen;
static PyObject *__pyx_kp_u_last_seen_2;
static PyObject *__pyx_n_u_last_seen_3;
static PyObject *__pyx_n_s_last_time;
static PyObject *__pyx_n_s_last_worker;
static PyObject *__pyx_n_s_legacy_client_key_set;
static PyObject *__pyx_n_s_legacy_task_key_dict;
static PyObject *__pyx_n_s_legacy_task_key_set;
static PyObject *__pyx_n_s_legacy_worker_key_set;
static PyObject *__pyx_n_s_len;
static PyObject *__pyx_n_s_len_2;
static PyObject *__pyx_kp_u_li;
static PyObject *__pyx_kp_u_li_2;
static PyObject *__pyx_n_s_limit;
static PyObject *__pyx_n_s_limit_bytes;
static PyObject *__pyx_n_s_listen;
static PyObject *__pyx_n_s_listen_address;
static PyObject *__pyx_n_s_listen_ip;
static PyObject *__pyx_n_s_listener;
static PyObject *__pyx_n_s_listeners;
static PyObject *__pyx_n_s_loader;
static PyObject *__pyx_n_s_loads;
static PyObject *__pyx_n_s_local_directory;
static PyObject *__pyx_n_u_local_directory;
static PyObject *__pyx_n_u_local_directory_2;
static PyObject *__pyx_n_s_local_now;
static PyObject *__pyx_n_u_localhost;
static PyObject *__pyx_n_s_lock;
static PyObject *__pyx_n_s_lock_2;
static PyObject *__pyx_n_s_log;
static PyObject *__pyx_n_s_log_errors;
static PyObject *__pyx_kp_u_log_event;
static PyObject *__pyx_n_s_log_event_2;
static PyObject *__pyx_n_u_log_event_2;
static PyObject *__pyx_n_s_log_worker_event;
static PyObject *__pyx_n_s_logger;
static PyObject *__pyx_n_s_logging;
static PyObject *__pyx_n_u_logs;
static PyObject *__pyx_kp_u_long_running;
static PyObject *__pyx_n_s_loop;
static PyObject *__pyx_n_s_loose_restrictions;
static PyObject *__pyx_n_u_loose_restrictions;
static PyObject *__pyx_n_u_loose_restrictions_2;
static PyObject *__pyx_kp_u_lost_data;
static PyObject *__pyx_n_s_main;
static PyObject *__pyx_n_s_map;
static PyObject *__pyx_n_s_math;
static PyObject *__pyx_n_s_maxlen;
static PyObject *__pyx_kp_u_memory;
static PyObject *__pyx_n_s_memory_2;
static PyObject *__pyx_n_u_memory_2;
static PyObject *__pyx_n_s_memory_limit;
static PyObject *__pyx_n_u_memory_limit;
static PyObject *__pyx_n_u_memory_limit_2;
static PyObject *__pyx_n_s_memory_ratio;
static PyObject *__pyx_n_s_merge;
static PyObject *__pyx_n_s_merge_sorted;
static PyObject *__pyx_n_s_merge_with;
static PyObject *__pyx_n_s_merge_workers;
static PyObject *__pyx_n_u_message;
static PyObject *__pyx_n_s_metaclass;
static PyObject *__pyx_n_s_metadata;
static PyObject *__pyx_n_u_metadata;
static PyObject *__pyx_n_u_metadata_2;
static PyObject *__pyx_n_s_metrics;
static PyObject *__pyx_n_u_metrics;
static PyObject *__pyx_n_u_metrics_2;
static PyObject *__pyx_n_s_min;
static PyObject *__pyx_n_s_minimum;
static PyObject *__pyx_n_u_missing;
static PyObject *__pyx_n_s_missing_bokeh;
static PyObject *__pyx_kp_u_missing_data;
static PyObject *__pyx_n_s_missing_data_2;
static PyObject *__pyx_n_s_missing_keys;
static PyObject *__pyx_n_s_missing_states;
static PyObject *__pyx_n_s_missing_workers;
static PyObject *__pyx_n_s_module;
static PyObject *__pyx_n_s_modules;
static PyObject *__pyx_n_u_moved_keys;
static PyObject *__pyx_kp_u_moved_keys_2;
static PyObject *__pyx_n_u_ms;
static PyObject *__pyx_n_s_msg;
static PyObject *__pyx_n_s_msg_key;
static PyObject *__pyx_n_s_msgs;
static PyObject *__pyx_n_s_n;
static PyObject *__pyx_n_u_n;
static PyObject *__pyx_n_s_n_missing;
static PyObject *__pyx_n_s_n_remain;
static PyObject *__pyx_n_u_n_tasks;
static PyObject *__pyx_n_s_n_workers;
static PyObject *__pyx_n_s_name;
static PyObject *__pyx_n_u_name;
static PyObject *__pyx_kp_u_name_2;
static PyObject *__pyx_n_s_name_3;
static PyObject *__pyx_n_u_name_4;
static PyObject *__pyx_kp_u_name_taken_s;
static PyObject *__pyx_n_s_names;
static PyObject *__pyx_n_s_nannies;
static PyObject *__pyx_n_s_nanny;
static PyObject *__pyx_n_u_nanny;
static PyObject *__pyx_n_u_nanny_2;
static PyObject *__pyx_n_s_nanny_addr;
static PyObject *__pyx_n_s_nanny_address;
static PyObject *__pyx_n_s_nb;
static PyObject *__pyx_n_s_nbytes;
static PyObject *__pyx_n_u_nbytes;
static PyObject *__pyx_n_u_nbytes_2;
static PyObject *__pyx_n_u_ncores;
static PyObject *__pyx_n_s_new;
static PyObject *__pyx_n_s_new_2;
static PyObject *__pyx_n_s_new_attr;
static PyObject *__pyx_n_s_new_cmsgs;
static PyObject *__pyx_n_s_new_duration;
static PyObject *__pyx_n_s_new_msgs;
static PyObject *__pyx_n_s_new_recs;
static PyObject *__pyx_n_s_new_task;
static PyObject *__pyx_n_s_new_wmsgs;
static PyObject *__pyx_n_s_next_time;
static PyObject *__pyx_n_s_no_default;
static PyObject *__pyx_kp_u_no_group;
static PyObject *__pyx_kp_u_no_worker;
static PyObject *__pyx_n_s_node;
static PyObject *__pyx_n_s_nogil;
static PyObject *__pyx_n_s_normalize_address;
static PyObject *__pyx_kp_u_not_found;
static PyObject *__pyx_kp_u_not_in_dependency_s_dependents;
static PyObject *__pyx_kp_u_not_in_dependent_s_dependencies;
static PyObject *__pyx_kp_u_not_in_has_what_who_has;
static PyObject *__pyx_kp_u_not_in_wants_what_who_wants;
static PyObject *__pyx_kp_u_not_in_who_has_has_what;
static PyObject *__pyx_kp_u_not_in_who_wants_wants_what;
static PyObject *__pyx_n_s_now;
static PyObject *__pyx_n_s_ns;
static PyObject *__pyx_n_s_ntasks;
static PyObject *__pyx_n_s_nthreads;
static PyObject *__pyx_n_u_nthreads;
static PyObject *__pyx_n_u_nthreads_2;
static PyObject *__pyx_n_s_numbers;
static PyObject *__pyx_n_s_nworkers;
static PyObject *__pyx_n_s_occ;
static PyObject *__pyx_n_u_occupancy;
static PyObject *__pyx_n_u_occupancy_2;
static PyObject *__pyx_n_s_old_attr;
static PyObject *__pyx_n_s_old_duration;
static PyObject *__pyx_n_s_op;
static PyObject *__pyx_n_u_op;
static PyObject *__pyx_n_s_open;
static PyObject *__pyx_n_s_operator;
static PyObject *__pyx_n_s_order;
static PyObject *__pyx_n_s_os;
static PyObject *__pyx_n_s_other;
static PyObject *__pyx_n_s_other_workers;
static PyObject *__pyx_n_s_out;
static PyObject *__pyx_n_s_output_file;
static PyObject *__pyx_n_s_p;
static PyObject *__pyx_n_s_parent;
static PyObject *__pyx_n_s_parse_bytes;
static PyObject *__pyx_n_s_parse_timedelta;
static PyObject *__pyx_n_s_partial;
static PyObject *__pyx_n_s_path;
static PyObject *__pyx_n_s_pc;
static PyObject *__pyx_n_s_pdb;
static PyObject *__pyx_n_s_performance_report;
static PyObject *__pyx_n_u_performance_report;
static PyObject *__pyx_kp_u_performance_report_html;
static PyObject *__pyx_n_s_periodic_callbacks;
static PyObject *__pyx_n_s_pickle;
static PyObject *__pyx_n_s_pickle5;
static PyObject *__pyx_kp_u_pickle_protocol;
static PyObject *__pyx_n_s_pid;
static PyObject *__pyx_n_u_pid_2;
static PyObject *__pyx_n_s_plot_data;
static PyObject *__pyx_n_s_plot_figure;
static PyObject *__pyx_n_s_pluck;
static PyObject *__pyx_n_s_plugin;
static PyObject *__pyx_n_u_plugin;
static PyObject *__pyx_kp_u_plugin_add;
static PyObject *__pyx_n_s_plugins;
static PyObject *__pyx_n_s_pop;
static PyObject *__pyx_n_s_popitem;
static PyObject *__pyx_n_s_port;
static PyObject *__pyx_n_u_port;
static PyObject *__pyx_n_s_prefix;
static PyObject *__pyx_n_u_prefix_2;
static PyObject *__pyx_n_s_prefix_key;
static PyObject *__pyx_n_s_preload;
static PyObject *__pyx_n_s_preload_argv;
static PyObject *__pyx_n_s_preloading;
static PyObject *__pyx_n_s_preloads;
static PyObject *__pyx_n_s_prepare;
static PyObject *__pyx_n_s_priority;
static PyObject *__pyx_n_u_priority;
static PyObject *__pyx_n_u_priority_2;
static PyObject *__pyx_n_s_proc;
static PyObject *__pyx_n_s_process_preloads;
static PyObject *__pyx_kp_u_processes;
static PyObject *__pyx_kp_u_processing;
static PyObject *__pyx_n_s_processing_2;
static PyObject *__pyx_n_u_processing_2;
static PyObject *__pyx_n_u_processing_3;
static PyObject *__pyx_n_u_processing_on;
static PyObject *__pyx_n_u_processing_on_2;
static PyObject *__pyx_kp_u_processing_tasks;
static PyObject *__pyx_n_s_proctitle;
static PyObject *__pyx_n_s_profile;
static PyObject *__pyx_n_u_profile;
static PyObject *__pyx_n_s_profile_cycle_interval;
static PyObject *__pyx_n_s_profile_metadata;
static PyObject *__pyx_n_s_profile_to_figure;
static PyObject *__pyx_n_s_protocol;
static PyObject *__pyx_n_u_protocol;
static PyObject *__pyx_n_s_protocol_highlevelgraph;
static PyObject *__pyx_kp_u_protocol_s_host_s_port_d;
static PyObject *__pyx_n_s_proxy;
static PyObject *__pyx_n_u_proxy;
static PyObject *__pyx_n_s_psutil;
static PyObject *__pyx_n_s_publish;
static PyObject *__pyx_n_s_pubsub;
static PyObject *__pyx_n_s_put_key_in_stealable;
static PyObject *__pyx_n_s_pyx_PickleError;
static PyObject *__pyx_n_s_pyx_checksum;
static PyObject *__pyx_n_s_pyx_result;
static PyObject *__pyx_n_s_pyx_state;
static PyObject *__pyx_n_s_pyx_type;
static PyObject *__pyx_n_s_pyx_unpickle_ClientState;
static PyObject *__pyx_n_s_pyx_unpickle_SchedulerState;
static PyObject *__pyx_n_s_pyx_unpickle_TaskGroup;
static PyObject *__pyx_n_s_pyx_unpickle_TaskPrefix;
static PyObject *__pyx_n_s_pyx_unpickle_TaskState;
static PyObject *__pyx_n_s_pyx_unpickle_WorkerState;
static PyObject *__pyx_n_s_pyx_vtable;
static PyObject *__pyx_n_s_qualname;
static PyObject *__pyx_n_s_quantity;
static PyObject *__pyx_n_s_queues;
static PyObject *__pyx_n_s_r;
static PyObject *__pyx_n_s_random;
static PyObject *__pyx_n_s_range;
static PyObject *__pyx_n_s_read;
static PyObject *__pyx_n_s_rebalance;
static PyObject *__pyx_n_u_rebalance;
static PyObject *__pyx_n_s_recipient;
static PyObject *__pyx_n_s_recipients;
static PyObject *__pyx_n_u_recipients;
static PyObject *__pyx_n_s_recommendations;
static PyObject *__pyx_n_s_recreate_exceptions;
static PyObject *__pyx_n_s_rectangles;
static PyObject *__pyx_n_s_rects;
static PyObject *__pyx_n_s_reduce;
static PyObject *__pyx_n_s_reduce_cython;
static PyObject *__pyx_n_s_reduce_ex;
static PyObject *__pyx_n_s_reevaluate_occupancy;
static PyObject *__pyx_kp_u_register_client;
static PyObject *__pyx_kp_u_register_worker;
static PyObject *__pyx_n_s_register_worker_plugin;
static PyObject *__pyx_n_u_register_worker_plugin;
static PyObject *__pyx_n_u_release;
static PyObject *__pyx_n_s_release_resources;
static PyObject *__pyx_kp_u_release_task;
static PyObject *__pyx_kp_u_release_worker_data;
static PyObject *__pyx_n_s_release_worker_data_2;
static PyObject *__pyx_n_u_released;
static PyObject *__pyx_n_s_remove;
static PyObject *__pyx_n_u_remove;
static PyObject *__pyx_n_s_remove_client;
static PyObject *__pyx_kp_u_remove_client_2;
static PyObject *__pyx_n_s_remove_client_from_events;
static PyObject *__pyx_n_s_remove_key;
static PyObject *__pyx_n_s_remove_key_from_stealable;
static PyObject *__pyx_n_s_remove_plugin;
static PyObject *__pyx_n_s_remove_resources;
static PyObject *__pyx_n_s_remove_worker;
static PyObject *__pyx_kp_u_remove_worker_2;
static PyObject *__pyx_kp_u_remove_worker_data;
static PyObject *__pyx_n_s_remove_worker_from_events;
static PyObject *__pyx_n_s_removed_tasks;
static PyObject *__pyx_n_s_replicate;
static PyObject *__pyx_n_u_replicate;
static PyObject *__pyx_kp_u_replicate_add;
static PyObject *__pyx_n_s_report;
static PyObject *__pyx_n_u_report;
static PyObject *__pyx_kp_u_report_key;
static PyObject *__pyx_n_s_report_msg;
static PyObject *__pyx_n_s_report_on_key;
static PyObject *__pyx_n_s_repr;
static PyObject *__pyx_n_s_repr___locals_genexpr;
static PyObject *__pyx_n_s_reschedule;
static PyObject *__pyx_n_u_reschedule;
static PyObject *__pyx_n_s_resolve;
static PyObject *__pyx_n_s_resolve_address;
static PyObject *__pyx_n_s_resource;
static PyObject *__pyx_n_u_resource_restrictions;
static PyObject *__pyx_n_u_resource_restrictions_2;
static PyObject *__pyx_n_s_resources;
static PyObject *__pyx_n_u_resources;
static PyObject *__pyx_n_u_resources_2;
static PyObject *__pyx_n_s_resp;
static PyObject *__pyx_n_s_response;
static PyObject *__pyx_n_s_responses;
static PyObject *__pyx_n_s_resps;
static PyObject *__pyx_n_s_restart;
static PyObject *__pyx_n_u_restart;
static PyObject *__pyx_n_s_restrictions;
static PyObject *__pyx_n_s_result;
static PyObject *__pyx_n_s_results;
static PyObject *__pyx_n_s_retire_workers;
static PyObject *__pyx_n_u_retire_workers;
static PyObject *__pyx_kp_u_retire_workers_2;
static PyObject *__pyx_n_u_retired;
static PyObject *__pyx_n_s_retries;
static PyObject *__pyx_n_u_retries;
static PyObject *__pyx_n_u_retries_2;
static PyObject *__pyx_n_u_retry;
static PyObject *__pyx_n_s_retry_operation;
static PyObject *__pyx_n_s_return;
static PyObject *__pyx_n_s_return_exceptions;
static PyObject *__pyx_n_s_reuse;
static PyObject *__pyx_n_s_reverse;
static PyObject *__pyx_n_s_reverse_dict;
static PyObject *__pyx_n_s_reversed;
static PyObject *__pyx_n_s_roots;
static PyObject *__pyx_n_s_round_robin;
static PyObject *__pyx_n_s_routes;
static PyObject *__pyx_n_s_rpc;
static PyObject *__pyx_n_u_rprocessing;
static PyObject *__pyx_n_s_run;
static PyObject *__pyx_n_s_run_function;
static PyObject *__pyx_n_u_run_function;
static PyObject *__pyx_kp_u_run_function_2;
static PyObject *__pyx_n_s_run_spec;
static PyObject *__pyx_n_u_run_spec_2;
static PyObject *__pyx_n_s_runnables;
static PyObject *__pyx_n_s_running;
static PyObject *__pyx_n_s_s;
static PyObject *__pyx_n_s_safe;
static PyObject *__pyx_n_s_sample;
static PyObject *__pyx_n_u_saturated;
static PyObject *__pyx_n_s_save;
static PyObject *__pyx_n_s_scatter;
static PyObject *__pyx_n_u_scatter;
static PyObject *__pyx_n_s_scatter_to_workers;
static PyObject *__pyx_n_s_scheduler;
static PyObject *__pyx_n_u_scheduler;
static PyObject *__pyx_n_s_scheduler_file;
static PyObject *__pyx_n_s_searchpath;
static PyObject *__pyx_n_s_second;
static PyObject *__pyx_n_s_seconds;
static PyObject *__pyx_n_s_security;
static PyObject *__pyx_n_s_seen;
static PyObject *__pyx_n_s_self;
static PyObject *__pyx_kp_u_self_validate__s_not_found;
static PyObject *__pyx_n_s_semaphore;
static PyObject *__pyx_n_s_send;
static PyObject *__pyx_n_s_send_all;
static PyObject *__pyx_n_s_send_message;
static PyObject *__pyx_n_s_send_recv;
static PyObject *__pyx_n_s_send_task_to_worker;
static PyObject *__pyx_n_s_sender;
static PyObject *__pyx_n_s_sender_keys;
static PyObject *__pyx_n_u_senders;
static PyObject *__pyx_n_s_serializers;
static PyObject *__pyx_n_s_server;
static PyObject *__pyx_n_s_service_kwargs;
static PyObject *__pyx_n_s_service_name;
static PyObject *__pyx_n_s_service_specs;
static PyObject *__pyx_n_s_services;
static PyObject *__pyx_n_u_services;
static PyObject *__pyx_n_u_services_2;
static PyObject *__pyx_n_s_set_duration_estimate;
static PyObject *__pyx_n_s_set_metadata;
static PyObject *__pyx_n_u_set_metadata;
static PyObject *__pyx_n_u_set_resources;
static PyObject *__pyx_n_s_set_trace;
static PyObject *__pyx_n_s_setproctitle;
static PyObject *__pyx_n_s_setstate;
static PyObject *__pyx_n_s_setstate_cython;
static PyObject *__pyx_n_s_setup;
static PyObject *__pyx_n_s_setup_logging;
static PyObject *__pyx_n_s_show_dashboard;
static PyObject *__pyx_n_s_shutting_down;
static PyObject *__pyx_n_s_sizing_mode;
static PyObject *__pyx_n_s_sleep;
static PyObject *__pyx_n_s_slots;
static PyObject *__pyx_n_s_sort;
static PyObject *__pyx_n_s_sorted;
static PyObject *__pyx_n_s_sorted_workers;
static PyObject *__pyx_n_s_sortedcontainers;
static PyObject *__pyx_n_s_source;
static PyObject *__pyx_n_s_spec;
static PyObject *__pyx_n_s_st;
static PyObject *__pyx_n_s_stack;
static PyObject *__pyx_n_s_start;
static PyObject *__pyx_n_u_start;
static PyObject *__pyx_n_s_start_address;
static PyObject *__pyx_n_s_start_finish;
static PyObject *__pyx_n_s_start_http_server;
static PyObject *__pyx_n_s_start_ipython;
static PyObject *__pyx_n_u_start_ipython;
static PyObject *__pyx_n_s_start_periodic_callbacks;
static PyObject *__pyx_n_s_start_services;
static PyObject *__pyx_n_s_start_task_metadata;
static PyObject *__pyx_n_u_start_task_metadata;
static PyObject *__pyx_n_u_started;
static PyObject *__pyx_n_s_startstops;
static PyObject *__pyx_n_u_startstops;
static PyObject *__pyx_n_s_startswith;
static PyObject *__pyx_n_s_state;
static PyObject *__pyx_n_u_state;
static PyObject *__pyx_n_u_state_2;
static PyObject *__pyx_n_s_states;
static PyObject *__pyx_n_s_states_2;
static PyObject *__pyx_n_s_status;
static PyObject *__pyx_n_u_status;
static PyObject *__pyx_n_u_status_2;
static PyObject *__pyx_n_s_stealing;
static PyObject *__pyx_n_u_stealing;
static PyObject *__pyx_n_s_stimulus_cancel;
static PyObject *__pyx_n_s_stimulus_missing_data;
static PyObject *__pyx_n_s_stimulus_retry;
static PyObject *__pyx_n_s_stimulus_task_erred;
static PyObject *__pyx_n_s_stimulus_task_finished;
static PyObject *__pyx_n_s_stop;
static PyObject *__pyx_n_u_stop;
static PyObject *__pyx_n_s_stop_services;
static PyObject *__pyx_n_s_stop_task_metadata;
static PyObject *__pyx_n_u_stop_task_metadata;
static PyObject *__pyx_n_s_story;
static PyObject *__pyx_n_s_stream;
static PyObject *__pyx_kp_u_stream_closed;
static PyObject *__pyx_n_s_stream_comms;
static PyObject *__pyx_n_s_stream_handlers;
static PyObject *__pyx_kp_u_stream_start;
static PyObject *__pyx_n_u_stretch_both;
static PyObject *__pyx_kp_s_stringsource;
static PyObject *__pyx_n_s_stripped_deps;
static PyObject *__pyx_n_s_submitting_task;
static PyObject *__pyx_n_s_subscribe_worker_status;
static PyObject *__pyx_n_u_subscribe_worker_status;
static PyObject *__pyx_n_s_sum;
static PyObject *__pyx_n_s_summary;
static PyObject *__pyx_n_s_super;
static PyObject *__pyx_n_s_suppress;
static PyObject *__pyx_n_u_suspicious;
static PyObject *__pyx_n_u_suspicious_2;
static PyObject *__pyx_n_u_suspicious_tasks;
static PyObject *__pyx_n_s_synchronize_worker_interval;
static PyObject *__pyx_n_s_sys;
static PyObject *__pyx_n_s_t;
static PyObject *__pyx_n_s_tabs;
static PyObject *__pyx_n_s_target;
static PyObject *__pyx_n_s_target_duration;
static PyObject *__pyx_n_s_task;
static PyObject *__pyx_n_u_task;
static PyObject *__pyx_n_s_task_dict;
static PyObject *__pyx_kp_u_task_erred;
static PyObject *__pyx_kp_u_task_finished;
static PyObject *__pyx_n_u_task_groups;
static PyObject *__pyx_n_s_task_key_or_none;
static PyObject *__pyx_n_u_task_prefixes;
static PyObject *__pyx_kp_u_task_processing_without_all_deps;
static PyObject *__pyx_kp_u_task_retried;
static PyObject *__pyx_n_s_task_state_collections;
static PyObject *__pyx_n_s_task_stream;
static PyObject *__pyx_n_s_task_stream_figure;
static PyObject *__pyx_n_s_tasks;
static PyObject *__pyx_n_u_tasks;
static PyObject *__pyx_n_s_tasks_by_worker;
static PyObject *__pyx_n_s_tasks_processing;
static PyObject *__pyx_n_s_tasks_timings;
static PyObject *__pyx_n_s_teardown;
static PyObject *__pyx_n_s_template;
static PyObject *__pyx_n_s_template_directory;
static PyObject *__pyx_n_s_template_environment;
static PyObject *__pyx_n_u_templates;
static PyObject *__pyx_n_u_terminate;
static PyObject *__pyx_n_s_test;
static PyObject *__pyx_n_s_text;
static PyObject *__pyx_n_s_tg;
static PyObject *__pyx_n_s_threads;
static PyObject *__pyx_n_s_throw;
static PyObject *__pyx_n_s_time;
static PyObject *__pyx_n_u_time;
static PyObject *__pyx_kp_u_time_2;
static PyObject *__pyx_n_u_time_delay;
static PyObject *__pyx_n_s_time_started;
static PyObject *__pyx_n_s_timedelta;
static PyObject *__pyx_n_s_timeout;
static PyObject *__pyx_n_s_timespent;
static PyObject *__pyx_n_s_title;
static PyObject *__pyx_n_s_tlz;
static PyObject *__pyx_n_s_tmpfile;
static PyObject *__pyx_n_s_to_close;
static PyObject *__pyx_n_s_to_recipients;
static PyObject *__pyx_n_s_to_senders;
static PyObject *__pyx_n_s_topic;
static PyObject *__pyx_n_s_tornado_ioloop;
static PyObject *__pyx_n_s_total;
static PyObject *__pyx_n_u_total;
static PyObject *__pyx_kp_u_total_keys;
static PyObject *__pyx_n_u_total_nthreads;
static PyObject *__pyx_n_u_total_occupancy;
static PyObject *__pyx_n_s_total_tasks;
static PyObject *__pyx_n_s_touched_keys;
static PyObject *__pyx_n_s_touched_tasks;
static PyObject *__pyx_n_s_tp;
static PyObject *__pyx_n_s_traceback;
static PyObject *__pyx_n_u_traceback;
static PyObject *__pyx_n_u_traceback_2;
static PyObject *__pyx_n_u_tracebacks;
static PyObject *__pyx_n_s_transition;
static PyObject *__pyx_n_s_transition_2;
static PyObject *__pyx_n_s_transition_erred_released;
static PyObject *__pyx_n_s_transition_log;
static PyObject *__pyx_n_s_transition_memory_forgotten;
static PyObject *__pyx_n_s_transition_memory_released;
static PyObject *__pyx_n_s_transition_no_worker_released;
static PyObject *__pyx_n_s_transition_no_worker_waiting;
static PyObject *__pyx_n_s_transition_processing_erred;
static PyObject *__pyx_n_s_transition_processing_memory;
static PyObject *__pyx_n_s_transition_processing_released;
static PyObject *__pyx_n_s_transition_released_erred;
static PyObject *__pyx_n_s_transition_released_forgotten;
static PyObject *__pyx_n_s_transition_released_waiting;
static PyObject *__pyx_n_s_transition_story;
static PyObject *__pyx_n_s_transition_waiting_memory;
static PyObject *__pyx_n_s_transition_waiting_processing;
static PyObject *__pyx_n_s_transition_waiting_released;
static PyObject *__pyx_n_s_transitions;
static PyObject *__pyx_n_s_transitions_2;
static PyObject *__pyx_n_s_ts;
static PyObject *__pyx_n_s_tsp;
static PyObject *__pyx_n_s_tt;
static PyObject *__pyx_n_s_typ;
static PyObject *__pyx_n_s_type;
static PyObject *__pyx_n_u_type;
static PyObject *__pyx_n_u_type_2;
static PyObject *__pyx_n_s_typename;
static PyObject *__pyx_n_s_types;
static PyObject *__pyx_n_u_types;
static PyObject *__pyx_n_s_undefined;
static PyObject *__pyx_n_u_unicode;
static PyObject *__pyx_n_s_union;
static PyObject *__pyx_n_u_unknown_durations;
static PyObject *__pyx_kp_u_unneeded_task_in_memory;
static PyObject *__pyx_n_s_unparse_host_port;
static PyObject *__pyx_n_u_unregister;
static PyObject *__pyx_n_s_unrunnable;
static PyObject *__pyx_n_u_unrunnable;
static PyObject *__pyx_n_s_update;
static PyObject *__pyx_kp_u_update_data;
static PyObject *__pyx_n_s_update_data_2;
static PyObject *__pyx_n_u_update_data_2;
static PyObject *__pyx_kp_u_update_graph;
static PyObject *__pyx_n_s_update_graph_2;
static PyObject *__pyx_n_u_update_graph_2;
static PyObject *__pyx_kp_u_update_graph_duration;
static PyObject *__pyx_kp_u_update_graph_hlg;
static PyObject *__pyx_n_s_update_graph_hlg_2;
static PyObject *__pyx_n_u_used_resources;
static PyObject *__pyx_n_u_used_resources_2;
static PyObject *__pyx_n_s_user_priority;
static PyObject *__pyx_n_s_utils;
static PyObject *__pyx_n_s_utils_comm;
static PyObject *__pyx_n_s_utils_perf;
static PyObject *__pyx_n_s_v;
static PyObject *__pyx_n_s_valid;
static PyObject *__pyx_n_s_valid_workers;
static PyObject *__pyx_n_s_validate;
static PyObject *__pyx_n_u_validate;
static PyObject *__pyx_n_u_validate_2;
static PyObject *__pyx_n_s_validate_erred;
static PyObject *__pyx_n_s_validate_key;
static PyObject *__pyx_n_s_validate_memory;
static PyObject *__pyx_n_s_validate_no_worker;
static PyObject *__pyx_n_s_validate_processing;
static PyObject *__pyx_n_s_validate_released;
static PyObject *__pyx_n_s_validate_state;
static PyObject *__pyx_n_s_validate_task_state;
static PyObject *__pyx_n_s_validate_waiting;
static PyObject *__pyx_n_s_validate_worker_state;
static PyObject *__pyx_n_s_valmap;
static PyObject *__pyx_n_s_value;
static PyObject *__pyx_n_s_values;
static PyObject *__pyx_n_s_variable;
static PyObject *__pyx_n_s_version;
static PyObject *__pyx_n_s_version_info;
static PyObject *__pyx_n_s_version_module;
static PyObject *__pyx_n_s_version_warning;
static PyObject *__pyx_n_s_versions;
static PyObject *__pyx_n_u_versions;
static PyObject *__pyx_n_u_versions_2;
static PyObject *__pyx_n_s_vv;
static PyObject *__pyx_n_s_w;
static PyObject *__pyx_n_u_w;
static PyObject *__pyx_n_s_wait;
static PyObject *__pyx_n_s_wait_for;
static PyObject *__pyx_kp_u_waiter_not_in_play;
static PyObject *__pyx_n_u_waiters;
static PyObject *__pyx_n_u_waiters_2;
static PyObject *__pyx_kp_u_waiters_not_subset_of_dependents;
static PyObject *__pyx_n_u_waiting;
static PyObject *__pyx_n_u_waiting_data;
static PyObject *__pyx_kp_u_waiting_not_subset_of_dependenci;
static PyObject *__pyx_n_u_waiting_on;
static PyObject *__pyx_n_u_waiting_on_2;
static PyObject *__pyx_kp_u_waiting_on_in_memory_dep;
static PyObject *__pyx_kp_u_waiting_on_released_dep;
static PyObject *__pyx_n_u_wants_what;
static PyObject *__pyx_n_u_wants_what_2;
static PyObject *__pyx_n_s_warn;
static PyObject *__pyx_n_s_warning;
static PyObject *__pyx_n_s_warnings;
static PyObject *__pyx_n_s_weakref;
static PyObject *__pyx_n_s_wh;
static PyObject *__pyx_n_s_who_has;
static PyObject *__pyx_n_u_who_has;
static PyObject *__pyx_n_u_who_has_2;
static PyObject *__pyx_n_u_who_wants;
static PyObject *__pyx_n_u_who_wants_2;
static PyObject *__pyx_n_s_worker;
static PyObject *__pyx_n_u_worker;
static PyObject *__pyx_n_s_worker_address;
static PyObject *__pyx_n_s_worker_bytes;
static PyObject *__pyx_n_u_worker_bytes;
static PyObject *__pyx_n_s_worker_collections;
static PyObject *__pyx_n_s_worker_comm;
static PyObject *__pyx_n_s_worker_coroutines;
static PyObject *__pyx_n_s_worker_handlers;
static PyObject *__pyx_n_s_worker_index;
static PyObject *__pyx_n_u_worker_info;
static PyObject *__pyx_n_s_worker_keys;
static PyObject *__pyx_n_u_worker_logs;
static PyObject *__pyx_n_s_worker_msgs;
static PyObject *__pyx_n_s_worker_objective;
static PyObject *__pyx_n_s_worker_plugins;
static PyObject *__pyx_kp_u_worker_plugins_2;
static PyObject *__pyx_n_u_worker_resources;
static PyObject *__pyx_n_u_worker_restrictions;
static PyObject *__pyx_n_u_worker_restrictions_2;
static PyObject *__pyx_n_s_worker_send;
static PyObject *__pyx_n_s_worker_ttl;
static PyObject *__pyx_kp_u_worker_ttl_2;
static PyObject *__pyx_n_s_workers;
static PyObject *__pyx_n_u_workers;
static PyObject *__pyx_n_s_workers_by_task;
static PyObject *__pyx_n_s_workers_list;
static PyObject *__pyx_n_s_workers_to_close;
static PyObject *__pyx_n_u_workers_to_close;
static PyObject *__pyx_n_s_wrap;
static PyObject *__pyx_n_s_wrapper;
static PyObject *__pyx_n_s_write;
static PyObject *__pyx_n_s_ws;
static PyObject *__pyx_n_s_ww;
static PyObject *__pyx_n_s_wws;
static PyObject *__pyx_n_s_x;
static PyObject *__pyx_n_s_zip;
static PyObject *__pyx_pf_11distributed_9scheduler_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_T, PyObject *__pyx_v_v, CYTHON_UNUSED PyObject *__pyx_v_a, CYTHON_UNUSED PyObject *__pyx_v_k); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_2ccall(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_4cclass(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_cls); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_6cfunc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_8declare(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_a, CYTHON_UNUSED PyObject *__pyx_v_k); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9exceptval_wrapper(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10exceptval(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_a, CYTHON_UNUSED PyObject *__pyx_v_k); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_12final(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_cls); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14inline(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_16nogil(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func); /* proto */
static int __pyx_pf_11distributed_9scheduler_11ClientState___init__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self, PyObject *__pyx_v_client, PyObject *__pyx_v_versions); /* proto */
static Py_hash_t __pyx_pf_11distributed_9scheduler_11ClientState_2__hash__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_4__eq__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_6__repr__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_8__str__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_10client_key___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_10wants_what___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_9last_seen___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_8versions___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_10__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_12__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */
static int __pyx_pf_11distributed_9scheduler_11WorkerState___init__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v_address, Py_ssize_t __pyx_v_pid, PyObject *__pyx_v_name, Py_ssize_t __pyx_v_nthreads, Py_ssize_t __pyx_v_memory_limit, PyObject *__pyx_v_local_directory, PyObject *__pyx_v_services, PyObject *__pyx_v_versions, PyObject *__pyx_v_nanny, PyObject *__pyx_v_extra); /* proto */
static Py_hash_t __pyx_pf_11distributed_9scheduler_11WorkerState_2__hash__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_4__eq__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6actors___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_7address___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9bandwidth___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9executing___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_5extra___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8has_what___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_4host___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9last_seen___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_15local_directory___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_12memory_limit___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_7metrics___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_4name___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_5nanny___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6nbytes___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_11WorkerState_6nbytes_2__set__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, Py_ssize_t __pyx_v_v); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8nthreads___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9occupancy___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_11WorkerState_9occupancy_2__set__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, double __pyx_v_v); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_3pid___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_10processing___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9resources___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8services___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6status___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_11WorkerState_6status_2__set__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v_new_status); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_10time_delay___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_14used_resources___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8versions___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6clean(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8__repr__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_10identity(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6ncores___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_12__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_14__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */
static int __pyx_pf_11distributed_9scheduler_10TaskPrefix___init__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_4name___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_13all_durations___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_16duration_average___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_10suspicious___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6groups___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6states___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6active___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_13active_states___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_8__repr___genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_2__repr__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_16nbytes_in_memory___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_12nbytes_total___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static Py_ssize_t __pyx_pf_11distributed_9scheduler_10TaskPrefix_4__len__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_8duration___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_5types___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_8__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */
static int __pyx_pf_11distributed_9scheduler_9TaskGroup___init__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_4name___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_6prefix___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_6states___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_12dependencies___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_12nbytes_total___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_16nbytes_in_memory___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_8duration___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_5types___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_2add(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v_o); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_8__repr___genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_4__repr__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static Py_ssize_t __pyx_pf_11distributed_9scheduler_9TaskGroup_6__len__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_8__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_10__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */
static int __pyx_pf_11distributed_9scheduler_9TaskState___init__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_run_spec); /* proto */
static Py_hash_t __pyx_pf_11distributed_9scheduler_9TaskState_2__hash__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_4__eq__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_3key___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_6prefix___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8run_spec___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8priority___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_5state___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_9TaskState_5state_2__set__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_12dependencies___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10dependents___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_21has_lost_dependencies___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10waiting_on___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_7waiters___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9who_wants___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_7who_has___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_13processing_on___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_9TaskState_13processing_on_2__set__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_v); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_7retries___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_6nbytes___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_9TaskState_6nbytes_2__set__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, Py_ssize_t __pyx_v_v); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_4type___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9exception___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9traceback___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_15exception_blame___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10suspicious___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_17host_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_19worker_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_21resource_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_18loose_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8metadata___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_11annotations___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_5actor___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_5group___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9group_key___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10prefix_key___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_6add_dependency(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8get_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10set_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, Py_ssize_t __pyx_v_nbytes); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_12__repr__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_14validate(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_16get_nbytes_deps(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_18__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_20__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_19_StateLegacyMapping___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_states, PyObject *__pyx_v_accessor); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_19_StateLegacyMapping_2__iter__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_19_StateLegacyMapping_4__len__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_19_StateLegacyMapping_6__getitem__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_19_StateLegacyMapping_8__repr__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_27_OptionalStateLegacyMapping___iter__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_27_OptionalStateLegacyMapping_7__len___genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_27_OptionalStateLegacyMapping_3__len__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_27_OptionalStateLegacyMapping_5__getitem__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_15_StateLegacySet___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_states, PyObject *__pyx_v_accessor); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_15_StateLegacySet_8__iter___genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_15_StateLegacySet_2__iter__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_15_StateLegacySet_4__len__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_15_StateLegacySet_6__contains__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_k); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_15_StateLegacySet_8__repr__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_18_legacy_task_key_set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tasks); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_20_legacy_client_key_set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_clients); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_22_legacy_worker_key_set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_24_legacy_task_key_dict(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_task_dict); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_26_task_key_or_none(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_task); /* proto */
static int __pyx_pf_11distributed_9scheduler_14SchedulerState___init__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_aliases, PyObject *__pyx_v_clients, PyObject *__pyx_v_workers, PyObject *__pyx_v_host_info, PyObject *__pyx_v_resources, PyObject *__pyx_v_tasks, PyObject *__pyx_v_unrunnable, int __pyx_v_validate, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_7aliases___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_9bandwidth___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_7clients___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_10extensions___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_9host_info___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_4idle___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_7n_tasks___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_9resources___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_9saturated___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_5tasks___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_11task_groups___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_13task_prefixes___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_13task_metadata___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_14total_nthreads___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_15total_occupancy___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_14SchedulerState_15total_occupancy_2__set__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, double __pyx_v_v); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_17unknown_durations___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_10unrunnable___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_8validate___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static int __pyx_pf_11distributed_9scheduler_14SchedulerState_8validate_2__set__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, int __pyx_v_v); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_7workers___get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_9__pdict_____get__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_2transition_released_waiting(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_4transition_no_worker_waiting(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_6decide_worker(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_8set_duration_estimate(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_10transition_waiting_processing(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_12transition_waiting_memory(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_nbytes, PyObject *__pyx_v_type, PyObject *__pyx_v_typename, PyObject *__pyx_v_worker, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_14transition_processing_memory(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_nbytes, PyObject *__pyx_v_type, PyObject *__pyx_v_typename, PyObject *__pyx_v_worker, PyObject *__pyx_v_startstops, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_16transition_memory_released(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key, int __pyx_v_safe); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_18transition_released_erred(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_20transition_erred_released(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_22transition_waiting_released(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_24transition_processing_released(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_26transition_processing_erred(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_cause, PyObject *__pyx_v_exception, PyObject *__pyx_v_traceback, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_28transition_no_worker_released(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_30remove_key(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_32transition_memory_forgotten(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_34transition_released_forgotten(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_36check_idle_saturated(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws, double __pyx_v_occ); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_38get_comm_cost(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_40get_task_duration(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, double __pyx_v_default); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_42valid_workers(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_44consume_resources(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_46release_resources(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_48coerce_hostname(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v_host); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_50worker_objective(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_52__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_14SchedulerState_54__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_SchedulerState *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_lambda_funcdef_lambda4(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_lambda_funcdef_lambda5(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_args, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_loop, PyObject *__pyx_v_delete_interval, PyObject *__pyx_v_synchronize_worker_interval, PyObject *__pyx_v_services, PyObject *__pyx_v_service_kwargs, PyObject *__pyx_v_allowed_failures, PyObject *__pyx_v_extensions, PyObject *__pyx_v_validate, PyObject *__pyx_v_scheduler_file, PyObject *__pyx_v_security, PyObject *__pyx_v_worker_ttl, PyObject *__pyx_v_idle_timeout, PyObject *__pyx_v_interface, PyObject *__pyx_v_host, PyObject *__pyx_v_port, PyObject *__pyx_v_protocol, PyObject *__pyx_v_dashboard_address, PyObject *__pyx_v_dashboard, PyObject *__pyx_v_http_prefix, PyObject *__pyx_v_preload, PyObject *__pyx_v_preload_argv, PyObject *__pyx_v_plugins, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_2__repr__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_4identity(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_6get_worker_service_addr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker, PyObject *__pyx_v_service_name, PyObject *__pyx_v_protocol); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_8start(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_5start_del_scheduler_file(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_11close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm, CYTHON_UNUSED PyObject *__pyx_v_fast, PyObject *__pyx_v_close_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_14close_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_worker, PyObject *__pyx_v_safe); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_17heartbeat_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_address, PyObject *__pyx_v_resolve_address, PyObject *__pyx_v_now, PyObject *__pyx_v_resources, PyObject *__pyx_v_host_info, PyObject *__pyx_v_metrics, PyObject *__pyx_v_executing); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_19add_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm, PyObject *__pyx_v_address, CYTHON_UNUSED PyObject *__pyx_v_keys, PyObject *__pyx_v_nthreads, PyObject *__pyx_v_name, PyObject *__pyx_v_resolve_address, PyObject *__pyx_v_nbytes, PyObject *__pyx_v_types, PyObject *__pyx_v_now, PyObject *__pyx_v_resources, PyObject *__pyx_v_host_info, PyObject *__pyx_v_memory_limit, PyObject *__pyx_v_metrics, PyObject *__pyx_v_pid, PyObject *__pyx_v_services, PyObject *__pyx_v_local_directory, PyObject *__pyx_v_versions, PyObject *__pyx_v_nanny, PyObject *__pyx_v_extra); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_22update_graph_hlg(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client, PyObject *__pyx_v_hlg, PyObject *__pyx_v_keys, PyObject *__pyx_v_dependencies, PyObject *__pyx_v_restrictions, PyObject *__pyx_v_priority, PyObject *__pyx_v_loose_restrictions, PyObject *__pyx_v_resources, PyObject *__pyx_v_submitting_task, PyObject *__pyx_v_retries, PyObject *__pyx_v_user_priority, PyObject *__pyx_v_actors, PyObject *__pyx_v_fifo_timeout, PyObject *__pyx_v_annotations); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_12update_graph_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_12update_graph_3genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_12update_graph_6genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_24update_graph(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client, PyObject *__pyx_v_tasks, PyObject *__pyx_v_keys, PyObject *__pyx_v_dependencies, PyObject *__pyx_v_restrictions, PyObject *__pyx_v_priority, PyObject *__pyx_v_loose_restrictions, PyObject *__pyx_v_resources, PyObject *__pyx_v_submitting_task, PyObject *__pyx_v_retries, PyObject *__pyx_v_user_priority, PyObject *__pyx_v_actors, PyObject *__pyx_v_fifo_timeout, PyObject *__pyx_v_annotations); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_26new_task(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_spec, PyObject *__pyx_v_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_28stimulus_task_finished(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_worker, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_30stimulus_task_erred(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_worker, PyObject *__pyx_v_exception, PyObject *__pyx_v_traceback, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_32stimulus_missing_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_cause, PyObject *__pyx_v_key, PyObject *__pyx_v_worker, CYTHON_UNUSED PyObject *__pyx_v_ensure, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_34stimulus_retry(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_36remove_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_address, PyObject *__pyx_v_safe, PyObject *__pyx_v_close); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_13remove_worker_remove_worker_from_events(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_39stimulus_cancel(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_client, PyObject *__pyx_v_force); /* proto */
static PyObject *__pyx_lambda_funcdef_lambda9(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_41cancel_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_client, PyObject *__pyx_v_retries, PyObject *__pyx_v_force); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_43client_desires_keys(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_keys, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_45client_releases_keys(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_keys, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_47client_heartbeat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_49validate_released(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_51validate_waiting(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_53validate_processing(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_55validate_memory(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_57validate_no_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_59validate_erred(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_61validate_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_14validate_state_9genexpr47_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_63validate_state(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_allow_overlap); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_65report(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_msg, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_67add_client(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm, PyObject *__pyx_v_client, PyObject *__pyx_v_versions); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_13remove_client_remove_client_from_events(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_70remove_client(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_72send_task_to_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, PyObject *__pyx_v_duration); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_74handle_uncaught_error(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_76handle_task_finished(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_worker, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_78handle_task_erred(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_80handle_release_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_worker, CYTHON_UNUSED PyObject *__pyx_v_client, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_82handle_missing_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_errant_worker, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_84release_worker_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_worker); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_86handle_long_running(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, CYTHON_UNUSED PyObject *__pyx_v_worker, PyObject *__pyx_v_compute_duration); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_88handle_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm, PyObject *__pyx_v_worker); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_10add_plugin_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_91add_plugin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_plugin, PyObject *__pyx_v_idempotent, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_93remove_plugin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_plugin); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_95worker_send(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_97client_send(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_99send_all(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client_msgs, PyObject *__pyx_v_worker_msgs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_101scatter(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_data, PyObject *__pyx_v_workers, PyObject *__pyx_v_client, PyObject *__pyx_v_broadcast, PyObject *__pyx_v_timeout); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_104gather(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_serializers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_107clear_task_state(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_7restart_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_109restart(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_client, PyObject *__pyx_v_timeout); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_112broadcast(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_msg, PyObject *__pyx_v_workers, PyObject *__pyx_v_hosts, PyObject *__pyx_v_nanny, PyObject *__pyx_v_serializers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9broadcast_send_message(PyObject *__pyx_self, PyObject *__pyx_v_addr); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_115proxy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm, PyObject *__pyx_v_msg, PyObject *__pyx_v_worker, PyObject *__pyx_v_serializers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_118_delete_worker_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker_address, PyObject *__pyx_v_keys); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9rebalance_9genexpr77_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_lambda_funcdef_lambda14(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9rebalance_1genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9rebalance_4genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9rebalance_7genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9rebalance_10genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_121rebalance(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_9replicate_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_124replicate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_n, PyObject *__pyx_v_workers, PyObject *__pyx_v_branching_factor, PyObject *__pyx_v_delete, PyObject *__pyx_v_lock); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_16workers_to_close__key(PyObject *__pyx_self, PyObject *__pyx_v_group); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_127workers_to_close(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_memory_ratio, PyObject *__pyx_v_n, PyObject *__pyx_v_key, PyObject *__pyx_v_minimum, PyObject *__pyx_v_target, PyObject *__pyx_v_attribute); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_129retire_workers(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_workers, PyObject *__pyx_v_remove, PyObject *__pyx_v_close_workers, PyObject *__pyx_v_names, PyObject *__pyx_v_lock, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_132add_keys(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_worker, PyObject *__pyx_v_keys); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_134update_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_who_has, PyObject *__pyx_v_nbytes, PyObject *__pyx_v_client, CYTHON_UNUSED PyObject *__pyx_v_serializers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_136report_on_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts, PyObject *__pyx_v_client); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_138feed(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm, PyObject *__pyx_v_function, PyObject *__pyx_v_setup, PyObject *__pyx_v_teardown, PyObject *__pyx_v_interval, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_141log_worker_event(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_worker, PyObject *__pyx_v_topic, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_143subscribe_worker_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_145get_processing(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_147get_who_has(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_149get_has_what(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_151get_ncores(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_14get_call_stack_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_153get_call_stack(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys); /* proto */
static PyObject *__pyx_lambda_funcdef_lambda21(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_156get_nbytes(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_summary); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_48__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_158run_function(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_stream, PyObject *__pyx_v_function, PyObject *__pyx_v_args, PyObject *__pyx_v_kwargs, PyObject *__pyx_v_wait); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_160set_metadata(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_50__defaults__(CYTHON_UNUSED PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_162get_metadata(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys, PyObject *__pyx_v_default); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_164get_task_status(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_keys); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_166get_task_stream(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_start, PyObject *__pyx_v_stop, PyObject *__pyx_v_count); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_168start_task_metadata(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_170stop_task_metadata(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_172register_worker_plugin(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_plugin, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_175_transition(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_finish, PyObject *__pyx_v_args, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_177transition(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_finish, PyObject *__pyx_v_args, PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_179transitions(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_recommendations); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_181story(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_keys); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_183reschedule(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_worker); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_185add_resources(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_worker, PyObject *__pyx_v_resources); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_187remove_resources(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_189coerce_address(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_addr, PyObject *__pyx_v_resolve); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_191workers_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_workers); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_193start_ipython(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_11get_profile_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_195get_profile(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_workers, PyObject *__pyx_v_scheduler, PyObject *__pyx_v_server, PyObject *__pyx_v_merge_workers, PyObject *__pyx_v_start, PyObject *__pyx_v_stop, PyObject *__pyx_v_key); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_20get_profile_metadata_genexpr(PyObject *__pyx_self); /* proto */
static PyObject *__pyx_lambda_funcdef_lambda24(PyObject *__pyx_self, PyObject *__pyx_v_t); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_198get_profile_metadata(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_workers, CYTHON_UNUSED PyObject *__pyx_v_merge_workers, PyObject *__pyx_v_start, PyObject *__pyx_v_stop, PyObject *__pyx_v_profile_cycle_interval); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_201performance_report(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_start, PyObject *__pyx_v_code); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_18performance_report_profile_to_figure(PyObject *__pyx_self, PyObject *__pyx_v_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_204get_worker_logs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_n, PyObject *__pyx_v_workers, PyObject *__pyx_v_nanny); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_207log_event(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_msg); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_209get_events(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_topic); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_211reevaluate_occupancy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, Py_ssize_t __pyx_v_worker_index); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_213check_worker_ttl(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_216check_idle(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_9Scheduler_218adaptive_target(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_comm, PyObject *__pyx_v_target_duration); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_28validate_task_state(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_30validate_worker_state(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_32validate_state(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tasks, PyObject *__pyx_v_workers, PyObject *__pyx_v_clients); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_34heartbeat_interval(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_n); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_12KilledWorker___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_task, PyObject *__pyx_v_last_worker); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_18WorkerStatusPlugin___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_scheduler, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_18WorkerStatusPlugin_2add_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_18WorkerStatusPlugin_4remove_worker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_worker, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_18WorkerStatusPlugin_6teardown(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_25CollectTaskMetaDataPlugin___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_scheduler, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_25CollectTaskMetaDataPlugin_2update_graph(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_scheduler, CYTHON_UNUSED PyObject *__pyx_v_dsk, PyObject *__pyx_v_keys, CYTHON_UNUSED PyObject *__pyx_v_restrictions, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_25CollectTaskMetaDataPlugin_4transition(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, CYTHON_UNUSED PyObject *__pyx_v_start, PyObject *__pyx_v_finish, CYTHON_UNUSED PyObject *__pyx_v_args, CYTHON_UNUSED PyObject *__pyx_v_kwargs); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_36__pyx_unpickle_ClientState(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_38__pyx_unpickle_WorkerState(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_40__pyx_unpickle_TaskPrefix(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_42__pyx_unpickle_TaskGroup(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_44__pyx_unpickle_TaskState(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_pf_11distributed_9scheduler_46__pyx_unpickle_SchedulerState(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */
static PyObject *__pyx_tp_new_11distributed_9scheduler_ClientState(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler_WorkerState(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler_TaskPrefix(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler_TaskGroup(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler_TaskState(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler_SchedulerState(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct____repr__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_1_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_2___repr__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_3_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_4___iter__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_5___len__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_6_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_7___iter__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_8_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_9_start(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_10_close(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_11_close_worker(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_12_add_worker(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_13_update_graph(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_14_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_15_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_16_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_17_remove_worker(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_18_cancel_key(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_19_validate_state(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_20_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_21_add_client(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_22_remove_client(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_23_handle_worker(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_24_add_plugin(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_25_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_26_scatter(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_27_gather(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_28_restart(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_29_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_30_broadcast(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_31_send_message(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_32_proxy(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_33__delete_worker_data(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_34_rebalance(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_35_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_36_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_37_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_38_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_39_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_40_replicate(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_41_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_42_workers_to_close(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_43_retire_workers(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_44_feed(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_45_get_call_stack(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_46_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_47_register_worker_plugin(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_48_get_profile(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_49_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_50_get_profile_metadata(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_51_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_52_performance_report(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_53_get_worker_logs(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static PyObject *__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_54_check_worker_ttl(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_get = {0, &__pyx_n_s_get, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_items = {0, &__pyx_n_s_items, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop = {0, &__pyx_n_s_pop, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_popitem = {0, &__pyx_n_s_popitem, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_update = {0, &__pyx_n_s_update, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_values = {0, &__pyx_n_s_values, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PyList_Type_pop = {0, &__pyx_n_s_pop, 0, 0, 0};
static __Pyx_CachedCFunction __pyx_umethod_PySet_Type_update = {0, &__pyx_n_s_update, 0, 0, 0};
static PyObject *__pyx_float_0_1;
static PyObject *__pyx_float_0_2;
static PyObject *__pyx_float_0_5;
static PyObject *__pyx_float_0_6;
static PyObject *__pyx_float_0_8;
static PyObject *__pyx_float_0_01;
static PyObject *__pyx_float_0_05;
static PyObject *__pyx_float_1eneg_8;
static PyObject *__pyx_float_0_005;
static PyObject *__pyx_int_0;
static PyObject *__pyx_int_1;
static PyObject *__pyx_int_2;
static PyObject *__pyx_int_3;
static PyObject *__pyx_int_4;
static PyObject *__pyx_int_5;
static PyObject *__pyx_int_8;
static PyObject *__pyx_int_10;
static PyObject *__pyx_int_50;
static PyObject *__pyx_int_200;
static PyObject *__pyx_int_8786;
static PyObject *__pyx_int_8787;
static PyObject *__pyx_int_100000;
static PyObject *__pyx_int_59694385;
static PyObject *__pyx_int_64377685;
static PyObject *__pyx_int_110416975;
static PyObject *__pyx_int_135525525;
static PyObject *__pyx_int_163323807;
static PyObject *__pyx_int_247120481;
static PyObject *__pyx_int_neg_1;
static double __pyx_k__13;
static PyObject *__pyx_tuple_;
static PyObject *__pyx_slice__57;
static PyObject *__pyx_slice__83;
static PyObject *__pyx_tuple__11;
static PyObject *__pyx_tuple__12;
static PyObject *__pyx_tuple__15;
static PyObject *__pyx_tuple__16;
static PyObject *__pyx_tuple__17;
static PyObject *__pyx_tuple__18;
static PyObject *__pyx_tuple__19;
static PyObject *__pyx_tuple__20;
static PyObject *__pyx_tuple__21;
static PyObject *__pyx_tuple__22;
static PyObject *__pyx_tuple__23;
static PyObject *__pyx_tuple__24;
static PyObject *__pyx_tuple__25;
static PyObject *__pyx_tuple__26;
static PyObject *__pyx_tuple__27;
static PyObject *__pyx_tuple__28;
static PyObject *__pyx_tuple__29;
static PyObject *__pyx_tuple__30;
static PyObject *__pyx_tuple__31;
static PyObject *__pyx_tuple__32;
static PyObject *__pyx_tuple__33;
static PyObject *__pyx_tuple__34;
static PyObject *__pyx_tuple__35;
static PyObject *__pyx_tuple__36;
static PyObject *__pyx_tuple__37;
static PyObject *__pyx_tuple__38;
static PyObject *__pyx_tuple__39;
static PyObject *__pyx_tuple__40;
static PyObject *__pyx_tuple__41;
static PyObject *__pyx_tuple__42;
static PyObject *__pyx_tuple__43;
static PyObject *__pyx_tuple__44;
static PyObject *__pyx_tuple__45;
static PyObject *__pyx_tuple__46;
static PyObject *__pyx_tuple__47;
static PyObject *__pyx_tuple__62;
static PyObject *__pyx_tuple__69;
static PyObject *__pyx_tuple__71;
static PyObject *__pyx_tuple__77;
static PyObject *__pyx_tuple__78;
static PyObject *__pyx_tuple__86;
static PyObject *__pyx_tuple__90;
static PyObject *__pyx_tuple__93;
static PyObject *__pyx_tuple__95;
static PyObject *__pyx_tuple__97;
static PyObject *__pyx_tuple__99;
static PyObject *__pyx_codeobj__2;
static PyObject *__pyx_tuple__101;
static PyObject *__pyx_tuple__103;
static PyObject *__pyx_tuple__105;
static PyObject *__pyx_tuple__107;
static PyObject *__pyx_tuple__109;
static PyObject *__pyx_tuple__111;
static PyObject *__pyx_tuple__113;
static PyObject *__pyx_tuple__114;
static PyObject *__pyx_tuple__115;
static PyObject *__pyx_tuple__116;
static PyObject *__pyx_tuple__117;
static PyObject *__pyx_tuple__118;
static PyObject *__pyx_tuple__119;
static PyObject *__pyx_tuple__120;
static PyObject *__pyx_tuple__122;
static PyObject *__pyx_tuple__124;
static PyObject *__pyx_tuple__126;
static PyObject *__pyx_tuple__128;
static PyObject *__pyx_tuple__130;
static PyObject *__pyx_tuple__131;
static PyObject *__pyx_tuple__133;
static PyObject *__pyx_tuple__135;
static PyObject *__pyx_tuple__137;
static PyObject *__pyx_tuple__139;
static PyObject *__pyx_tuple__141;
static PyObject *__pyx_tuple__143;
static PyObject *__pyx_tuple__145;
static PyObject *__pyx_tuple__147;
static PyObject *__pyx_tuple__149;
static PyObject *__pyx_tuple__151;
static PyObject *__pyx_tuple__153;
static PyObject *__pyx_tuple__155;
static PyObject *__pyx_tuple__157;
static PyObject *__pyx_tuple__158;
static PyObject *__pyx_tuple__160;
static PyObject *__pyx_tuple__162;
static PyObject *__pyx_tuple__163;
static PyObject *__pyx_tuple__165;
static PyObject *__pyx_tuple__166;
static PyObject *__pyx_tuple__167;
static PyObject *__pyx_tuple__168;
static PyObject *__pyx_tuple__169;
static PyObject *__pyx_tuple__170;
static PyObject *__pyx_tuple__171;
static PyObject *__pyx_tuple__173;
static PyObject *__pyx_tuple__174;
static PyObject *__pyx_tuple__175;
static PyObject *__pyx_tuple__176;
static PyObject *__pyx_tuple__178;
static PyObject *__pyx_tuple__179;
static PyObject *__pyx_tuple__181;
static PyObject *__pyx_tuple__182;
static PyObject *__pyx_tuple__184;
static PyObject *__pyx_tuple__186;
static PyObject *__pyx_tuple__187;
static PyObject *__pyx_tuple__189;
static PyObject *__pyx_tuple__190;
static PyObject *__pyx_tuple__192;
static PyObject *__pyx_tuple__193;
static PyObject *__pyx_tuple__195;
static PyObject *__pyx_tuple__196;
static PyObject *__pyx_tuple__197;
static PyObject *__pyx_tuple__198;
static PyObject *__pyx_tuple__200;
static PyObject *__pyx_tuple__201;
static PyObject *__pyx_tuple__203;
static PyObject *__pyx_tuple__204;
static PyObject *__pyx_tuple__206;
static PyObject *__pyx_tuple__207;
static PyObject *__pyx_tuple__209;
static PyObject *__pyx_tuple__210;
static PyObject *__pyx_tuple__212;
static PyObject *__pyx_tuple__213;
static PyObject *__pyx_tuple__215;
static PyObject *__pyx_tuple__217;
static PyObject *__pyx_tuple__219;
static PyObject *__pyx_tuple__221;
static PyObject *__pyx_tuple__223;
static PyObject *__pyx_tuple__225;
static PyObject *__pyx_tuple__227;
static PyObject *__pyx_tuple__228;
static PyObject *__pyx_tuple__230;
static PyObject *__pyx_tuple__231;
static PyObject *__pyx_tuple__233;
static PyObject *__pyx_tuple__234;
static PyObject *__pyx_tuple__235;
static PyObject *__pyx_tuple__236;
static PyObject *__pyx_tuple__238;
static PyObject *__pyx_tuple__239;
static PyObject *__pyx_tuple__241;
static PyObject *__pyx_tuple__242;
static PyObject *__pyx_tuple__244;
static PyObject *__pyx_tuple__246;
static PyObject *__pyx_tuple__247;
static PyObject *__pyx_tuple__249;
static PyObject *__pyx_tuple__250;
static PyObject *__pyx_tuple__252;
static PyObject *__pyx_tuple__253;
static PyObject *__pyx_tuple__255;
static PyObject *__pyx_tuple__256;
static PyObject *__pyx_tuple__258;
static PyObject *__pyx_tuple__259;
static PyObject *__pyx_tuple__261;
static PyObject *__pyx_tuple__262;
static PyObject *__pyx_tuple__263;
static PyObject *__pyx_tuple__264;
static PyObject *__pyx_tuple__266;
static PyObject *__pyx_tuple__267;
static PyObject *__pyx_tuple__269;
static PyObject *__pyx_tuple__271;
static PyObject *__pyx_tuple__273;
static PyObject *__pyx_tuple__275;
static PyObject *__pyx_tuple__276;
static PyObject *__pyx_tuple__277;
static PyObject *__pyx_tuple__278;
static PyObject *__pyx_tuple__279;
static PyObject *__pyx_tuple__281;
static PyObject *__pyx_tuple__282;
static PyObject *__pyx_tuple__283;
static PyObject *__pyx_tuple__284;
static PyObject *__pyx_tuple__285;
static PyObject *__pyx_tuple__286;
static PyObject *__pyx_tuple__287;
static PyObject *__pyx_tuple__288;
static PyObject *__pyx_tuple__289;
static PyObject *__pyx_tuple__290;
static PyObject *__pyx_tuple__291;
static PyObject *__pyx_tuple__292;
static PyObject *__pyx_tuple__294;
static PyObject *__pyx_tuple__295;
static PyObject *__pyx_tuple__296;
static PyObject *__pyx_tuple__297;
static PyObject *__pyx_tuple__299;
static PyObject *__pyx_tuple__300;
static PyObject *__pyx_tuple__302;
static PyObject *__pyx_tuple__303;
static PyObject *__pyx_tuple__305;
static PyObject *__pyx_tuple__306;
static PyObject *__pyx_tuple__307;
static PyObject *__pyx_tuple__308;
static PyObject *__pyx_tuple__310;
static PyObject *__pyx_tuple__311;
static PyObject *__pyx_tuple__313;
static PyObject *__pyx_tuple__314;
static PyObject *__pyx_tuple__316;
static PyObject *__pyx_tuple__317;
static PyObject *__pyx_tuple__319;
static PyObject *__pyx_tuple__320;
static PyObject *__pyx_tuple__322;
static PyObject *__pyx_tuple__323;
static PyObject *__pyx_tuple__325;
static PyObject *__pyx_tuple__326;
static PyObject *__pyx_tuple__327;
static PyObject *__pyx_tuple__328;
static PyObject *__pyx_tuple__330;
static PyObject *__pyx_tuple__331;
static PyObject *__pyx_tuple__333;
static PyObject *__pyx_tuple__335;
static PyObject *__pyx_tuple__336;
static PyObject *__pyx_tuple__338;
static PyObject *__pyx_tuple__340;
static PyObject *__pyx_tuple__341;
static PyObject *__pyx_tuple__343;
static PyObject *__pyx_tuple__344;
static PyObject *__pyx_tuple__346;
static PyObject *__pyx_tuple__347;
static PyObject *__pyx_tuple__349;
static PyObject *__pyx_tuple__350;
static PyObject *__pyx_tuple__351;
static PyObject *__pyx_tuple__352;
static PyObject *__pyx_tuple__354;
static PyObject *__pyx_tuple__356;
static PyObject *__pyx_tuple__358;
static PyObject *__pyx_tuple__360;
static PyObject *__pyx_tuple__362;
static PyObject *__pyx_tuple__363;
static PyObject *__pyx_tuple__365;
static PyObject *__pyx_tuple__366;
static PyObject *__pyx_tuple__368;
static PyObject *__pyx_tuple__370;
static PyObject *__pyx_tuple__371;
static PyObject *__pyx_tuple__373;
static PyObject *__pyx_tuple__375;
static PyObject *__pyx_tuple__376;
static PyObject *__pyx_tuple__377;
static PyObject *__pyx_tuple__378;
static PyObject *__pyx_tuple__379;
static PyObject *__pyx_tuple__380;
static PyObject *__pyx_tuple__381;
static PyObject *__pyx_tuple__382;
static PyObject *__pyx_tuple__383;
static PyObject *__pyx_tuple__384;
static PyObject *__pyx_tuple__386;
static PyObject *__pyx_tuple__388;
static PyObject *__pyx_tuple__389;
static PyObject *__pyx_tuple__391;
static PyObject *__pyx_tuple__392;
static PyObject *__pyx_tuple__394;
static PyObject *__pyx_tuple__396;
static PyObject *__pyx_tuple__397;
static PyObject *__pyx_tuple__399;
static PyObject *__pyx_tuple__401;
static PyObject *__pyx_tuple__403;
static PyObject *__pyx_tuple__405;
static PyObject *__pyx_tuple__407;
static PyObject *__pyx_tuple__409;
static PyObject *__pyx_tuple__411;
static PyObject *__pyx_tuple__412;
static PyObject *__pyx_tuple__414;
static PyObject *__pyx_tuple__415;
static PyObject *__pyx_tuple__417;
static PyObject *__pyx_tuple__419;
static PyObject *__pyx_tuple__421;
static PyObject *__pyx_tuple__422;
static PyObject *__pyx_tuple__424;
static PyObject *__pyx_tuple__426;
static PyObject *__pyx_tuple__428;
static PyObject *__pyx_tuple__430;
static PyObject *__pyx_tuple__432;
static PyObject *__pyx_tuple__434;
static PyObject *__pyx_codeobj__10;
static PyObject *__pyx_codeobj__49;
static PyObject *__pyx_codeobj__52;
static PyObject *__pyx_codeobj__54;
static PyObject *__pyx_codeobj__55;
static PyObject *__pyx_codeobj__56;
static PyObject *__pyx_codeobj__58;
static PyObject *__pyx_codeobj__59;
static PyObject *__pyx_codeobj__63;
static PyObject *__pyx_codeobj__64;
static PyObject *__pyx_codeobj__65;
static PyObject *__pyx_codeobj__66;
static PyObject *__pyx_codeobj__67;
static PyObject *__pyx_codeobj__68;
static PyObject *__pyx_codeobj__70;
static PyObject *__pyx_codeobj__72;
static PyObject *__pyx_codeobj__73;
static PyObject *__pyx_codeobj__74;
static PyObject *__pyx_codeobj__75;
static PyObject *__pyx_codeobj__76;
static PyObject *__pyx_codeobj__79;
static PyObject *__pyx_codeobj__80;
static PyObject *__pyx_codeobj__81;
static PyObject *__pyx_codeobj__82;
static PyObject *__pyx_codeobj__85;
static PyObject *__pyx_codeobj__87;
static PyObject *__pyx_codeobj__88;
static PyObject *__pyx_codeobj__89;
static PyObject *__pyx_codeobj__91;
static PyObject *__pyx_codeobj__92;
static PyObject *__pyx_codeobj__94;
static PyObject *__pyx_codeobj__96;
static PyObject *__pyx_codeobj__98;
static PyObject *__pyx_codeobj__100;
static PyObject *__pyx_codeobj__102;
static PyObject *__pyx_codeobj__104;
static PyObject *__pyx_codeobj__106;
static PyObject *__pyx_codeobj__108;
static PyObject *__pyx_codeobj__110;
static PyObject *__pyx_codeobj__112;
static PyObject *__pyx_codeobj__121;
static PyObject *__pyx_codeobj__123;
static PyObject *__pyx_codeobj__125;
static PyObject *__pyx_codeobj__127;
static PyObject *__pyx_codeobj__129;
static PyObject *__pyx_codeobj__132;
static PyObject *__pyx_codeobj__134;
static PyObject *__pyx_codeobj__136;
static PyObject *__pyx_codeobj__138;
static PyObject *__pyx_codeobj__140;
static PyObject *__pyx_codeobj__142;
static PyObject *__pyx_codeobj__144;
static PyObject *__pyx_codeobj__146;
static PyObject *__pyx_codeobj__148;
static PyObject *__pyx_codeobj__150;
static PyObject *__pyx_codeobj__152;
static PyObject *__pyx_codeobj__154;
static PyObject *__pyx_codeobj__156;
static PyObject *__pyx_codeobj__159;
static PyObject *__pyx_codeobj__161;
static PyObject *__pyx_codeobj__164;
static PyObject *__pyx_codeobj__172;
static PyObject *__pyx_codeobj__177;
static PyObject *__pyx_codeobj__180;
static PyObject *__pyx_codeobj__183;
static PyObject *__pyx_codeobj__185;
static PyObject *__pyx_codeobj__188;
static PyObject *__pyx_codeobj__191;
static PyObject *__pyx_codeobj__194;
static PyObject *__pyx_codeobj__199;
static PyObject *__pyx_codeobj__202;
static PyObject *__pyx_codeobj__205;
static PyObject *__pyx_codeobj__208;
static PyObject *__pyx_codeobj__211;
static PyObject *__pyx_codeobj__214;
static PyObject *__pyx_codeobj__216;
static PyObject *__pyx_codeobj__218;
static PyObject *__pyx_codeobj__220;
static PyObject *__pyx_codeobj__222;
static PyObject *__pyx_codeobj__224;
static PyObject *__pyx_codeobj__226;
static PyObject *__pyx_codeobj__229;
static PyObject *__pyx_codeobj__232;
static PyObject *__pyx_codeobj__237;
static PyObject *__pyx_codeobj__240;
static PyObject *__pyx_codeobj__243;
static PyObject *__pyx_codeobj__245;
static PyObject *__pyx_codeobj__248;
static PyObject *__pyx_codeobj__251;
static PyObject *__pyx_codeobj__254;
static PyObject *__pyx_codeobj__257;
static PyObject *__pyx_codeobj__260;
static PyObject *__pyx_codeobj__265;
static PyObject *__pyx_codeobj__268;
static PyObject *__pyx_codeobj__270;
static PyObject *__pyx_codeobj__272;
static PyObject *__pyx_codeobj__274;
static PyObject *__pyx_codeobj__280;
static PyObject *__pyx_codeobj__293;
static PyObject *__pyx_codeobj__298;
static PyObject *__pyx_codeobj__301;
static PyObject *__pyx_codeobj__304;
static PyObject *__pyx_codeobj__309;
static PyObject *__pyx_codeobj__312;
static PyObject *__pyx_codeobj__315;
static PyObject *__pyx_codeobj__318;
static PyObject *__pyx_codeobj__321;
static PyObject *__pyx_codeobj__324;
static PyObject *__pyx_codeobj__329;
static PyObject *__pyx_codeobj__332;
static PyObject *__pyx_codeobj__334;
static PyObject *__pyx_codeobj__337;
static PyObject *__pyx_codeobj__339;
static PyObject *__pyx_codeobj__342;
static PyObject *__pyx_codeobj__345;
static PyObject *__pyx_codeobj__348;
static PyObject *__pyx_codeobj__353;
static PyObject *__pyx_codeobj__355;
static PyObject *__pyx_codeobj__357;
static PyObject *__pyx_codeobj__359;
static PyObject *__pyx_codeobj__361;
static PyObject *__pyx_codeobj__364;
static PyObject *__pyx_codeobj__367;
static PyObject *__pyx_codeobj__369;
static PyObject *__pyx_codeobj__372;
static PyObject *__pyx_codeobj__374;
static PyObject *__pyx_codeobj__385;
static PyObject *__pyx_codeobj__387;
static PyObject *__pyx_codeobj__390;
static PyObject *__pyx_codeobj__393;
static PyObject *__pyx_codeobj__395;
static PyObject *__pyx_codeobj__398;
static PyObject *__pyx_codeobj__400;
static PyObject *__pyx_codeobj__402;
static PyObject *__pyx_codeobj__404;
static PyObject *__pyx_codeobj__406;
static PyObject *__pyx_codeobj__408;
static PyObject *__pyx_codeobj__410;
static PyObject *__pyx_codeobj__413;
static PyObject *__pyx_codeobj__416;
static PyObject *__pyx_codeobj__418;
static PyObject *__pyx_codeobj__420;
static PyObject *__pyx_codeobj__423;
static PyObject *__pyx_codeobj__425;
static PyObject *__pyx_codeobj__427;
static PyObject *__pyx_codeobj__429;
static PyObject *__pyx_codeobj__431;
static PyObject *__pyx_codeobj__433;
static PyObject *__pyx_codeobj__435;
/* Late includes */
/* "distributed/scheduler.py":119
* bint = bool
*
* def cast(T, v, *a, **k): # <<<<<<<<<<<<<<
* return v
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_1cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_1cast = {"cast", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_11distributed_9scheduler_1cast, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_1cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
CYTHON_UNUSED PyObject *__pyx_v_T = 0;
PyObject *__pyx_v_v = 0;
CYTHON_UNUSED PyObject *__pyx_v_a = 0;
CYTHON_UNUSED PyObject *__pyx_v_k = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cast (wrapper)", 0);
__pyx_v_k = PyDict_New(); if (unlikely(!__pyx_v_k)) return NULL;
__Pyx_GOTREF(__pyx_v_k);
if (PyTuple_GET_SIZE(__pyx_args) > 2) {
__pyx_v_a = PyTuple_GetSlice(__pyx_args, 2, PyTuple_GET_SIZE(__pyx_args));
if (unlikely(!__pyx_v_a)) {
__Pyx_DECREF(__pyx_v_k); __pyx_v_k = 0;
__Pyx_RefNannyFinishContext();
return NULL;
}
__Pyx_GOTREF(__pyx_v_a);
} else {
__pyx_v_a = __pyx_empty_tuple; __Pyx_INCREF(__pyx_empty_tuple);
}
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_T,&__pyx_n_s_v,0};
PyObject* values[2] = {0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
default:
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_T)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("cast", 0, 2, 2, 1); __PYX_ERR(0, 119, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
const Py_ssize_t used_pos_args = (pos_args < 2) ? pos_args : 2;
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_k, values, used_pos_args, "cast") < 0)) __PYX_ERR(0, 119, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) < 2) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
}
__pyx_v_T = values[0];
__pyx_v_v = values[1];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("cast", 0, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 119, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_DECREF(__pyx_v_a); __pyx_v_a = 0;
__Pyx_DECREF(__pyx_v_k); __pyx_v_k = 0;
__Pyx_AddTraceback("distributed.scheduler.cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_11distributed_9scheduler_cast(__pyx_self, __pyx_v_T, __pyx_v_v, __pyx_v_a, __pyx_v_k);
/* function exit code */
__Pyx_XDECREF(__pyx_v_a);
__Pyx_XDECREF(__pyx_v_k);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_T, PyObject *__pyx_v_v, CYTHON_UNUSED PyObject *__pyx_v_a, CYTHON_UNUSED PyObject *__pyx_v_k) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cast", 0);
/* "distributed/scheduler.py":120
*
* def cast(T, v, *a, **k):
* return v # <<<<<<<<<<<<<<
*
* def ccall(func):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_v);
__pyx_r = __pyx_v_v;
goto __pyx_L0;
/* "distributed/scheduler.py":119
* bint = bool
*
* def cast(T, v, *a, **k): # <<<<<<<<<<<<<<
* return v
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":122
* return v
*
* def ccall(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_3ccall(PyObject *__pyx_self, PyObject *__pyx_v_func); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_3ccall = {"ccall", (PyCFunction)__pyx_pw_11distributed_9scheduler_3ccall, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_3ccall(PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("ccall (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_2ccall(__pyx_self, ((PyObject *)__pyx_v_func));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_2ccall(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("ccall", 0);
/* "distributed/scheduler.py":123
*
* def ccall(func):
* return func # <<<<<<<<<<<<<<
*
* def cclass(cls):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_func);
__pyx_r = __pyx_v_func;
goto __pyx_L0;
/* "distributed/scheduler.py":122
* return v
*
* def ccall(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":125
* return func
*
* def cclass(cls): # <<<<<<<<<<<<<<
* return cls
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_5cclass(PyObject *__pyx_self, PyObject *__pyx_v_cls); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_5cclass = {"cclass", (PyCFunction)__pyx_pw_11distributed_9scheduler_5cclass, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_5cclass(PyObject *__pyx_self, PyObject *__pyx_v_cls) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cclass (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_4cclass(__pyx_self, ((PyObject *)__pyx_v_cls));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_4cclass(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_cls) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cclass", 0);
/* "distributed/scheduler.py":126
*
* def cclass(cls):
* return cls # <<<<<<<<<<<<<<
*
* def cfunc(func):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_cls);
__pyx_r = __pyx_v_cls;
goto __pyx_L0;
/* "distributed/scheduler.py":125
* return func
*
* def cclass(cls): # <<<<<<<<<<<<<<
* return cls
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":128
* return cls
*
* def cfunc(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_7cfunc(PyObject *__pyx_self, PyObject *__pyx_v_func); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_7cfunc = {"cfunc", (PyCFunction)__pyx_pw_11distributed_9scheduler_7cfunc, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_7cfunc(PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cfunc (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_6cfunc(__pyx_self, ((PyObject *)__pyx_v_func));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_6cfunc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cfunc", 0);
/* "distributed/scheduler.py":129
*
* def cfunc(func):
* return func # <<<<<<<<<<<<<<
*
* def declare(*a, **k):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_func);
__pyx_r = __pyx_v_func;
goto __pyx_L0;
/* "distributed/scheduler.py":128
* return cls
*
* def cfunc(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":131
* return func
*
* def declare(*a, **k): # <<<<<<<<<<<<<<
* if len(a) == 2:
* return a[1]
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9declare(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_9declare = {"declare", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_11distributed_9scheduler_9declare, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_9declare(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_a = 0;
CYTHON_UNUSED PyObject *__pyx_v_k = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("declare (wrapper)", 0);
if (unlikely(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "declare", 1))) return NULL;
__Pyx_INCREF(__pyx_args);
__pyx_v_a = __pyx_args;
__pyx_r = __pyx_pf_11distributed_9scheduler_8declare(__pyx_self, __pyx_v_a, __pyx_v_k);
/* function exit code */
__Pyx_XDECREF(__pyx_v_a);
__Pyx_XDECREF(__pyx_v_k);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_8declare(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_a, CYTHON_UNUSED PyObject *__pyx_v_k) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
Py_ssize_t __pyx_t_1;
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("declare", 0);
/* "distributed/scheduler.py":132
*
* def declare(*a, **k):
* if len(a) == 2: # <<<<<<<<<<<<<<
* return a[1]
* else:
*/
__pyx_t_1 = PyTuple_GET_SIZE(__pyx_v_a); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 132, __pyx_L1_error)
__pyx_t_2 = ((__pyx_t_1 == 2) != 0);
if (__pyx_t_2) {
/* "distributed/scheduler.py":133
* def declare(*a, **k):
* if len(a) == 2:
* return a[1] # <<<<<<<<<<<<<<
* else:
* pass
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_3 = __Pyx_GetItemInt_Tuple(__pyx_v_a, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 133, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":132
*
* def declare(*a, **k):
* if len(a) == 2: # <<<<<<<<<<<<<<
* return a[1]
* else:
*/
}
/* "distributed/scheduler.py":135
* return a[1]
* else:
* pass # <<<<<<<<<<<<<<
*
* def exceptval(*a, **k):
*/
/*else*/ {
}
/* "distributed/scheduler.py":131
* return func
*
* def declare(*a, **k): # <<<<<<<<<<<<<<
* if len(a) == 2:
* return a[1]
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("distributed.scheduler.declare", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":137
* pass
*
* def exceptval(*a, **k): # <<<<<<<<<<<<<<
* def wrapper(func):
* return func
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11exceptval(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_11exceptval = {"exceptval", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_11distributed_9scheduler_11exceptval, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_11exceptval(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
CYTHON_UNUSED PyObject *__pyx_v_a = 0;
CYTHON_UNUSED PyObject *__pyx_v_k = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("exceptval (wrapper)", 0);
if (unlikely(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "exceptval", 1))) return NULL;
__Pyx_INCREF(__pyx_args);
__pyx_v_a = __pyx_args;
__pyx_r = __pyx_pf_11distributed_9scheduler_10exceptval(__pyx_self, __pyx_v_a, __pyx_v_k);
/* function exit code */
__Pyx_XDECREF(__pyx_v_a);
__Pyx_XDECREF(__pyx_v_k);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":138
*
* def exceptval(*a, **k):
* def wrapper(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9exceptval_1wrapper(PyObject *__pyx_self, PyObject *__pyx_v_func); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_9exceptval_1wrapper = {"wrapper", (PyCFunction)__pyx_pw_11distributed_9scheduler_9exceptval_1wrapper, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_9exceptval_1wrapper(PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("wrapper (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9exceptval_wrapper(__pyx_self, ((PyObject *)__pyx_v_func));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9exceptval_wrapper(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("wrapper", 0);
/* "distributed/scheduler.py":139
* def exceptval(*a, **k):
* def wrapper(func):
* return func # <<<<<<<<<<<<<<
*
* return wrapper
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_func);
__pyx_r = __pyx_v_func;
goto __pyx_L0;
/* "distributed/scheduler.py":138
*
* def exceptval(*a, **k):
* def wrapper(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":137
* pass
*
* def exceptval(*a, **k): # <<<<<<<<<<<<<<
* def wrapper(func):
* return func
*/
static PyObject *__pyx_pf_11distributed_9scheduler_10exceptval(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_a, CYTHON_UNUSED PyObject *__pyx_v_k) {
PyObject *__pyx_v_wrapper = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("exceptval", 0);
/* "distributed/scheduler.py":138
*
* def exceptval(*a, **k):
* def wrapper(func): # <<<<<<<<<<<<<<
* return func
*
*/
__pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_11distributed_9scheduler_9exceptval_1wrapper, 0, __pyx_n_s_exceptval_locals_wrapper, NULL, __pyx_n_s_distributed_scheduler, __pyx_d, ((PyObject *)__pyx_codeobj__2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 138, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_wrapper = __pyx_t_1;
__pyx_t_1 = 0;
/* "distributed/scheduler.py":141
* return func
*
* return wrapper # <<<<<<<<<<<<<<
*
* def final(cls):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_wrapper);
__pyx_r = __pyx_v_wrapper;
goto __pyx_L0;
/* "distributed/scheduler.py":137
* pass
*
* def exceptval(*a, **k): # <<<<<<<<<<<<<<
* def wrapper(func):
* return func
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.exceptval", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_wrapper);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":143
* return wrapper
*
* def final(cls): # <<<<<<<<<<<<<<
* return cls
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_13final(PyObject *__pyx_self, PyObject *__pyx_v_cls); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_13final = {"final", (PyCFunction)__pyx_pw_11distributed_9scheduler_13final, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_13final(PyObject *__pyx_self, PyObject *__pyx_v_cls) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("final (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_12final(__pyx_self, ((PyObject *)__pyx_v_cls));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_12final(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_cls) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("final", 0);
/* "distributed/scheduler.py":144
*
* def final(cls):
* return cls # <<<<<<<<<<<<<<
*
* def inline(func):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_cls);
__pyx_r = __pyx_v_cls;
goto __pyx_L0;
/* "distributed/scheduler.py":143
* return wrapper
*
* def final(cls): # <<<<<<<<<<<<<<
* return cls
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":146
* return cls
*
* def inline(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_15inline(PyObject *__pyx_self, PyObject *__pyx_v_func); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_15inline = {"inline", (PyCFunction)__pyx_pw_11distributed_9scheduler_15inline, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_15inline(PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("inline (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_14inline(__pyx_self, ((PyObject *)__pyx_v_func));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_14inline(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("inline", 0);
/* "distributed/scheduler.py":147
*
* def inline(func):
* return func # <<<<<<<<<<<<<<
*
* def nogil(func):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_func);
__pyx_r = __pyx_v_func;
goto __pyx_L0;
/* "distributed/scheduler.py":146
* return cls
*
* def inline(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":149
* return func
*
* def nogil(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_17nogil(PyObject *__pyx_self, PyObject *__pyx_v_func); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_17nogil = {"nogil", (PyCFunction)__pyx_pw_11distributed_9scheduler_17nogil, METH_O, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_17nogil(PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("nogil (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_16nogil(__pyx_self, ((PyObject *)__pyx_v_func));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_16nogil(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_func) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("nogil", 0);
/* "distributed/scheduler.py":150
*
* def nogil(func):
* return func # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_func);
__pyx_r = __pyx_v_func;
goto __pyx_L0;
/* "distributed/scheduler.py":149
* return func
*
* def nogil(func): # <<<<<<<<<<<<<<
* return func
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":222
* __slots__ = ("_client_key", "_hash", "_wants_what", "_last_seen", "_versions")
*
* def __init__(self, client: str, versions: dict = None): # <<<<<<<<<<<<<<
* self._client_key = client
* self._hash = hash(client)
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_11ClientState_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_pw_11distributed_9scheduler_11ClientState_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_client = 0;
PyObject *__pyx_v_versions = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_client,&__pyx_n_s_versions,0};
PyObject* values[2] = {0,0};
values[1] = ((PyObject*)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_client)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_versions);
if (value) { values[1] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 222, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
__pyx_v_client = ((PyObject*)values[0]);
__pyx_v_versions = ((PyObject*)values[1]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 222, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.ClientState.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_client), (&PyUnicode_Type), 1, "client", 1))) __PYX_ERR(0, 222, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_versions), (&PyDict_Type), 1, "versions", 1))) __PYX_ERR(0, 222, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState___init__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self), __pyx_v_client, __pyx_v_versions);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_11ClientState___init__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self, PyObject *__pyx_v_client, PyObject *__pyx_v_versions) {
int __pyx_r;
__Pyx_RefNannyDeclarations
Py_hash_t __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
double __pyx_t_5;
int __pyx_t_6;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
/* "distributed/scheduler.py":223
*
* def __init__(self, client: str, versions: dict = None):
* self._client_key = client # <<<<<<<<<<<<<<
* self._hash = hash(client)
* self._wants_what = set()
*/
__Pyx_INCREF(__pyx_v_client);
__Pyx_GIVEREF(__pyx_v_client);
__Pyx_GOTREF(__pyx_v_self->_client_key);
__Pyx_DECREF(__pyx_v_self->_client_key);
__pyx_v_self->_client_key = __pyx_v_client;
/* "distributed/scheduler.py":224
* def __init__(self, client: str, versions: dict = None):
* self._client_key = client
* self._hash = hash(client) # <<<<<<<<<<<<<<
* self._wants_what = set()
* self._last_seen = time()
*/
__pyx_t_1 = PyObject_Hash(__pyx_v_client); if (unlikely(__pyx_t_1 == ((Py_hash_t)-1))) __PYX_ERR(0, 224, __pyx_L1_error)
__pyx_v_self->_hash = __pyx_t_1;
/* "distributed/scheduler.py":225
* self._client_key = client
* self._hash = hash(client)
* self._wants_what = set() # <<<<<<<<<<<<<<
* self._last_seen = time()
* self._versions = versions or {}
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 225, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_wants_what);
__Pyx_DECREF(__pyx_v_self->_wants_what);
__pyx_v_self->_wants_what = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":226
* self._hash = hash(client)
* self._wants_what = set()
* self._last_seen = time() # <<<<<<<<<<<<<<
* self._versions = versions or {}
*
*/
__Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_time); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_3, function);
}
}
__pyx_t_2 = (__pyx_t_4) ? __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4) : __Pyx_PyObject_CallNoArg(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_2); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 226, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_self->_last_seen = __pyx_t_5;
/* "distributed/scheduler.py":227
* self._wants_what = set()
* self._last_seen = time()
* self._versions = versions or {} # <<<<<<<<<<<<<<
*
* def __hash__(self):
*/
__pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_versions); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(0, 227, __pyx_L1_error)
if (!__pyx_t_6) {
} else {
__Pyx_INCREF(__pyx_v_versions);
__pyx_t_2 = __pyx_v_versions;
goto __pyx_L3_bool_binop_done;
}
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_3);
__pyx_t_2 = __pyx_t_3;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_L3_bool_binop_done:;
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_versions);
__Pyx_DECREF(__pyx_v_self->_versions);
__pyx_v_self->_versions = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":222
* __slots__ = ("_client_key", "_hash", "_wants_what", "_last_seen", "_versions")
*
* def __init__(self, client: str, versions: dict = None): # <<<<<<<<<<<<<<
* self._client_key = client
* self._hash = hash(client)
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.ClientState.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":229
* self._versions = versions or {}
*
* def __hash__(self): # <<<<<<<<<<<<<<
* return self._hash
*
*/
/* Python wrapper */
static Py_hash_t __pyx_pw_11distributed_9scheduler_11ClientState_3__hash__(PyObject *__pyx_v_self); /*proto*/
static Py_hash_t __pyx_pw_11distributed_9scheduler_11ClientState_3__hash__(PyObject *__pyx_v_self) {
Py_hash_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__hash__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_2__hash__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static Py_hash_t __pyx_pf_11distributed_9scheduler_11ClientState_2__hash__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
Py_hash_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__hash__", 0);
/* "distributed/scheduler.py":230
*
* def __hash__(self):
* return self._hash # <<<<<<<<<<<<<<
*
* def __eq__(self, other):
*/
__pyx_r = __pyx_v_self->_hash;
goto __pyx_L0;
/* "distributed/scheduler.py":229
* self._versions = versions or {}
*
* def __hash__(self): # <<<<<<<<<<<<<<
* return self._hash
*
*/
/* function exit code */
__pyx_L0:;
if (unlikely(__pyx_r == -1) && !PyErr_Occurred()) __pyx_r = -2;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":232
* return self._hash
*
* def __eq__(self, other): # <<<<<<<<<<<<<<
* typ_self: type = type(self)
* typ_other: type = type(other)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__eq__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_4__eq__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self), ((PyObject *)__pyx_v_other));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_4__eq__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self, PyObject *__pyx_v_other) {
PyTypeObject *__pyx_v_typ_self = 0;
PyTypeObject *__pyx_v_typ_other = 0;
struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_other_cs = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__eq__", 0);
/* "distributed/scheduler.py":233
*
* def __eq__(self, other):
* typ_self: type = type(self) # <<<<<<<<<<<<<<
* typ_other: type = type(other)
* if typ_self == typ_other:
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_v_typ_self = ((PyTypeObject*)((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
/* "distributed/scheduler.py":234
* def __eq__(self, other):
* typ_self: type = type(self)
* typ_other: type = type(other) # <<<<<<<<<<<<<<
* if typ_self == typ_other:
* other_cs: ClientState = other
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_other)));
__pyx_v_typ_other = ((PyTypeObject*)((PyObject *)Py_TYPE(__pyx_v_other)));
/* "distributed/scheduler.py":235
* typ_self: type = type(self)
* typ_other: type = type(other)
* if typ_self == typ_other: # <<<<<<<<<<<<<<
* other_cs: ClientState = other
* return self._client_key == other_cs._client_key
*/
__pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_v_typ_self), ((PyObject *)__pyx_v_typ_other), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 235, __pyx_L1_error)
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 235, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_2) {
/* "distributed/scheduler.py":236
* typ_other: type = type(other)
* if typ_self == typ_other:
* other_cs: ClientState = other # <<<<<<<<<<<<<<
* return self._client_key == other_cs._client_key
* else:
*/
if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_11distributed_9scheduler_ClientState))))) __PYX_ERR(0, 236, __pyx_L1_error)
__pyx_t_1 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_other_cs = ((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":237
* if typ_self == typ_other:
* other_cs: ClientState = other
* return self._client_key == other_cs._client_key # <<<<<<<<<<<<<<
* else:
* return False
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_v_self->_client_key, __pyx_v_other_cs->_client_key, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 237, __pyx_L1_error)
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":235
* typ_self: type = type(self)
* typ_other: type = type(other)
* if typ_self == typ_other: # <<<<<<<<<<<<<<
* other_cs: ClientState = other
* return self._client_key == other_cs._client_key
*/
}
/* "distributed/scheduler.py":239
* return self._client_key == other_cs._client_key
* else:
* return False # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(Py_False);
__pyx_r = Py_False;
goto __pyx_L0;
}
/* "distributed/scheduler.py":232
* return self._hash
*
* def __eq__(self, other): # <<<<<<<<<<<<<<
* typ_self: type = type(self)
* typ_other: type = type(other)
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.ClientState.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_typ_self);
__Pyx_XDECREF(__pyx_v_typ_other);
__Pyx_XDECREF((PyObject *)__pyx_v_other_cs);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":241
* return False
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return "<Client '%s'>" % self._client_key
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_7__repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_7__repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__repr__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_6__repr__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_6__repr__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__repr__", 0);
/* "distributed/scheduler.py":242
*
* def __repr__(self):
* return "<Client '%s'>" % self._client_key # <<<<<<<<<<<<<<
*
* def __str__(self):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyUnicode_Format(__pyx_kp_u_Client_s, __pyx_v_self->_client_key); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 242, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":241
* return False
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return "<Client '%s'>" % self._client_key
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.ClientState.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":244
* return "<Client '%s'>" % self._client_key
*
* def __str__(self): # <<<<<<<<<<<<<<
* return self._client_key
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_9__str__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_9__str__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__str__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_8__str__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_8__str__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__str__", 0);
/* "distributed/scheduler.py":245
*
* def __str__(self):
* return self._client_key # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_client_key);
__pyx_r = __pyx_v_self->_client_key;
goto __pyx_L0;
/* "distributed/scheduler.py":244
* return "<Client '%s'>" % self._client_key
*
* def __str__(self): # <<<<<<<<<<<<<<
* return self._client_key
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":248
*
* @property
* def client_key(self): # <<<<<<<<<<<<<<
* return self._client_key
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_10client_key_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_10client_key_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_10client_key___get__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_10client_key___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":249
* @property
* def client_key(self):
* return self._client_key # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_client_key);
__pyx_r = __pyx_v_self->_client_key;
goto __pyx_L0;
/* "distributed/scheduler.py":248
*
* @property
* def client_key(self): # <<<<<<<<<<<<<<
* return self._client_key
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":252
*
* @property
* def wants_what(self): # <<<<<<<<<<<<<<
* return self._wants_what
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_10wants_what_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_10wants_what_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_10wants_what___get__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_10wants_what___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":253
* @property
* def wants_what(self):
* return self._wants_what # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_wants_what);
__pyx_r = __pyx_v_self->_wants_what;
goto __pyx_L0;
/* "distributed/scheduler.py":252
*
* @property
* def wants_what(self): # <<<<<<<<<<<<<<
* return self._wants_what
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":256
*
* @property
* def last_seen(self): # <<<<<<<<<<<<<<
* return self._last_seen
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_9last_seen_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_9last_seen_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_9last_seen___get__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_9last_seen___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":257
* @property
* def last_seen(self):
* return self._last_seen # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_last_seen); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 257, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":256
*
* @property
* def last_seen(self): # <<<<<<<<<<<<<<
* return self._last_seen
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.ClientState.last_seen.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":260
*
* @property
* def versions(self): # <<<<<<<<<<<<<<
* return self._versions
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_8versions_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_8versions_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_8versions___get__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_8versions___get__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":261
* @property
* def versions(self):
* return self._versions # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_versions);
__pyx_r = __pyx_v_self->_versions;
goto __pyx_L0;
/* "distributed/scheduler.py":260
*
* @property
* def versions(self): # <<<<<<<<<<<<<<
* return self._versions
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_11__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_11__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_10__reduce_cython__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_10__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self) {
PyObject *__pyx_v_state = 0;
PyObject *__pyx_v__dict = 0;
int __pyx_v_use_setstate;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_t_4;
int __pyx_t_5;
int __pyx_t_6;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__reduce_cython__", 0);
/* "(tree fragment)":5
* cdef object _dict
* cdef bint use_setstate
* state = (self._client_key, self._hash, self._last_seen, self._versions, self._wants_what) # <<<<<<<<<<<<<<
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
*/
__pyx_t_1 = __Pyx_PyInt_FromHash_t(__pyx_v_self->_hash); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyFloat_FromDouble(__pyx_v_self->_last_seen); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyTuple_New(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_self->_client_key);
__Pyx_GIVEREF(__pyx_v_self->_client_key);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self->_client_key);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2);
__Pyx_INCREF(__pyx_v_self->_versions);
__Pyx_GIVEREF(__pyx_v_self->_versions);
PyTuple_SET_ITEM(__pyx_t_3, 3, __pyx_v_self->_versions);
__Pyx_INCREF(__pyx_v_self->_wants_what);
__Pyx_GIVEREF(__pyx_v_self->_wants_what);
PyTuple_SET_ITEM(__pyx_t_3, 4, __pyx_v_self->_wants_what);
__pyx_t_1 = 0;
__pyx_t_2 = 0;
__pyx_v_state = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "(tree fragment)":6
* cdef bint use_setstate
* state = (self._client_key, self._hash, self._last_seen, self._versions, self._wants_what)
* _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<<
* if _dict is not None:
* state += (_dict,)
*/
__pyx_t_3 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v__dict = __pyx_t_3;
__pyx_t_3 = 0;
/* "(tree fragment)":7
* state = (self._client_key, self._hash, self._last_seen, self._versions, self._wants_what)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
__pyx_t_4 = (__pyx_v__dict != Py_None);
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
/* "(tree fragment)":8
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
* state += (_dict,) # <<<<<<<<<<<<<<
* use_setstate = True
* else:
*/
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v__dict);
__Pyx_GIVEREF(__pyx_v__dict);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v__dict);
__pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_2));
__pyx_t_2 = 0;
/* "(tree fragment)":9
* if _dict is not None:
* state += (_dict,)
* use_setstate = True # <<<<<<<<<<<<<<
* else:
* use_setstate = self._client_key is not None or self._versions is not None or self._wants_what is not None
*/
__pyx_v_use_setstate = 1;
/* "(tree fragment)":7
* state = (self._client_key, self._hash, self._last_seen, self._versions, self._wants_what)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
goto __pyx_L3;
}
/* "(tree fragment)":11
* use_setstate = True
* else:
* use_setstate = self._client_key is not None or self._versions is not None or self._wants_what is not None # <<<<<<<<<<<<<<
* if use_setstate:
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, None), state
*/
/*else*/ {
__pyx_t_4 = (__pyx_v_self->_client_key != ((PyObject*)Py_None));
__pyx_t_6 = (__pyx_t_4 != 0);
if (!__pyx_t_6) {
} else {
__pyx_t_5 = __pyx_t_6;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_6 = (__pyx_v_self->_versions != ((PyObject*)Py_None));
__pyx_t_4 = (__pyx_t_6 != 0);
if (!__pyx_t_4) {
} else {
__pyx_t_5 = __pyx_t_4;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_4 = (__pyx_v_self->_wants_what != ((PyObject*)Py_None));
__pyx_t_6 = (__pyx_t_4 != 0);
__pyx_t_5 = __pyx_t_6;
__pyx_L4_bool_binop_done:;
__pyx_v_use_setstate = __pyx_t_5;
}
__pyx_L3:;
/* "(tree fragment)":12
* else:
* use_setstate = self._client_key is not None or self._versions is not None or self._wants_what is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, None), state
* else:
*/
__pyx_t_5 = (__pyx_v_use_setstate != 0);
if (__pyx_t_5) {
/* "(tree fragment)":13
* use_setstate = self._client_key is not None or self._versions is not None or self._wants_what is not None
* if use_setstate:
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, None), state # <<<<<<<<<<<<<<
* else:
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, state)
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pyx_unpickle_ClientState); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_59694385);
__Pyx_GIVEREF(__pyx_int_59694385);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_int_59694385);
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
PyTuple_SET_ITEM(__pyx_t_3, 2, Py_None);
__pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state);
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "(tree fragment)":12
* else:
* use_setstate = self._client_key is not None or self._versions is not None or self._wants_what is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, None), state
* else:
*/
}
/* "(tree fragment)":15
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, None), state
* else:
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, state) # <<<<<<<<<<<<<<
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_ClientState__set_state(self, __pyx_state)
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pyx_unpickle_ClientState); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_59694385);
__Pyx_GIVEREF(__pyx_int_59694385);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_int_59694385);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state);
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_3);
__pyx_t_1 = 0;
__pyx_t_3 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("distributed.scheduler.ClientState.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_state);
__Pyx_XDECREF(__pyx_v__dict);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_ClientState__set_state(self, __pyx_state)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_13__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11ClientState_13__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11ClientState_12__setstate_cython__(((struct __pyx_obj_11distributed_9scheduler_ClientState *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11ClientState_12__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_ClientState *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__setstate_cython__", 0);
/* "(tree fragment)":17
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, state)
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_ClientState__set_state(self, __pyx_state) # <<<<<<<<<<<<<<
*/
if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(1, 17, __pyx_L1_error)
__pyx_t_1 = __pyx_f_11distributed_9scheduler___pyx_unpickle_ClientState__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_ClientState, (type(self), 0x38edd31, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_ClientState__set_state(self, __pyx_state)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.ClientState.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":405
* )
*
* def __init__( # <<<<<<<<<<<<<<
* self,
* address: str = None,
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_11WorkerState_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_pw_11distributed_9scheduler_11WorkerState_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_address = 0;
Py_ssize_t __pyx_v_pid;
PyObject *__pyx_v_name = 0;
Py_ssize_t __pyx_v_nthreads;
Py_ssize_t __pyx_v_memory_limit;
PyObject *__pyx_v_local_directory = 0;
PyObject *__pyx_v_services = 0;
PyObject *__pyx_v_versions = 0;
PyObject *__pyx_v_nanny = 0;
PyObject *__pyx_v_extra = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_address,&__pyx_n_s_pid,&__pyx_n_s_name,&__pyx_n_s_nthreads,&__pyx_n_s_memory_limit,&__pyx_n_s_local_directory,&__pyx_n_s_services,&__pyx_n_s_versions,&__pyx_n_s_nanny,&__pyx_n_s_extra,0};
PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
/* "distributed/scheduler.py":407
* def __init__(
* self,
* address: str = None, # <<<<<<<<<<<<<<
* pid: Py_ssize_t = 0,
* name: object = None,
*/
values[0] = ((PyObject*)Py_None);
/* "distributed/scheduler.py":409
* address: str = None,
* pid: Py_ssize_t = 0,
* name: object = None, # <<<<<<<<<<<<<<
* nthreads: Py_ssize_t = 0,
* memory_limit: Py_ssize_t = 0,
*/
values[2] = ((PyObject *)Py_None);
/* "distributed/scheduler.py":412
* nthreads: Py_ssize_t = 0,
* memory_limit: Py_ssize_t = 0,
* local_directory: str = None, # <<<<<<<<<<<<<<
* services: dict = None,
* versions: dict = None,
*/
values[5] = ((PyObject*)Py_None);
/* "distributed/scheduler.py":413
* memory_limit: Py_ssize_t = 0,
* local_directory: str = None,
* services: dict = None, # <<<<<<<<<<<<<<
* versions: dict = None,
* nanny: str = None,
*/
values[6] = ((PyObject*)Py_None);
/* "distributed/scheduler.py":414
* local_directory: str = None,
* services: dict = None,
* versions: dict = None, # <<<<<<<<<<<<<<
* nanny: str = None,
* extra: dict = None,
*/
values[7] = ((PyObject*)Py_None);
/* "distributed/scheduler.py":415
* services: dict = None,
* versions: dict = None,
* nanny: str = None, # <<<<<<<<<<<<<<
* extra: dict = None,
* ):
*/
values[8] = ((PyObject*)Py_None);
/* "distributed/scheduler.py":416
* versions: dict = None,
* nanny: str = None,
* extra: dict = None, # <<<<<<<<<<<<<<
* ):
* self._address = address
*/
values[9] = ((PyObject*)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
CYTHON_FALLTHROUGH;
case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
CYTHON_FALLTHROUGH;
case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
CYTHON_FALLTHROUGH;
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_address);
if (value) { values[0] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pid);
if (value) { values[1] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_name);
if (value) { values[2] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_nthreads);
if (value) { values[3] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_memory_limit);
if (value) { values[4] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_local_directory);
if (value) { values[5] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 6:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_services);
if (value) { values[6] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 7:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_versions);
if (value) { values[7] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 8:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_nanny);
if (value) { values[8] = value; kw_args--; }
}
CYTHON_FALLTHROUGH;
case 9:
if (kw_args > 0) {
PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_extra);
if (value) { values[9] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 405, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
CYTHON_FALLTHROUGH;
case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
CYTHON_FALLTHROUGH;
case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
CYTHON_FALLTHROUGH;
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
}
__pyx_v_address = ((PyObject*)values[0]);
if (values[1]) {
__pyx_v_pid = __Pyx_PyIndex_AsSsize_t(values[1]); if (unlikely((__pyx_v_pid == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 408, __pyx_L3_error)
} else {
__pyx_v_pid = ((Py_ssize_t)0);
}
__pyx_v_name = values[2];
if (values[3]) {
__pyx_v_nthreads = __Pyx_PyIndex_AsSsize_t(values[3]); if (unlikely((__pyx_v_nthreads == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 410, __pyx_L3_error)
} else {
__pyx_v_nthreads = ((Py_ssize_t)0);
}
if (values[4]) {
__pyx_v_memory_limit = __Pyx_PyIndex_AsSsize_t(values[4]); if (unlikely((__pyx_v_memory_limit == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 411, __pyx_L3_error)
} else {
__pyx_v_memory_limit = ((Py_ssize_t)0);
}
__pyx_v_local_directory = ((PyObject*)values[5]);
__pyx_v_services = ((PyObject*)values[6]);
__pyx_v_versions = ((PyObject*)values[7]);
__pyx_v_nanny = ((PyObject*)values[8]);
__pyx_v_extra = ((PyObject*)values[9]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 10, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 405, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.WorkerState.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_address), (&PyUnicode_Type), 1, "address", 1))) __PYX_ERR(0, 407, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_local_directory), (&PyUnicode_Type), 1, "local_directory", 1))) __PYX_ERR(0, 412, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_services), (&PyDict_Type), 1, "services", 1))) __PYX_ERR(0, 413, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_versions), (&PyDict_Type), 1, "versions", 1))) __PYX_ERR(0, 414, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nanny), (&PyUnicode_Type), 1, "nanny", 1))) __PYX_ERR(0, 415, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_extra), (&PyDict_Type), 1, "extra", 1))) __PYX_ERR(0, 416, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState___init__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self), __pyx_v_address, __pyx_v_pid, __pyx_v_name, __pyx_v_nthreads, __pyx_v_memory_limit, __pyx_v_local_directory, __pyx_v_services, __pyx_v_versions, __pyx_v_nanny, __pyx_v_extra);
/* "distributed/scheduler.py":405
* )
*
* def __init__( # <<<<<<<<<<<<<<
* self,
* address: str = None,
*/
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_11WorkerState___init__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v_address, Py_ssize_t __pyx_v_pid, PyObject *__pyx_v_name, Py_ssize_t __pyx_v_nthreads, Py_ssize_t __pyx_v_memory_limit, PyObject *__pyx_v_local_directory, PyObject *__pyx_v_services, PyObject *__pyx_v_versions, PyObject *__pyx_v_nanny, PyObject *__pyx_v_extra) {
int __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
Py_hash_t __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
double __pyx_t_8;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
/* "distributed/scheduler.py":418
* extra: dict = None,
* ):
* self._address = address # <<<<<<<<<<<<<<
* self._pid = pid
* self._name = name
*/
__Pyx_INCREF(__pyx_v_address);
__Pyx_GIVEREF(__pyx_v_address);
__Pyx_GOTREF(__pyx_v_self->_address);
__Pyx_DECREF(__pyx_v_self->_address);
__pyx_v_self->_address = __pyx_v_address;
/* "distributed/scheduler.py":419
* ):
* self._address = address
* self._pid = pid # <<<<<<<<<<<<<<
* self._name = name
* self._nthreads = nthreads
*/
__pyx_v_self->_pid = __pyx_v_pid;
/* "distributed/scheduler.py":420
* self._address = address
* self._pid = pid
* self._name = name # <<<<<<<<<<<<<<
* self._nthreads = nthreads
* self._memory_limit = memory_limit
*/
__Pyx_INCREF(__pyx_v_name);
__Pyx_GIVEREF(__pyx_v_name);
__Pyx_GOTREF(__pyx_v_self->_name);
__Pyx_DECREF(__pyx_v_self->_name);
__pyx_v_self->_name = __pyx_v_name;
/* "distributed/scheduler.py":421
* self._pid = pid
* self._name = name
* self._nthreads = nthreads # <<<<<<<<<<<<<<
* self._memory_limit = memory_limit
* self._local_directory = local_directory
*/
__pyx_v_self->_nthreads = __pyx_v_nthreads;
/* "distributed/scheduler.py":422
* self._name = name
* self._nthreads = nthreads
* self._memory_limit = memory_limit # <<<<<<<<<<<<<<
* self._local_directory = local_directory
* self._services = services or {}
*/
__pyx_v_self->_memory_limit = __pyx_v_memory_limit;
/* "distributed/scheduler.py":423
* self._nthreads = nthreads
* self._memory_limit = memory_limit
* self._local_directory = local_directory # <<<<<<<<<<<<<<
* self._services = services or {}
* self._versions = versions or {}
*/
__Pyx_INCREF(__pyx_v_local_directory);
__Pyx_GIVEREF(__pyx_v_local_directory);
__Pyx_GOTREF(__pyx_v_self->_local_directory);
__Pyx_DECREF(__pyx_v_self->_local_directory);
__pyx_v_self->_local_directory = __pyx_v_local_directory;
/* "distributed/scheduler.py":424
* self._memory_limit = memory_limit
* self._local_directory = local_directory
* self._services = services or {} # <<<<<<<<<<<<<<
* self._versions = versions or {}
* self._nanny = nanny
*/
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_services); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 424, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__Pyx_INCREF(__pyx_v_services);
__pyx_t_1 = __pyx_v_services;
goto __pyx_L3_bool_binop_done;
}
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_3);
__pyx_t_1 = __pyx_t_3;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_L3_bool_binop_done:;
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_services);
__Pyx_DECREF(__pyx_v_self->_services);
__pyx_v_self->_services = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":425
* self._local_directory = local_directory
* self._services = services or {}
* self._versions = versions or {} # <<<<<<<<<<<<<<
* self._nanny = nanny
*
*/
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_versions); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 425, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__Pyx_INCREF(__pyx_v_versions);
__pyx_t_1 = __pyx_v_versions;
goto __pyx_L5_bool_binop_done;
}
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 425, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_3);
__pyx_t_1 = __pyx_t_3;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_L5_bool_binop_done:;
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_versions);
__Pyx_DECREF(__pyx_v_self->_versions);
__pyx_v_self->_versions = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":426
* self._services = services or {}
* self._versions = versions or {}
* self._nanny = nanny # <<<<<<<<<<<<<<
*
* self._hash = hash(address)
*/
__Pyx_INCREF(__pyx_v_nanny);
__Pyx_GIVEREF(__pyx_v_nanny);
__Pyx_GOTREF(__pyx_v_self->_nanny);
__Pyx_DECREF(__pyx_v_self->_nanny);
__pyx_v_self->_nanny = __pyx_v_nanny;
/* "distributed/scheduler.py":428
* self._nanny = nanny
*
* self._hash = hash(address) # <<<<<<<<<<<<<<
* self._status = Status.running
* self._nbytes = 0
*/
__pyx_t_4 = PyObject_Hash(__pyx_v_address); if (unlikely(__pyx_t_4 == ((Py_hash_t)-1))) __PYX_ERR(0, 428, __pyx_L1_error)
__pyx_v_self->_hash = __pyx_t_4;
/* "distributed/scheduler.py":429
*
* self._hash = hash(address)
* self._status = Status.running # <<<<<<<<<<<<<<
* self._nbytes = 0
* self._occupancy = 0
*/
__Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_Status); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 429, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_running); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 429, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_status);
__Pyx_DECREF(__pyx_v_self->_status);
__pyx_v_self->_status = __pyx_t_3;
__pyx_t_3 = 0;
/* "distributed/scheduler.py":430
* self._hash = hash(address)
* self._status = Status.running
* self._nbytes = 0 # <<<<<<<<<<<<<<
* self._occupancy = 0
* self._metrics = {}
*/
__pyx_v_self->_nbytes = 0;
/* "distributed/scheduler.py":431
* self._status = Status.running
* self._nbytes = 0
* self._occupancy = 0 # <<<<<<<<<<<<<<
* self._metrics = {}
* self._last_seen = 0
*/
__pyx_v_self->_occupancy = 0.0;
/* "distributed/scheduler.py":432
* self._nbytes = 0
* self._occupancy = 0
* self._metrics = {} # <<<<<<<<<<<<<<
* self._last_seen = 0
* self._time_delay = 0
*/
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_metrics);
__Pyx_DECREF(__pyx_v_self->_metrics);
__pyx_v_self->_metrics = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":433
* self._occupancy = 0
* self._metrics = {}
* self._last_seen = 0 # <<<<<<<<<<<<<<
* self._time_delay = 0
* self._bandwidth = float(
*/
__pyx_v_self->_last_seen = 0.0;
/* "distributed/scheduler.py":434
* self._metrics = {}
* self._last_seen = 0
* self._time_delay = 0 # <<<<<<<<<<<<<<
* self._bandwidth = float(
* parse_bytes(dask.config.get("distributed.scheduler.bandwidth"))
*/
__pyx_v_self->_time_delay = 0.0;
/* "distributed/scheduler.py":436
* self._time_delay = 0
* self._bandwidth = float(
* parse_bytes(dask.config.get("distributed.scheduler.bandwidth")) # <<<<<<<<<<<<<<
* )
*
*/
__Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_parse_bytes); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_dask); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_config); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_get); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
}
}
__pyx_t_5 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_7, __pyx_kp_u_distributed_scheduler_bandwidth) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_kp_u_distributed_scheduler_bandwidth);
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
}
}
__pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_6, __pyx_t_5) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":435
* self._last_seen = 0
* self._time_delay = 0
* self._bandwidth = float( # <<<<<<<<<<<<<<
* parse_bytes(dask.config.get("distributed.scheduler.bandwidth"))
* )
*/
__pyx_t_8 = __Pyx_PyObject_AsDouble(__pyx_t_3); if (unlikely(__pyx_t_8 == ((double)((double)-1)) && PyErr_Occurred())) __PYX_ERR(0, 435, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_self->_bandwidth = __pyx_t_8;
/* "distributed/scheduler.py":439
* )
*
* self._actors = set() # <<<<<<<<<<<<<<
* self._has_what = set()
* self._processing = {}
*/
__pyx_t_3 = PySet_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 439, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_actors);
__Pyx_DECREF(__pyx_v_self->_actors);
__pyx_v_self->_actors = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":440
*
* self._actors = set()
* self._has_what = set() # <<<<<<<<<<<<<<
* self._processing = {}
* self._executing = {}
*/
__pyx_t_3 = PySet_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 440, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_has_what);
__Pyx_DECREF(__pyx_v_self->_has_what);
__pyx_v_self->_has_what = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":441
* self._actors = set()
* self._has_what = set()
* self._processing = {} # <<<<<<<<<<<<<<
* self._executing = {}
* self._resources = {}
*/
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_processing);
__Pyx_DECREF(__pyx_v_self->_processing);
__pyx_v_self->_processing = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":442
* self._has_what = set()
* self._processing = {}
* self._executing = {} # <<<<<<<<<<<<<<
* self._resources = {}
* self._used_resources = {}
*/
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_executing);
__Pyx_DECREF(__pyx_v_self->_executing);
__pyx_v_self->_executing = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":443
* self._processing = {}
* self._executing = {}
* self._resources = {} # <<<<<<<<<<<<<<
* self._used_resources = {}
*
*/
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_resources);
__Pyx_DECREF(__pyx_v_self->_resources);
__pyx_v_self->_resources = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":444
* self._executing = {}
* self._resources = {}
* self._used_resources = {} # <<<<<<<<<<<<<<
*
* self._extra = extra or {}
*/
__pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 444, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_used_resources);
__Pyx_DECREF(__pyx_v_self->_used_resources);
__pyx_v_self->_used_resources = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":446
* self._used_resources = {}
*
* self._extra = extra or {} # <<<<<<<<<<<<<<
*
* def __hash__(self):
*/
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_extra); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 446, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__Pyx_INCREF(__pyx_v_extra);
__pyx_t_3 = __pyx_v_extra;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_1);
__pyx_t_3 = __pyx_t_1;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_L7_bool_binop_done:;
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->_extra);
__Pyx_DECREF(__pyx_v_self->_extra);
__pyx_v_self->_extra = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "distributed/scheduler.py":405
* )
*
* def __init__( # <<<<<<<<<<<<<<
* self,
* address: str = None,
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":448
* self._extra = extra or {}
*
* def __hash__(self): # <<<<<<<<<<<<<<
* return self._hash
*
*/
/* Python wrapper */
static Py_hash_t __pyx_pw_11distributed_9scheduler_11WorkerState_3__hash__(PyObject *__pyx_v_self); /*proto*/
static Py_hash_t __pyx_pw_11distributed_9scheduler_11WorkerState_3__hash__(PyObject *__pyx_v_self) {
Py_hash_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__hash__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_2__hash__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static Py_hash_t __pyx_pf_11distributed_9scheduler_11WorkerState_2__hash__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
Py_hash_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__hash__", 0);
/* "distributed/scheduler.py":449
*
* def __hash__(self):
* return self._hash # <<<<<<<<<<<<<<
*
* def __eq__(self, other):
*/
__pyx_r = __pyx_v_self->_hash;
goto __pyx_L0;
/* "distributed/scheduler.py":448
* self._extra = extra or {}
*
* def __hash__(self): # <<<<<<<<<<<<<<
* return self._hash
*
*/
/* function exit code */
__pyx_L0:;
if (unlikely(__pyx_r == -1) && !PyErr_Occurred()) __pyx_r = -2;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":451
* return self._hash
*
* def __eq__(self, other): # <<<<<<<<<<<<<<
* typ_self: type = type(self)
* typ_other: type = type(other)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__eq__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_4__eq__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self), ((PyObject *)__pyx_v_other));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_4__eq__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v_other) {
PyTypeObject *__pyx_v_typ_self = 0;
PyTypeObject *__pyx_v_typ_other = 0;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_other_ws = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__eq__", 0);
/* "distributed/scheduler.py":452
*
* def __eq__(self, other):
* typ_self: type = type(self) # <<<<<<<<<<<<<<
* typ_other: type = type(other)
* if typ_self == typ_other:
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_v_typ_self = ((PyTypeObject*)((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
/* "distributed/scheduler.py":453
* def __eq__(self, other):
* typ_self: type = type(self)
* typ_other: type = type(other) # <<<<<<<<<<<<<<
* if typ_self == typ_other:
* other_ws: WorkerState = other
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_other)));
__pyx_v_typ_other = ((PyTypeObject*)((PyObject *)Py_TYPE(__pyx_v_other)));
/* "distributed/scheduler.py":454
* typ_self: type = type(self)
* typ_other: type = type(other)
* if typ_self == typ_other: # <<<<<<<<<<<<<<
* other_ws: WorkerState = other
* return self._address == other_ws._address
*/
__pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_v_typ_self), ((PyObject *)__pyx_v_typ_other), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 454, __pyx_L1_error)
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 454, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_2) {
/* "distributed/scheduler.py":455
* typ_other: type = type(other)
* if typ_self == typ_other:
* other_ws: WorkerState = other # <<<<<<<<<<<<<<
* return self._address == other_ws._address
* else:
*/
if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_11distributed_9scheduler_WorkerState))))) __PYX_ERR(0, 455, __pyx_L1_error)
__pyx_t_1 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_other_ws = ((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":456
* if typ_self == typ_other:
* other_ws: WorkerState = other
* return self._address == other_ws._address # <<<<<<<<<<<<<<
* else:
* return False
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_v_self->_address, __pyx_v_other_ws->_address, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 456, __pyx_L1_error)
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 456, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":454
* typ_self: type = type(self)
* typ_other: type = type(other)
* if typ_self == typ_other: # <<<<<<<<<<<<<<
* other_ws: WorkerState = other
* return self._address == other_ws._address
*/
}
/* "distributed/scheduler.py":458
* return self._address == other_ws._address
* else:
* return False # <<<<<<<<<<<<<<
*
* @property
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(Py_False);
__pyx_r = Py_False;
goto __pyx_L0;
}
/* "distributed/scheduler.py":451
* return self._hash
*
* def __eq__(self, other): # <<<<<<<<<<<<<<
* typ_self: type = type(self)
* typ_other: type = type(other)
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_typ_self);
__Pyx_XDECREF(__pyx_v_typ_other);
__Pyx_XDECREF((PyObject *)__pyx_v_other_ws);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":461
*
* @property
* def actors(self): # <<<<<<<<<<<<<<
* return self._actors
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6actors_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6actors_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6actors___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6actors___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":462
* @property
* def actors(self):
* return self._actors # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_actors);
__pyx_r = __pyx_v_self->_actors;
goto __pyx_L0;
/* "distributed/scheduler.py":461
*
* @property
* def actors(self): # <<<<<<<<<<<<<<
* return self._actors
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":465
*
* @property
* def address(self): # <<<<<<<<<<<<<<
* return self._address
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7address_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7address_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_7address___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_7address___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":466
* @property
* def address(self):
* return self._address # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_address);
__pyx_r = __pyx_v_self->_address;
goto __pyx_L0;
/* "distributed/scheduler.py":465
*
* @property
* def address(self): # <<<<<<<<<<<<<<
* return self._address
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":469
*
* @property
* def bandwidth(self): # <<<<<<<<<<<<<<
* return self._bandwidth
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9bandwidth_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9bandwidth_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_9bandwidth___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9bandwidth___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":470
* @property
* def bandwidth(self):
* return self._bandwidth # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_bandwidth); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 470, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":469
*
* @property
* def bandwidth(self): # <<<<<<<<<<<<<<
* return self._bandwidth
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.bandwidth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":473
*
* @property
* def executing(self): # <<<<<<<<<<<<<<
* return self._executing
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9executing_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9executing_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_9executing___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9executing___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":474
* @property
* def executing(self):
* return self._executing # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_executing);
__pyx_r = __pyx_v_self->_executing;
goto __pyx_L0;
/* "distributed/scheduler.py":473
*
* @property
* def executing(self): # <<<<<<<<<<<<<<
* return self._executing
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":477
*
* @property
* def extra(self): # <<<<<<<<<<<<<<
* return self._extra
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_5extra_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_5extra_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_5extra___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_5extra___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":478
* @property
* def extra(self):
* return self._extra # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_extra);
__pyx_r = __pyx_v_self->_extra;
goto __pyx_L0;
/* "distributed/scheduler.py":477
*
* @property
* def extra(self): # <<<<<<<<<<<<<<
* return self._extra
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":481
*
* @property
* def has_what(self): # <<<<<<<<<<<<<<
* return self._has_what
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8has_what_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8has_what_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_8has_what___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8has_what___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":482
* @property
* def has_what(self):
* return self._has_what # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_has_what);
__pyx_r = __pyx_v_self->_has_what;
goto __pyx_L0;
/* "distributed/scheduler.py":481
*
* @property
* def has_what(self): # <<<<<<<<<<<<<<
* return self._has_what
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":485
*
* @property
* def host(self): # <<<<<<<<<<<<<<
* return get_address_host(self.address)
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_4host_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_4host_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_4host___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_4host___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":486
* @property
* def host(self):
* return get_address_host(self.address) # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_get_address_host); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 486, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_address); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 486, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_2, function);
}
}
__pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_4, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 486, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":485
*
* @property
* def host(self): # <<<<<<<<<<<<<<
* return get_address_host(self.address)
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.host.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":489
*
* @property
* def last_seen(self): # <<<<<<<<<<<<<<
* return self._last_seen
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9last_seen_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9last_seen_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_9last_seen___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9last_seen___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":490
* @property
* def last_seen(self):
* return self._last_seen # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_last_seen); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 490, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":489
*
* @property
* def last_seen(self): # <<<<<<<<<<<<<<
* return self._last_seen
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.last_seen.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":493
*
* @property
* def local_directory(self): # <<<<<<<<<<<<<<
* return self._local_directory
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_15local_directory_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_15local_directory_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_15local_directory___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_15local_directory___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":494
* @property
* def local_directory(self):
* return self._local_directory # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_local_directory);
__pyx_r = __pyx_v_self->_local_directory;
goto __pyx_L0;
/* "distributed/scheduler.py":493
*
* @property
* def local_directory(self): # <<<<<<<<<<<<<<
* return self._local_directory
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":497
*
* @property
* def memory_limit(self): # <<<<<<<<<<<<<<
* return self._memory_limit
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_12memory_limit_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_12memory_limit_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_12memory_limit___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_12memory_limit___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":498
* @property
* def memory_limit(self):
* return self._memory_limit # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_memory_limit); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 498, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":497
*
* @property
* def memory_limit(self): # <<<<<<<<<<<<<<
* return self._memory_limit
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.memory_limit.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":501
*
* @property
* def metrics(self): # <<<<<<<<<<<<<<
* return self._metrics
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7metrics_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7metrics_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_7metrics___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_7metrics___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":502
* @property
* def metrics(self):
* return self._metrics # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_metrics);
__pyx_r = __pyx_v_self->_metrics;
goto __pyx_L0;
/* "distributed/scheduler.py":501
*
* @property
* def metrics(self): # <<<<<<<<<<<<<<
* return self._metrics
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":505
*
* @property
* def name(self): # <<<<<<<<<<<<<<
* return self._name
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_4name_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_4name_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_4name___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_4name___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":506
* @property
* def name(self):
* return self._name # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_name);
__pyx_r = __pyx_v_self->_name;
goto __pyx_L0;
/* "distributed/scheduler.py":505
*
* @property
* def name(self): # <<<<<<<<<<<<<<
* return self._name
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":509
*
* @property
* def nanny(self): # <<<<<<<<<<<<<<
* return self._nanny
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_5nanny_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_5nanny_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_5nanny___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_5nanny___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":510
* @property
* def nanny(self):
* return self._nanny # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_nanny);
__pyx_r = __pyx_v_self->_nanny;
goto __pyx_L0;
/* "distributed/scheduler.py":509
*
* @property
* def nanny(self): # <<<<<<<<<<<<<<
* return self._nanny
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":513
*
* @property
* def nbytes(self): # <<<<<<<<<<<<<<
* return self._nbytes
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6nbytes_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6nbytes_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6nbytes___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6nbytes___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":514
* @property
* def nbytes(self):
* return self._nbytes # <<<<<<<<<<<<<<
*
* @nbytes.setter
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_nbytes); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 514, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":513
*
* @property
* def nbytes(self): # <<<<<<<<<<<<<<
* return self._nbytes
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.nbytes.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":517
*
* @nbytes.setter
* def nbytes(self, v: Py_ssize_t): # <<<<<<<<<<<<<<
* self._nbytes = v
*
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_11WorkerState_6nbytes_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_arg_v); /*proto*/
static int __pyx_pw_11distributed_9scheduler_11WorkerState_6nbytes_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_arg_v) {
Py_ssize_t __pyx_v_v;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
assert(__pyx_arg_v); {
__pyx_v_v = __Pyx_PyIndex_AsSsize_t(__pyx_arg_v); if (unlikely((__pyx_v_v == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 517, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.WorkerState.nbytes.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6nbytes_2__set__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self), ((Py_ssize_t)__pyx_v_v));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_11WorkerState_6nbytes_2__set__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, Py_ssize_t __pyx_v_v) {
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__", 0);
/* "distributed/scheduler.py":518
* @nbytes.setter
* def nbytes(self, v: Py_ssize_t):
* self._nbytes = v # <<<<<<<<<<<<<<
*
* @property
*/
__pyx_v_self->_nbytes = __pyx_v_v;
/* "distributed/scheduler.py":517
*
* @nbytes.setter
* def nbytes(self, v: Py_ssize_t): # <<<<<<<<<<<<<<
* self._nbytes = v
*
*/
/* function exit code */
__pyx_r = 0;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":521
*
* @property
* def nthreads(self): # <<<<<<<<<<<<<<
* return self._nthreads
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8nthreads_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8nthreads_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_8nthreads___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8nthreads___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":522
* @property
* def nthreads(self):
* return self._nthreads # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_nthreads); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":521
*
* @property
* def nthreads(self): # <<<<<<<<<<<<<<
* return self._nthreads
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.nthreads.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":525
*
* @property
* def occupancy(self): # <<<<<<<<<<<<<<
* return self._occupancy
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9occupancy_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9occupancy_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_9occupancy___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9occupancy___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":526
* @property
* def occupancy(self):
* return self._occupancy # <<<<<<<<<<<<<<
*
* @occupancy.setter
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_occupancy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":525
*
* @property
* def occupancy(self): # <<<<<<<<<<<<<<
* return self._occupancy
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.occupancy.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":529
*
* @occupancy.setter
* def occupancy(self, v: double): # <<<<<<<<<<<<<<
* self._occupancy = v
*
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_11WorkerState_9occupancy_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_arg_v); /*proto*/
static int __pyx_pw_11distributed_9scheduler_11WorkerState_9occupancy_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_arg_v) {
double __pyx_v_v;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
assert(__pyx_arg_v); {
__pyx_v_v = __pyx_PyFloat_AsDouble(__pyx_arg_v); if (unlikely((__pyx_v_v == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 529, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.WorkerState.occupancy.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_9occupancy_2__set__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self), ((double)__pyx_v_v));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_11WorkerState_9occupancy_2__set__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, double __pyx_v_v) {
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__", 0);
/* "distributed/scheduler.py":530
* @occupancy.setter
* def occupancy(self, v: double):
* self._occupancy = v # <<<<<<<<<<<<<<
*
* @property
*/
__pyx_v_self->_occupancy = __pyx_v_v;
/* "distributed/scheduler.py":529
*
* @occupancy.setter
* def occupancy(self, v: double): # <<<<<<<<<<<<<<
* self._occupancy = v
*
*/
/* function exit code */
__pyx_r = 0;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":533
*
* @property
* def pid(self): # <<<<<<<<<<<<<<
* return self._pid
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_3pid_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_3pid_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_3pid___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_3pid___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":534
* @property
* def pid(self):
* return self._pid # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_pid); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 534, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":533
*
* @property
* def pid(self): # <<<<<<<<<<<<<<
* return self._pid
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.pid.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":537
*
* @property
* def processing(self): # <<<<<<<<<<<<<<
* return self._processing
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_10processing_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_10processing_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_10processing___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_10processing___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":538
* @property
* def processing(self):
* return self._processing # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_processing);
__pyx_r = __pyx_v_self->_processing;
goto __pyx_L0;
/* "distributed/scheduler.py":537
*
* @property
* def processing(self): # <<<<<<<<<<<<<<
* return self._processing
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":541
*
* @property
* def resources(self): # <<<<<<<<<<<<<<
* return self._resources
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9resources_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9resources_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_9resources___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_9resources___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":542
* @property
* def resources(self):
* return self._resources # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_resources);
__pyx_r = __pyx_v_self->_resources;
goto __pyx_L0;
/* "distributed/scheduler.py":541
*
* @property
* def resources(self): # <<<<<<<<<<<<<<
* return self._resources
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":545
*
* @property
* def services(self): # <<<<<<<<<<<<<<
* return self._services
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8services_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8services_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_8services___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8services___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":546
* @property
* def services(self):
* return self._services # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_services);
__pyx_r = __pyx_v_self->_services;
goto __pyx_L0;
/* "distributed/scheduler.py":545
*
* @property
* def services(self): # <<<<<<<<<<<<<<
* return self._services
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":549
*
* @property
* def status(self): # <<<<<<<<<<<<<<
* return self._status
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6status_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6status_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6status___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6status___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":550
* @property
* def status(self):
* return self._status # <<<<<<<<<<<<<<
*
* @status.setter
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_status);
__pyx_r = __pyx_v_self->_status;
goto __pyx_L0;
/* "distributed/scheduler.py":549
*
* @property
* def status(self): # <<<<<<<<<<<<<<
* return self._status
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":553
*
* @status.setter
* def status(self, new_status): # <<<<<<<<<<<<<<
* if isinstance(new_status, Status):
* self._status = new_status
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_11WorkerState_6status_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_new_status); /*proto*/
static int __pyx_pw_11distributed_9scheduler_11WorkerState_6status_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_new_status) {
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6status_2__set__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self), ((PyObject *)__pyx_v_new_status));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_11WorkerState_6status_2__set__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v_new_status) {
PyObject *__pyx_v_corresponding_enum_variants = NULL;
PyObject *__pyx_7genexpr__pyx_v_s = NULL;
int __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
int __pyx_t_3;
int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
Py_ssize_t __pyx_t_7;
PyObject *(*__pyx_t_8)(PyObject *);
PyObject *__pyx_t_9 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
/* "distributed/scheduler.py":554
* @status.setter
* def status(self, new_status):
* if isinstance(new_status, Status): # <<<<<<<<<<<<<<
* self._status = new_status
* elif isinstance(new_status, str) or new_status is None:
*/
__Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_Status); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyObject_IsInstance(__pyx_v_new_status, __pyx_t_1); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 554, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
/* "distributed/scheduler.py":555
* def status(self, new_status):
* if isinstance(new_status, Status):
* self._status = new_status # <<<<<<<<<<<<<<
* elif isinstance(new_status, str) or new_status is None:
* corresponding_enum_variants = [s for s in Status if s.value == new_status]
*/
__Pyx_INCREF(__pyx_v_new_status);
__Pyx_GIVEREF(__pyx_v_new_status);
__Pyx_GOTREF(__pyx_v_self->_status);
__Pyx_DECREF(__pyx_v_self->_status);
__pyx_v_self->_status = __pyx_v_new_status;
/* "distributed/scheduler.py":554
* @status.setter
* def status(self, new_status):
* if isinstance(new_status, Status): # <<<<<<<<<<<<<<
* self._status = new_status
* elif isinstance(new_status, str) or new_status is None:
*/
goto __pyx_L3;
}
/* "distributed/scheduler.py":556
* if isinstance(new_status, Status):
* self._status = new_status
* elif isinstance(new_status, str) or new_status is None: # <<<<<<<<<<<<<<
* corresponding_enum_variants = [s for s in Status if s.value == new_status]
* assert len(corresponding_enum_variants) == 1
*/
__pyx_t_2 = PyUnicode_Check(__pyx_v_new_status);
__pyx_t_4 = (__pyx_t_2 != 0);
if (!__pyx_t_4) {
} else {
__pyx_t_3 = __pyx_t_4;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_4 = (__pyx_v_new_status == Py_None);
__pyx_t_2 = (__pyx_t_4 != 0);
__pyx_t_3 = __pyx_t_2;
__pyx_L4_bool_binop_done:;
if (likely(__pyx_t_3)) {
/* "distributed/scheduler.py":557
* self._status = new_status
* elif isinstance(new_status, str) or new_status is None:
* corresponding_enum_variants = [s for s in Status if s.value == new_status] # <<<<<<<<<<<<<<
* assert len(corresponding_enum_variants) == 1
* self._status = corresponding_enum_variants[0]
*/
{ /* enter inner scope */
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_Status); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) {
__pyx_t_6 = __pyx_t_5; __Pyx_INCREF(__pyx_t_6); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
} else {
__pyx_t_7 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_8 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 557, __pyx_L8_error)
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
for (;;) {
if (likely(!__pyx_t_8)) {
if (likely(PyList_CheckExact(__pyx_t_6))) {
if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_6)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_5 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_5); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 557, __pyx_L8_error)
#else
__pyx_t_5 = PySequence_ITEM(__pyx_t_6, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_5); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 557, __pyx_L8_error)
#else
__pyx_t_5 = PySequence_ITEM(__pyx_t_6, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
}
} else {
__pyx_t_5 = __pyx_t_8(__pyx_t_6);
if (unlikely(!__pyx_t_5)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(0, 557, __pyx_L8_error)
}
break;
}
__Pyx_GOTREF(__pyx_t_5);
}
__Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_s, __pyx_t_5);
__pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_7genexpr__pyx_v_s, __pyx_n_s_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_9 = PyObject_RichCompare(__pyx_t_5, __pyx_v_new_status, Py_EQ); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 557, __pyx_L8_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
if (__pyx_t_3) {
if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_7genexpr__pyx_v_s))) __PYX_ERR(0, 557, __pyx_L8_error)
}
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_7genexpr__pyx_v_s); __pyx_7genexpr__pyx_v_s = 0;
goto __pyx_L12_exit_scope;
__pyx_L8_error:;
__Pyx_XDECREF(__pyx_7genexpr__pyx_v_s); __pyx_7genexpr__pyx_v_s = 0;
goto __pyx_L1_error;
__pyx_L12_exit_scope:;
} /* exit inner scope */
__pyx_v_corresponding_enum_variants = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":558
* elif isinstance(new_status, str) or new_status is None:
* corresponding_enum_variants = [s for s in Status if s.value == new_status]
* assert len(corresponding_enum_variants) == 1 # <<<<<<<<<<<<<<
* self._status = corresponding_enum_variants[0]
* else:
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
__pyx_t_7 = PyList_GET_SIZE(__pyx_v_corresponding_enum_variants); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 558, __pyx_L1_error)
if (unlikely(!((__pyx_t_7 == 1) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
__PYX_ERR(0, 558, __pyx_L1_error)
}
}
#endif
/* "distributed/scheduler.py":559
* corresponding_enum_variants = [s for s in Status if s.value == new_status]
* assert len(corresponding_enum_variants) == 1
* self._status = corresponding_enum_variants[0] # <<<<<<<<<<<<<<
* else:
* raise TypeError(f"expected Status or str, got {new_status}")
*/
__pyx_t_1 = __Pyx_GetItemInt_List(__pyx_v_corresponding_enum_variants, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 559, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_status);
__Pyx_DECREF(__pyx_v_self->_status);
__pyx_v_self->_status = __pyx_t_1;
__pyx_t_1 = 0;
/* "distributed/scheduler.py":556
* if isinstance(new_status, Status):
* self._status = new_status
* elif isinstance(new_status, str) or new_status is None: # <<<<<<<<<<<<<<
* corresponding_enum_variants = [s for s in Status if s.value == new_status]
* assert len(corresponding_enum_variants) == 1
*/
goto __pyx_L3;
}
/* "distributed/scheduler.py":561
* self._status = corresponding_enum_variants[0]
* else:
* raise TypeError(f"expected Status or str, got {new_status}") # <<<<<<<<<<<<<<
*
* @property
*/
/*else*/ {
__pyx_t_1 = __Pyx_PyObject_FormatSimple(__pyx_v_new_status, __pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = __Pyx_PyUnicode_Concat(__pyx_kp_u_expected_Status_or_str_got, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_1, 0, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__PYX_ERR(0, 561, __pyx_L1_error)
}
__pyx_L3:;
/* "distributed/scheduler.py":553
*
* @status.setter
* def status(self, new_status): # <<<<<<<<<<<<<<
* if isinstance(new_status, Status):
* self._status = new_status
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.status.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_corresponding_enum_variants);
__Pyx_XDECREF(__pyx_7genexpr__pyx_v_s);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":564
*
* @property
* def time_delay(self): # <<<<<<<<<<<<<<
* return self._time_delay
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_10time_delay_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_10time_delay_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_10time_delay___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_10time_delay___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":565
* @property
* def time_delay(self):
* return self._time_delay # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_time_delay); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 565, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":564
*
* @property
* def time_delay(self): # <<<<<<<<<<<<<<
* return self._time_delay
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.time_delay.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":568
*
* @property
* def used_resources(self): # <<<<<<<<<<<<<<
* return self._used_resources
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_14used_resources_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_14used_resources_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_14used_resources___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_14used_resources___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":569
* @property
* def used_resources(self):
* return self._used_resources # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_used_resources);
__pyx_r = __pyx_v_self->_used_resources;
goto __pyx_L0;
/* "distributed/scheduler.py":568
*
* @property
* def used_resources(self): # <<<<<<<<<<<<<<
* return self._used_resources
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":572
*
* @property
* def versions(self): # <<<<<<<<<<<<<<
* return self._versions
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8versions_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_8versions_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_8versions___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8versions___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":573
* @property
* def versions(self):
* return self._versions # <<<<<<<<<<<<<<
*
* @ccall
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_versions);
__pyx_r = __pyx_v_self->_versions;
goto __pyx_L0;
/* "distributed/scheduler.py":572
*
* @property
* def versions(self): # <<<<<<<<<<<<<<
* return self._versions
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":576
*
* @ccall
* def clean(self): # <<<<<<<<<<<<<<
* """ Return a version of this object that is appropriate for serialization """
* ws: WorkerState = WorkerState(
*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7clean(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler_11WorkerState_clean(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch) {
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws = 0;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_8genexpr1__pyx_v_ts = NULL;
PyObject *__pyx_8genexpr1__pyx_v_cost = NULL;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_8genexpr2__pyx_v_ts = NULL;
PyObject *__pyx_8genexpr2__pyx_v_duration = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
Py_ssize_t __pyx_t_4;
int __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
int __pyx_t_8;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("clean", 0);
/* "distributed/scheduler.py":579
* """ Return a version of this object that is appropriate for serialization """
* ws: WorkerState = WorkerState(
* address=self._address, # <<<<<<<<<<<<<<
* pid=self._pid,
* name=self._name,
*/
__pyx_t_1 = __Pyx_PyDict_NewPresized(9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 579, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_address, __pyx_v_self->_address) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
/* "distributed/scheduler.py":580
* ws: WorkerState = WorkerState(
* address=self._address,
* pid=self._pid, # <<<<<<<<<<<<<<
* name=self._name,
* nthreads=self._nthreads,
*/
__pyx_t_2 = PyInt_FromSsize_t(__pyx_v_self->_pid); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 580, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_pid, __pyx_t_2) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "distributed/scheduler.py":581
* address=self._address,
* pid=self._pid,
* name=self._name, # <<<<<<<<<<<<<<
* nthreads=self._nthreads,
* memory_limit=self._memory_limit,
*/
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_name, __pyx_v_self->_name) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
/* "distributed/scheduler.py":582
* pid=self._pid,
* name=self._name,
* nthreads=self._nthreads, # <<<<<<<<<<<<<<
* memory_limit=self._memory_limit,
* local_directory=self._local_directory,
*/
__pyx_t_2 = PyInt_FromSsize_t(__pyx_v_self->_nthreads); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_nthreads, __pyx_t_2) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "distributed/scheduler.py":583
* name=self._name,
* nthreads=self._nthreads,
* memory_limit=self._memory_limit, # <<<<<<<<<<<<<<
* local_directory=self._local_directory,
* services=self._services,
*/
__pyx_t_2 = PyInt_FromSsize_t(__pyx_v_self->_memory_limit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 583, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_memory_limit, __pyx_t_2) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "distributed/scheduler.py":584
* nthreads=self._nthreads,
* memory_limit=self._memory_limit,
* local_directory=self._local_directory, # <<<<<<<<<<<<<<
* services=self._services,
* nanny=self._nanny,
*/
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_local_directory, __pyx_v_self->_local_directory) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
/* "distributed/scheduler.py":585
* memory_limit=self._memory_limit,
* local_directory=self._local_directory,
* services=self._services, # <<<<<<<<<<<<<<
* nanny=self._nanny,
* extra=self._extra,
*/
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_services, __pyx_v_self->_services) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
/* "distributed/scheduler.py":586
* local_directory=self._local_directory,
* services=self._services,
* nanny=self._nanny, # <<<<<<<<<<<<<<
* extra=self._extra,
* )
*/
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_nanny, __pyx_v_self->_nanny) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
/* "distributed/scheduler.py":587
* services=self._services,
* nanny=self._nanny,
* extra=self._extra, # <<<<<<<<<<<<<<
* )
* ts: TaskState
*/
if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_extra, __pyx_v_self->_extra) < 0) __PYX_ERR(0, 579, __pyx_L1_error)
/* "distributed/scheduler.py":578
* def clean(self):
* """ Return a version of this object that is appropriate for serialization """
* ws: WorkerState = WorkerState( # <<<<<<<<<<<<<<
* address=self._address,
* pid=self._pid,
*/
__pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_11distributed_9scheduler_WorkerState), __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 578, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_ws = ((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":590
* )
* ts: TaskState
* ws._processing = {ts._key: cost for ts, cost in self._processing.items()} # <<<<<<<<<<<<<<
* ws._executing = {ts._key: duration for ts, duration in self._executing.items()}
* return ws
*/
{ /* enter inner scope */
__pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 590, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = 0;
if (unlikely(__pyx_v_self->_processing == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items");
__PYX_ERR(0, 590, __pyx_L5_error)
}
__pyx_t_6 = __Pyx_dict_iterator(__pyx_v_self->_processing, 1, __pyx_n_s_items, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 590, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_1);
__pyx_t_1 = __pyx_t_6;
__pyx_t_6 = 0;
while (1) {
__pyx_t_8 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_4, &__pyx_t_3, &__pyx_t_6, &__pyx_t_7, NULL, __pyx_t_5);
if (unlikely(__pyx_t_8 == 0)) break;
if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 590, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_7);
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_11distributed_9scheduler_TaskState))))) __PYX_ERR(0, 590, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_ts, ((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_t_6));
__pyx_t_6 = 0;
__Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_cost, __pyx_t_7);
__pyx_t_7 = 0;
if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_ts->_key, (PyObject*)__pyx_8genexpr1__pyx_v_cost))) __PYX_ERR(0, 590, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_8genexpr1__pyx_v_cost); __pyx_8genexpr1__pyx_v_cost = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr1__pyx_v_ts); __pyx_8genexpr1__pyx_v_ts = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF(__pyx_8genexpr1__pyx_v_cost); __pyx_8genexpr1__pyx_v_cost = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr1__pyx_v_ts); __pyx_8genexpr1__pyx_v_ts = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_ws->_processing);
__Pyx_DECREF(__pyx_v_ws->_processing);
__pyx_v_ws->_processing = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":591
* ts: TaskState
* ws._processing = {ts._key: cost for ts, cost in self._processing.items()}
* ws._executing = {ts._key: duration for ts, duration in self._executing.items()} # <<<<<<<<<<<<<<
* return ws
*
*/
{ /* enter inner scope */
__pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 591, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = 0;
if (unlikely(__pyx_v_self->_executing == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items");
__PYX_ERR(0, 591, __pyx_L11_error)
}
__pyx_t_7 = __Pyx_dict_iterator(__pyx_v_self->_executing, 1, __pyx_n_s_items, (&__pyx_t_3), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 591, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_1);
__pyx_t_1 = __pyx_t_7;
__pyx_t_7 = 0;
while (1) {
__pyx_t_8 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_4, &__pyx_t_7, &__pyx_t_6, NULL, __pyx_t_5);
if (unlikely(__pyx_t_8 == 0)) break;
if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 591, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_6);
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_11distributed_9scheduler_TaskState))))) __PYX_ERR(0, 591, __pyx_L11_error)
__Pyx_XDECREF_SET(__pyx_8genexpr2__pyx_v_ts, ((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_t_7));
__pyx_t_7 = 0;
__Pyx_XDECREF_SET(__pyx_8genexpr2__pyx_v_duration, __pyx_t_6);
__pyx_t_6 = 0;
if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr2__pyx_v_ts->_key, (PyObject*)__pyx_8genexpr2__pyx_v_duration))) __PYX_ERR(0, 591, __pyx_L11_error)
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_8genexpr2__pyx_v_duration); __pyx_8genexpr2__pyx_v_duration = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr2__pyx_v_ts); __pyx_8genexpr2__pyx_v_ts = 0;
goto __pyx_L14_exit_scope;
__pyx_L11_error:;
__Pyx_XDECREF(__pyx_8genexpr2__pyx_v_duration); __pyx_8genexpr2__pyx_v_duration = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr2__pyx_v_ts); __pyx_8genexpr2__pyx_v_ts = 0;
goto __pyx_L1_error;
__pyx_L14_exit_scope:;
} /* exit inner scope */
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_ws->_executing);
__Pyx_DECREF(__pyx_v_ws->_executing);
__pyx_v_ws->_executing = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":592
* ws._processing = {ts._key: cost for ts, cost in self._processing.items()}
* ws._executing = {ts._key: duration for ts, duration in self._executing.items()}
* return ws # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_ws));
__pyx_r = ((PyObject *)__pyx_v_ws);
goto __pyx_L0;
/* "distributed/scheduler.py":576
*
* @ccall
* def clean(self): # <<<<<<<<<<<<<<
* """ Return a version of this object that is appropriate for serialization """
* ws: WorkerState = WorkerState(
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.clean", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_ws);
__Pyx_XDECREF((PyObject *)__pyx_8genexpr1__pyx_v_ts);
__Pyx_XDECREF(__pyx_8genexpr1__pyx_v_cost);
__Pyx_XDECREF((PyObject *)__pyx_8genexpr2__pyx_v_ts);
__Pyx_XDECREF(__pyx_8genexpr2__pyx_v_duration);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7clean(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static char __pyx_doc_11distributed_9scheduler_11WorkerState_6clean[] = " Return a version of this object that is appropriate for serialization ";
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_7clean(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("clean (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6clean(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6clean(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("clean", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_11WorkerState_clean(__pyx_v_self, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 576, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.clean", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":594
* return ws
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return "<Worker %r, name: %s, memory: %d, processing: %d>" % (
* self._address,
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9__repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_9__repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__repr__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_8__repr__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_8__repr__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
Py_ssize_t __pyx_t_2;
Py_UCS4 __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
Py_ssize_t __pyx_t_5;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__repr__", 0);
/* "distributed/scheduler.py":595
*
* def __repr__(self):
* return "<Worker %r, name: %s, memory: %d, processing: %d>" % ( # <<<<<<<<<<<<<<
* self._address,
* self._name,
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyTuple_New(9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = 0;
__pyx_t_3 = 127;
__Pyx_INCREF(__pyx_kp_u_Worker);
__pyx_t_2 += 8;
__Pyx_GIVEREF(__pyx_kp_u_Worker);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_kp_u_Worker);
/* "distributed/scheduler.py":596
* def __repr__(self):
* return "<Worker %r, name: %s, memory: %d, processing: %d>" % (
* self._address, # <<<<<<<<<<<<<<
* self._name,
* len(self._has_what),
*/
__pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->_address), __pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) > __pyx_t_3) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) : __pyx_t_3;
__pyx_t_2 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_INCREF(__pyx_kp_u_name_2);
__pyx_t_2 += 8;
__Pyx_GIVEREF(__pyx_kp_u_name_2);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_kp_u_name_2);
/* "distributed/scheduler.py":597
* return "<Worker %r, name: %s, memory: %d, processing: %d>" % (
* self._address,
* self._name, # <<<<<<<<<<<<<<
* len(self._has_what),
* len(self._processing),
*/
__pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Unicode(__pyx_v_self->_name), __pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 597, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) > __pyx_t_3) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) : __pyx_t_3;
__pyx_t_2 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_INCREF(__pyx_kp_u_memory);
__pyx_t_2 += 10;
__Pyx_GIVEREF(__pyx_kp_u_memory);
PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_kp_u_memory);
/* "distributed/scheduler.py":598
* self._address,
* self._name,
* len(self._has_what), # <<<<<<<<<<<<<<
* len(self._processing),
* )
*/
__pyx_t_4 = __pyx_v_self->_has_what;
__Pyx_INCREF(__pyx_t_4);
if (unlikely(__pyx_t_4 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
__PYX_ERR(0, 598, __pyx_L1_error)
}
__pyx_t_5 = PySet_GET_SIZE(__pyx_t_4); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(0, 598, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = __Pyx_PyUnicode_From_Py_ssize_t(__pyx_t_5, 0, ' ', 'd'); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 598, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_2 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 5, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_INCREF(__pyx_kp_u_processing);
__pyx_t_2 += 14;
__Pyx_GIVEREF(__pyx_kp_u_processing);
PyTuple_SET_ITEM(__pyx_t_1, 6, __pyx_kp_u_processing);
/* "distributed/scheduler.py":599
* self._name,
* len(self._has_what),
* len(self._processing), # <<<<<<<<<<<<<<
* )
*
*/
__pyx_t_4 = __pyx_v_self->_processing;
__Pyx_INCREF(__pyx_t_4);
if (unlikely(__pyx_t_4 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()");
__PYX_ERR(0, 599, __pyx_L1_error)
}
__pyx_t_5 = PyDict_Size(__pyx_t_4); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(0, 599, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = __Pyx_PyUnicode_From_Py_ssize_t(__pyx_t_5, 0, ' ', 'd'); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 599, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_2 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 7, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_INCREF(__pyx_kp_u__3);
__pyx_t_2 += 1;
__Pyx_GIVEREF(__pyx_kp_u__3);
PyTuple_SET_ITEM(__pyx_t_1, 8, __pyx_kp_u__3);
/* "distributed/scheduler.py":595
*
* def __repr__(self):
* return "<Worker %r, name: %s, memory: %d, processing: %d>" % ( # <<<<<<<<<<<<<<
* self._address,
* self._name,
*/
__pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_1, 9, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":594
* return ws
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return "<Worker %r, name: %s, memory: %d, processing: %d>" % (
* self._address,
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":604
* @ccall
* @exceptval(check=False)
* def identity(self) -> dict: # <<<<<<<<<<<<<<
* return {
* "type": "Worker",
*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_11identity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler_11WorkerState_identity(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("identity", 0);
/* "distributed/scheduler.py":605
* @exceptval(check=False)
* def identity(self) -> dict:
* return { # <<<<<<<<<<<<<<
* "type": "Worker",
* "id": self._name,
*/
__Pyx_XDECREF(__pyx_r);
/* "distributed/scheduler.py":606
* def identity(self) -> dict:
* return {
* "type": "Worker", # <<<<<<<<<<<<<<
* "id": self._name,
* "host": self.host,
*/
__pyx_t_2 = __Pyx_PyDict_NewPresized(12); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_type, __pyx_n_u_Worker_2) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":607
* return {
* "type": "Worker",
* "id": self._name, # <<<<<<<<<<<<<<
* "host": self.host,
* "resources": self._resources,
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_id, __pyx_v_self->_name) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":608
* "type": "Worker",
* "id": self._name,
* "host": self.host, # <<<<<<<<<<<<<<
* "resources": self._resources,
* "local_directory": self._local_directory,
*/
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_host); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 608, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_host, __pyx_t_3) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "distributed/scheduler.py":609
* "id": self._name,
* "host": self.host,
* "resources": self._resources, # <<<<<<<<<<<<<<
* "local_directory": self._local_directory,
* "name": self._name,
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_resources, __pyx_v_self->_resources) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":610
* "host": self.host,
* "resources": self._resources,
* "local_directory": self._local_directory, # <<<<<<<<<<<<<<
* "name": self._name,
* "nthreads": self._nthreads,
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_local_directory, __pyx_v_self->_local_directory) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":611
* "resources": self._resources,
* "local_directory": self._local_directory,
* "name": self._name, # <<<<<<<<<<<<<<
* "nthreads": self._nthreads,
* "memory_limit": self._memory_limit,
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_name, __pyx_v_self->_name) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":612
* "local_directory": self._local_directory,
* "name": self._name,
* "nthreads": self._nthreads, # <<<<<<<<<<<<<<
* "memory_limit": self._memory_limit,
* "last_seen": self._last_seen,
*/
__pyx_t_3 = PyInt_FromSsize_t(__pyx_v_self->_nthreads); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 612, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_nthreads, __pyx_t_3) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "distributed/scheduler.py":613
* "name": self._name,
* "nthreads": self._nthreads,
* "memory_limit": self._memory_limit, # <<<<<<<<<<<<<<
* "last_seen": self._last_seen,
* "services": self._services,
*/
__pyx_t_3 = PyInt_FromSsize_t(__pyx_v_self->_memory_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 613, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_memory_limit, __pyx_t_3) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "distributed/scheduler.py":614
* "nthreads": self._nthreads,
* "memory_limit": self._memory_limit,
* "last_seen": self._last_seen, # <<<<<<<<<<<<<<
* "services": self._services,
* "metrics": self._metrics,
*/
__pyx_t_3 = PyFloat_FromDouble(__pyx_v_self->_last_seen); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_last_seen, __pyx_t_3) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "distributed/scheduler.py":615
* "memory_limit": self._memory_limit,
* "last_seen": self._last_seen,
* "services": self._services, # <<<<<<<<<<<<<<
* "metrics": self._metrics,
* "nanny": self._nanny,
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_services, __pyx_v_self->_services) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":616
* "last_seen": self._last_seen,
* "services": self._services,
* "metrics": self._metrics, # <<<<<<<<<<<<<<
* "nanny": self._nanny,
* **self._extra,
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_metrics, __pyx_v_self->_metrics) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
/* "distributed/scheduler.py":617
* "services": self._services,
* "metrics": self._metrics,
* "nanny": self._nanny, # <<<<<<<<<<<<<<
* **self._extra,
* }
*/
if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_nanny, __pyx_v_self->_nanny) < 0) __PYX_ERR(0, 606, __pyx_L1_error)
__pyx_t_1 = __pyx_t_2;
__pyx_t_2 = 0;
/* "distributed/scheduler.py":618
* "metrics": self._metrics,
* "nanny": self._nanny,
* **self._extra, # <<<<<<<<<<<<<<
* }
*
*/
if (unlikely(__pyx_v_self->_extra == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
__PYX_ERR(0, 618, __pyx_L1_error)
}
if (unlikely(PyDict_Update(__pyx_t_1, __pyx_v_self->_extra) < 0)) {
if (PyErr_ExceptionMatches(PyExc_AttributeError)) __Pyx_RaiseMappingExpectedError(__pyx_v_self->_extra);
__PYX_ERR(0, 618, __pyx_L1_error)
}
__pyx_r = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":604
* @ccall
* @exceptval(check=False)
* def identity(self) -> dict: # <<<<<<<<<<<<<<
* return {
* "type": "Worker",
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.identity", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_11identity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_11identity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("identity (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_10identity(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_10identity(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("identity", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_11WorkerState_identity(__pyx_v_self, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 604, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.identity", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":622
*
* @property
* def ncores(self): # <<<<<<<<<<<<<<
* warnings.warn("WorkerState.ncores has moved to WorkerState.nthreads")
* return self._nthreads
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6ncores_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_6ncores_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_6ncores___get__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_6ncores___get__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":623
* @property
* def ncores(self):
* warnings.warn("WorkerState.ncores has moved to WorkerState.nthreads") # <<<<<<<<<<<<<<
* return self._nthreads
*
*/
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_warnings); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 623, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_warn); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 623, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_2)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_3, function);
}
}
__pyx_t_1 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_kp_u_WorkerState_ncores_has_moved_to) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_kp_u_WorkerState_ncores_has_moved_to);
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 623, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":624
* def ncores(self):
* warnings.warn("WorkerState.ncores has moved to WorkerState.nthreads")
* return self._nthreads # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_nthreads); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 624, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":622
*
* @property
* def ncores(self): # <<<<<<<<<<<<<<
* warnings.warn("WorkerState.ncores has moved to WorkerState.nthreads")
* return self._nthreads
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.ncores.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_13__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_13__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_12__reduce_cython__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_12__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self) {
PyObject *__pyx_v_state = 0;
PyObject *__pyx_v__dict = 0;
int __pyx_v_use_setstate;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
int __pyx_t_11;
int __pyx_t_12;
int __pyx_t_13;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__reduce_cython__", 0);
/* "(tree fragment)":5
* cdef object _dict
* cdef bint use_setstate
* state = (self._actors, self._address, self._bandwidth, self._executing, self._extra, self._has_what, self._hash, self._last_seen, self._local_directory, self._memory_limit, self._metrics, self._name, self._nanny, self._nbytes, self._nthreads, self._occupancy, self._pid, self._processing, self._resources, self._services, self._status, self._time_delay, self._used_resources, self._versions) # <<<<<<<<<<<<<<
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
*/
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_bandwidth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __Pyx_PyInt_FromHash_t(__pyx_v_self->_hash); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyFloat_FromDouble(__pyx_v_self->_last_seen); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = PyInt_FromSsize_t(__pyx_v_self->_memory_limit); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PyInt_FromSsize_t(__pyx_v_self->_nbytes); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = PyInt_FromSsize_t(__pyx_v_self->_nthreads); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = PyFloat_FromDouble(__pyx_v_self->_occupancy); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = PyInt_FromSsize_t(__pyx_v_self->_pid); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = PyFloat_FromDouble(__pyx_v_self->_time_delay); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = PyTuple_New(24); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_INCREF(__pyx_v_self->_actors);
__Pyx_GIVEREF(__pyx_v_self->_actors);
PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_self->_actors);
__Pyx_INCREF(__pyx_v_self->_address);
__Pyx_GIVEREF(__pyx_v_self->_address);
PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->_address);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_t_1);
__Pyx_INCREF(__pyx_v_self->_executing);
__Pyx_GIVEREF(__pyx_v_self->_executing);
PyTuple_SET_ITEM(__pyx_t_10, 3, __pyx_v_self->_executing);
__Pyx_INCREF(__pyx_v_self->_extra);
__Pyx_GIVEREF(__pyx_v_self->_extra);
PyTuple_SET_ITEM(__pyx_t_10, 4, __pyx_v_self->_extra);
__Pyx_INCREF(__pyx_v_self->_has_what);
__Pyx_GIVEREF(__pyx_v_self->_has_what);
PyTuple_SET_ITEM(__pyx_t_10, 5, __pyx_v_self->_has_what);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_10, 6, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_10, 7, __pyx_t_3);
__Pyx_INCREF(__pyx_v_self->_local_directory);
__Pyx_GIVEREF(__pyx_v_self->_local_directory);
PyTuple_SET_ITEM(__pyx_t_10, 8, __pyx_v_self->_local_directory);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_10, 9, __pyx_t_4);
__Pyx_INCREF(__pyx_v_self->_metrics);
__Pyx_GIVEREF(__pyx_v_self->_metrics);
PyTuple_SET_ITEM(__pyx_t_10, 10, __pyx_v_self->_metrics);
__Pyx_INCREF(__pyx_v_self->_name);
__Pyx_GIVEREF(__pyx_v_self->_name);
PyTuple_SET_ITEM(__pyx_t_10, 11, __pyx_v_self->_name);
__Pyx_INCREF(__pyx_v_self->_nanny);
__Pyx_GIVEREF(__pyx_v_self->_nanny);
PyTuple_SET_ITEM(__pyx_t_10, 12, __pyx_v_self->_nanny);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_10, 13, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_10, 14, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_10, 15, __pyx_t_7);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_10, 16, __pyx_t_8);
__Pyx_INCREF(__pyx_v_self->_processing);
__Pyx_GIVEREF(__pyx_v_self->_processing);
PyTuple_SET_ITEM(__pyx_t_10, 17, __pyx_v_self->_processing);
__Pyx_INCREF(__pyx_v_self->_resources);
__Pyx_GIVEREF(__pyx_v_self->_resources);
PyTuple_SET_ITEM(__pyx_t_10, 18, __pyx_v_self->_resources);
__Pyx_INCREF(__pyx_v_self->_services);
__Pyx_GIVEREF(__pyx_v_self->_services);
PyTuple_SET_ITEM(__pyx_t_10, 19, __pyx_v_self->_services);
__Pyx_INCREF(__pyx_v_self->_status);
__Pyx_GIVEREF(__pyx_v_self->_status);
PyTuple_SET_ITEM(__pyx_t_10, 20, __pyx_v_self->_status);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_10, 21, __pyx_t_9);
__Pyx_INCREF(__pyx_v_self->_used_resources);
__Pyx_GIVEREF(__pyx_v_self->_used_resources);
PyTuple_SET_ITEM(__pyx_t_10, 22, __pyx_v_self->_used_resources);
__Pyx_INCREF(__pyx_v_self->_versions);
__Pyx_GIVEREF(__pyx_v_self->_versions);
PyTuple_SET_ITEM(__pyx_t_10, 23, __pyx_v_self->_versions);
__pyx_t_1 = 0;
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = 0;
__pyx_t_8 = 0;
__pyx_t_9 = 0;
__pyx_v_state = ((PyObject*)__pyx_t_10);
__pyx_t_10 = 0;
/* "(tree fragment)":6
* cdef bint use_setstate
* state = (self._actors, self._address, self._bandwidth, self._executing, self._extra, self._has_what, self._hash, self._last_seen, self._local_directory, self._memory_limit, self._metrics, self._name, self._nanny, self._nbytes, self._nthreads, self._occupancy, self._pid, self._processing, self._resources, self._services, self._status, self._time_delay, self._used_resources, self._versions)
* _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<<
* if _dict is not None:
* state += (_dict,)
*/
__pyx_t_10 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 6, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_v__dict = __pyx_t_10;
__pyx_t_10 = 0;
/* "(tree fragment)":7
* state = (self._actors, self._address, self._bandwidth, self._executing, self._extra, self._has_what, self._hash, self._last_seen, self._local_directory, self._memory_limit, self._metrics, self._name, self._nanny, self._nbytes, self._nthreads, self._occupancy, self._pid, self._processing, self._resources, self._services, self._status, self._time_delay, self._used_resources, self._versions)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
__pyx_t_11 = (__pyx_v__dict != Py_None);
__pyx_t_12 = (__pyx_t_11 != 0);
if (__pyx_t_12) {
/* "(tree fragment)":8
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
* state += (_dict,) # <<<<<<<<<<<<<<
* use_setstate = True
* else:
*/
__pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_INCREF(__pyx_v__dict);
__Pyx_GIVEREF(__pyx_v__dict);
PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v__dict);
__pyx_t_9 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_9));
__pyx_t_9 = 0;
/* "(tree fragment)":9
* if _dict is not None:
* state += (_dict,)
* use_setstate = True # <<<<<<<<<<<<<<
* else:
* use_setstate = self._actors is not None or self._address is not None or self._executing is not None or self._extra is not None or self._has_what is not None or self._local_directory is not None or self._metrics is not None or self._name is not None or self._nanny is not None or self._processing is not None or self._resources is not None or self._services is not None or self._status is not None or self._used_resources is not None or self._versions is not None
*/
__pyx_v_use_setstate = 1;
/* "(tree fragment)":7
* state = (self._actors, self._address, self._bandwidth, self._executing, self._extra, self._has_what, self._hash, self._last_seen, self._local_directory, self._memory_limit, self._metrics, self._name, self._nanny, self._nbytes, self._nthreads, self._occupancy, self._pid, self._processing, self._resources, self._services, self._status, self._time_delay, self._used_resources, self._versions)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
goto __pyx_L3;
}
/* "(tree fragment)":11
* use_setstate = True
* else:
* use_setstate = self._actors is not None or self._address is not None or self._executing is not None or self._extra is not None or self._has_what is not None or self._local_directory is not None or self._metrics is not None or self._name is not None or self._nanny is not None or self._processing is not None or self._resources is not None or self._services is not None or self._status is not None or self._used_resources is not None or self._versions is not None # <<<<<<<<<<<<<<
* if use_setstate:
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, None), state
*/
/*else*/ {
__pyx_t_11 = (__pyx_v_self->_actors != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_address != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_executing != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_extra != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_has_what != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_local_directory != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_metrics != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_name != Py_None);
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_nanny != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_processing != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_resources != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_services != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_status != Py_None);
__pyx_t_13 = (__pyx_t_11 != 0);
if (!__pyx_t_13) {
} else {
__pyx_t_12 = __pyx_t_13;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_13 = (__pyx_v_self->_used_resources != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_13 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_12 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_versions != ((PyObject*)Py_None));
__pyx_t_13 = (__pyx_t_11 != 0);
__pyx_t_12 = __pyx_t_13;
__pyx_L4_bool_binop_done:;
__pyx_v_use_setstate = __pyx_t_12;
}
__pyx_L3:;
/* "(tree fragment)":12
* else:
* use_setstate = self._actors is not None or self._address is not None or self._executing is not None or self._extra is not None or self._has_what is not None or self._local_directory is not None or self._metrics is not None or self._name is not None or self._nanny is not None or self._processing is not None or self._resources is not None or self._services is not None or self._status is not None or self._used_resources is not None or self._versions is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, None), state
* else:
*/
__pyx_t_12 = (__pyx_v_use_setstate != 0);
if (__pyx_t_12) {
/* "(tree fragment)":13
* use_setstate = self._actors is not None or self._address is not None or self._executing is not None or self._extra is not None or self._has_what is not None or self._local_directory is not None or self._metrics is not None or self._name is not None or self._nanny is not None or self._processing is not None or self._resources is not None or self._services is not None or self._status is not None or self._used_resources is not None or self._versions is not None
* if use_setstate:
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, None), state # <<<<<<<<<<<<<<
* else:
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, state)
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_pyx_unpickle_WorkerState); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_10, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_110416975);
__Pyx_GIVEREF(__pyx_int_110416975);
PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_int_110416975);
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
PyTuple_SET_ITEM(__pyx_t_10, 2, Py_None);
__pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_9);
__Pyx_GIVEREF(__pyx_t_10);
PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_10);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_state);
__pyx_t_9 = 0;
__pyx_t_10 = 0;
__pyx_r = __pyx_t_8;
__pyx_t_8 = 0;
goto __pyx_L0;
/* "(tree fragment)":12
* else:
* use_setstate = self._actors is not None or self._address is not None or self._executing is not None or self._extra is not None or self._has_what is not None or self._local_directory is not None or self._metrics is not None or self._name is not None or self._nanny is not None or self._processing is not None or self._resources is not None or self._services is not None or self._status is not None or self._used_resources is not None or self._versions is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, None), state
* else:
*/
}
/* "(tree fragment)":15
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, None), state
* else:
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, state) # <<<<<<<<<<<<<<
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_WorkerState__set_state(self, __pyx_state)
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_pyx_unpickle_WorkerState); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_10, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_110416975);
__Pyx_GIVEREF(__pyx_int_110416975);
PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_int_110416975);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_v_state);
__pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_10);
PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_t_10);
__pyx_t_8 = 0;
__pyx_t_10 = 0;
__pyx_r = __pyx_t_9;
__pyx_t_9 = 0;
goto __pyx_L0;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_state);
__Pyx_XDECREF(__pyx_v__dict);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_WorkerState__set_state(self, __pyx_state)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_15__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_11WorkerState_15__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_11WorkerState_14__setstate_cython__(((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_11WorkerState_14__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__setstate_cython__", 0);
/* "(tree fragment)":17
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, state)
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_WorkerState__set_state(self, __pyx_state) # <<<<<<<<<<<<<<
*/
if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(1, 17, __pyx_L1_error)
__pyx_t_1 = __pyx_f_11distributed_9scheduler___pyx_unpickle_WorkerState__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_WorkerState, (type(self), 0x694d44f, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_WorkerState__set_state(self, __pyx_state)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.WorkerState.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":665
* _groups: list
*
* def __init__(self, name: str): # <<<<<<<<<<<<<<
* self._name = name
* self._groups = []
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_10TaskPrefix_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_pw_11distributed_9scheduler_10TaskPrefix_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_name,0};
PyObject* values[1] = {0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 665, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
__pyx_v_name = ((PyObject*)values[0]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 665, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_name), (&PyUnicode_Type), 1, "name", 1))) __PYX_ERR(0, 665, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix___init__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self), __pyx_v_name);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_10TaskPrefix___init__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self, PyObject *__pyx_v_name) {
PyObject *__pyx_v_task_durations = NULL;
int __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_t_4;
int __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
double __pyx_t_7;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
/* "distributed/scheduler.py":666
*
* def __init__(self, name: str):
* self._name = name # <<<<<<<<<<<<<<
* self._groups = []
*
*/
__Pyx_INCREF(__pyx_v_name);
__Pyx_GIVEREF(__pyx_v_name);
__Pyx_GOTREF(__pyx_v_self->_name);
__Pyx_DECREF(__pyx_v_self->_name);
__pyx_v_self->_name = __pyx_v_name;
/* "distributed/scheduler.py":667
* def __init__(self, name: str):
* self._name = name
* self._groups = [] # <<<<<<<<<<<<<<
*
* # store timings for each prefix-action
*/
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 667, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_groups);
__Pyx_DECREF(__pyx_v_self->_groups);
__pyx_v_self->_groups = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":670
*
* # store timings for each prefix-action
* self._all_durations = defaultdict(float) # <<<<<<<<<<<<<<
*
* task_durations = dask.config.get("distributed.scheduler.default-task-durations")
*/
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_defaultdict); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 670, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_2, function);
}
}
__pyx_t_1 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_3, ((PyObject *)(&PyFloat_Type))) : __Pyx_PyObject_CallOneArg(__pyx_t_2, ((PyObject *)(&PyFloat_Type)));
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 670, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_all_durations);
__Pyx_DECREF(__pyx_v_self->_all_durations);
__pyx_v_self->_all_durations = __pyx_t_1;
__pyx_t_1 = 0;
/* "distributed/scheduler.py":672
* self._all_durations = defaultdict(float)
*
* task_durations = dask.config.get("distributed.scheduler.default-task-durations") # <<<<<<<<<<<<<<
* if self._name in task_durations:
* self._duration_average = parse_timedelta(task_durations[self._name])
*/
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_dask); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 672, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_config); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 672, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 672, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_2, function);
}
}
__pyx_t_1 = (__pyx_t_3) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_3, __pyx_kp_u_distributed_scheduler_default_ta) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_kp_u_distributed_scheduler_default_ta);
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 672, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_task_durations = __pyx_t_1;
__pyx_t_1 = 0;
/* "distributed/scheduler.py":673
*
* task_durations = dask.config.get("distributed.scheduler.default-task-durations")
* if self._name in task_durations: # <<<<<<<<<<<<<<
* self._duration_average = parse_timedelta(task_durations[self._name])
* else:
*/
__pyx_t_4 = (__Pyx_PySequence_ContainsTF(__pyx_v_self->_name, __pyx_v_task_durations, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 673, __pyx_L1_error)
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
/* "distributed/scheduler.py":674
* task_durations = dask.config.get("distributed.scheduler.default-task-durations")
* if self._name in task_durations:
* self._duration_average = parse_timedelta(task_durations[self._name]) # <<<<<<<<<<<<<<
* else:
* self._duration_average = -1
*/
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_parse_timedelta); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 674, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_v_task_durations, __pyx_v_self->_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 674, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_6 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_2, function);
}
}
__pyx_t_1 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_2, __pyx_t_6, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3);
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 674, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 674, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_self->_duration_average = __pyx_t_7;
/* "distributed/scheduler.py":673
*
* task_durations = dask.config.get("distributed.scheduler.default-task-durations")
* if self._name in task_durations: # <<<<<<<<<<<<<<
* self._duration_average = parse_timedelta(task_durations[self._name])
* else:
*/
goto __pyx_L3;
}
/* "distributed/scheduler.py":676
* self._duration_average = parse_timedelta(task_durations[self._name])
* else:
* self._duration_average = -1 # <<<<<<<<<<<<<<
* self._suspicious = 0
*
*/
/*else*/ {
__pyx_v_self->_duration_average = -1.0;
}
__pyx_L3:;
/* "distributed/scheduler.py":677
* else:
* self._duration_average = -1
* self._suspicious = 0 # <<<<<<<<<<<<<<
*
* @property
*/
__pyx_v_self->_suspicious = 0;
/* "distributed/scheduler.py":665
* _groups: list
*
* def __init__(self, name: str): # <<<<<<<<<<<<<<
* self._name = name
* self._groups = []
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_task_durations);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":680
*
* @property
* def name(self): # <<<<<<<<<<<<<<
* return self._name
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_4name_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_4name_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_4name___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_4name___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":681
* @property
* def name(self):
* return self._name # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_name);
__pyx_r = __pyx_v_self->_name;
goto __pyx_L0;
/* "distributed/scheduler.py":680
*
* @property
* def name(self): # <<<<<<<<<<<<<<
* return self._name
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":684
*
* @property
* def all_durations(self): # <<<<<<<<<<<<<<
* return self._all_durations
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_13all_durations_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_13all_durations_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_13all_durations___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_13all_durations___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":685
* @property
* def all_durations(self):
* return self._all_durations # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_all_durations);
__pyx_r = __pyx_v_self->_all_durations;
goto __pyx_L0;
/* "distributed/scheduler.py":684
*
* @property
* def all_durations(self): # <<<<<<<<<<<<<<
* return self._all_durations
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":688
*
* @property
* def duration_average(self): # <<<<<<<<<<<<<<
* return self._duration_average
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_16duration_average_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_16duration_average_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_16duration_average___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_16duration_average___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":689
* @property
* def duration_average(self):
* return self._duration_average # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_duration_average); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 689, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":688
*
* @property
* def duration_average(self): # <<<<<<<<<<<<<<
* return self._duration_average
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.duration_average.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":692
*
* @property
* def suspicious(self): # <<<<<<<<<<<<<<
* return self._suspicious
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_10suspicious_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_10suspicious_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_10suspicious___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_10suspicious___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":693
* @property
* def suspicious(self):
* return self._suspicious # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_suspicious); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 693, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":692
*
* @property
* def suspicious(self): # <<<<<<<<<<<<<<
* return self._suspicious
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.suspicious.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":696
*
* @property
* def groups(self): # <<<<<<<<<<<<<<
* return self._groups
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_6groups_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_6groups_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_6groups___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6groups___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":697
* @property
* def groups(self):
* return self._groups # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_groups);
__pyx_r = __pyx_v_self->_groups;
goto __pyx_L0;
/* "distributed/scheduler.py":696
*
* @property
* def groups(self): # <<<<<<<<<<<<<<
* return self._groups
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":700
*
* @property
* def states(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return merge_with(sum, [tg._states for tg in self._groups])
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_6states_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_6states_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_6states___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6states___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_8genexpr3__pyx_v_tg = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
Py_ssize_t __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
int __pyx_t_7;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":702
* def states(self):
* tg: TaskGroup
* return merge_with(sum, [tg._states for tg in self._groups]) # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_merge_with); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
{ /* enter inner scope */
__pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 702, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_3);
if (unlikely(__pyx_v_self->_groups == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 702, __pyx_L5_error)
}
__pyx_t_4 = __pyx_v_self->_groups; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
for (;;) {
if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_6 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_6); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(0, 702, __pyx_L5_error)
#else
__pyx_t_6 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 702, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 702, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_8genexpr3__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_6));
__pyx_t_6 = 0;
if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_8genexpr3__pyx_v_tg->_states))) __PYX_ERR(0, 702, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr3__pyx_v_tg); __pyx_8genexpr3__pyx_v_tg = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr3__pyx_v_tg); __pyx_8genexpr3__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__pyx_t_4 = NULL;
__pyx_t_7 = 0;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_2, function);
__pyx_t_7 = 1;
}
}
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_builtin_sum, __pyx_t_3};
__pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 702, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else
#endif
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_builtin_sum, __pyx_t_3};
__pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 702, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else
#endif
{
__pyx_t_6 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_4) {
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL;
}
__Pyx_INCREF(__pyx_builtin_sum);
__Pyx_GIVEREF(__pyx_builtin_sum);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_7, __pyx_builtin_sum);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_7, __pyx_t_3);
__pyx_t_3 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":700
*
* @property
* def states(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return merge_with(sum, [tg._states for tg in self._groups])
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.states.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr3__pyx_v_tg);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":705
*
* @property
* def active(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return [
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_6active_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_6active_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_6active___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6active___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_8genexpr4__pyx_v_tg = NULL;
PyObject *__pyx_8genexpr5__pyx_v_k = NULL;
PyObject *__pyx_8genexpr5__pyx_v_v = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
Py_ssize_t __pyx_t_6;
Py_ssize_t __pyx_t_7;
int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
int __pyx_t_11;
int __pyx_t_12;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":707
* def active(self):
* tg: TaskGroup
* return [ # <<<<<<<<<<<<<<
* tg
* for tg in self._groups
*/
__Pyx_XDECREF(__pyx_r);
{ /* enter inner scope */
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 707, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
/* "distributed/scheduler.py":709
* return [
* tg
* for tg in self._groups # <<<<<<<<<<<<<<
* if any([v != 0 for k, v in tg._states.items() if k != "forgotten"])
* ]
*/
if (unlikely(__pyx_v_self->_groups == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 709, __pyx_L5_error)
}
__pyx_t_2 = __pyx_v_self->_groups; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
for (;;) {
if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_4); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 709, __pyx_L5_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 709, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 709, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_8genexpr4__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_4));
__pyx_t_4 = 0;
/* "distributed/scheduler.py":710
* tg
* for tg in self._groups
* if any([v != 0 for k, v in tg._states.items() if k != "forgotten"]) # <<<<<<<<<<<<<<
* ]
*
*/
{ /* enter inner scope */
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 710, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = 0;
if (unlikely(__pyx_8genexpr4__pyx_v_tg->_states == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items");
__PYX_ERR(0, 710, __pyx_L11_error)
}
__pyx_t_9 = __Pyx_dict_iterator(__pyx_8genexpr4__pyx_v_tg->_states, 1, __pyx_n_s_items, (&__pyx_t_7), (&__pyx_t_8)); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 710, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_5);
__pyx_t_5 = __pyx_t_9;
__pyx_t_9 = 0;
while (1) {
__pyx_t_11 = __Pyx_dict_iter_next(__pyx_t_5, __pyx_t_7, &__pyx_t_6, &__pyx_t_9, &__pyx_t_10, NULL, __pyx_t_8);
if (unlikely(__pyx_t_11 == 0)) break;
if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(0, 710, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GOTREF(__pyx_t_10);
__Pyx_XDECREF_SET(__pyx_8genexpr5__pyx_v_k, __pyx_t_9);
__pyx_t_9 = 0;
__Pyx_XDECREF_SET(__pyx_8genexpr5__pyx_v_v, __pyx_t_10);
__pyx_t_10 = 0;
__pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_8genexpr5__pyx_v_k, __pyx_n_u_forgotten, Py_NE)); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 710, __pyx_L11_error)
if (__pyx_t_12) {
__pyx_t_10 = __Pyx_PyInt_NeObjC(__pyx_8genexpr5__pyx_v_v, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 710, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_10);
if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_10))) __PYX_ERR(0, 710, __pyx_L11_error)
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_8genexpr5__pyx_v_k); __pyx_8genexpr5__pyx_v_k = 0;
__Pyx_XDECREF(__pyx_8genexpr5__pyx_v_v); __pyx_8genexpr5__pyx_v_v = 0;
goto __pyx_L15_exit_scope;
__pyx_L11_error:;
__Pyx_XDECREF(__pyx_8genexpr5__pyx_v_k); __pyx_8genexpr5__pyx_v_k = 0;
__Pyx_XDECREF(__pyx_8genexpr5__pyx_v_v); __pyx_8genexpr5__pyx_v_v = 0;
goto __pyx_L5_error;
__pyx_L15_exit_scope:;
} /* exit inner scope */
__pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_builtin_any, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 710, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 710, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_12) {
/* "distributed/scheduler.py":708
* tg: TaskGroup
* return [
* tg # <<<<<<<<<<<<<<
* for tg in self._groups
* if any([v != 0 for k, v in tg._states.items() if k != "forgotten"])
*/
if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_8genexpr4__pyx_v_tg))) __PYX_ERR(0, 707, __pyx_L5_error)
/* "distributed/scheduler.py":710
* tg
* for tg in self._groups
* if any([v != 0 for k, v in tg._states.items() if k != "forgotten"]) # <<<<<<<<<<<<<<
* ]
*
*/
}
/* "distributed/scheduler.py":709
* return [
* tg
* for tg in self._groups # <<<<<<<<<<<<<<
* if any([v != 0 for k, v in tg._states.items() if k != "forgotten"])
* ]
*/
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr4__pyx_v_tg); __pyx_8genexpr4__pyx_v_tg = 0;
goto __pyx_L16_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr4__pyx_v_tg); __pyx_8genexpr4__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L16_exit_scope:;
} /* exit inner scope */
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":705
*
* @property
* def active(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return [
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.active.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr4__pyx_v_tg);
__Pyx_XDECREF(__pyx_8genexpr5__pyx_v_k);
__Pyx_XDECREF(__pyx_8genexpr5__pyx_v_v);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":714
*
* @property
* def active_states(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return merge_with(sum, [tg._states for tg in self.active])
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_13active_states_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_13active_states_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_13active_states___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_13active_states___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_8genexpr6__pyx_v_tg = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
Py_ssize_t __pyx_t_6;
PyObject *(*__pyx_t_7)(PyObject *);
int __pyx_t_8;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":716
* def active_states(self):
* tg: TaskGroup
* return merge_with(sum, [tg._states for tg in self.active]) # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_merge_with); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 716, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
{ /* enter inner scope */
__pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 716, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_active); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 716, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
if (likely(PyList_CheckExact(__pyx_t_4)) || PyTuple_CheckExact(__pyx_t_4)) {
__pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
} else {
__pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 716, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 716, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
for (;;) {
if (likely(!__pyx_t_7)) {
if (likely(PyList_CheckExact(__pyx_t_5))) {
if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 716, __pyx_L5_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 716, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 716, __pyx_L5_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 716, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
}
} else {
__pyx_t_4 = __pyx_t_7(__pyx_t_5);
if (unlikely(!__pyx_t_4)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(0, 716, __pyx_L5_error)
}
break;
}
__Pyx_GOTREF(__pyx_t_4);
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 716, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_8genexpr6__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_4));
__pyx_t_4 = 0;
if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_8genexpr6__pyx_v_tg->_states))) __PYX_ERR(0, 716, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr6__pyx_v_tg); __pyx_8genexpr6__pyx_v_tg = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr6__pyx_v_tg); __pyx_8genexpr6__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__pyx_t_5 = NULL;
__pyx_t_8 = 0;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_2, function);
__pyx_t_8 = 1;
}
}
#if CYTHON_FAST_PYCALL
if (PyFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_builtin_sum, __pyx_t_3};
__pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 716, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else
#endif
#if CYTHON_FAST_PYCCALL
if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_builtin_sum, __pyx_t_3};
__pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 716, __pyx_L1_error)
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else
#endif
{
__pyx_t_4 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 716, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_builtin_sum);
__Pyx_GIVEREF(__pyx_builtin_sum);
PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_8, __pyx_builtin_sum);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_8, __pyx_t_3);
__pyx_t_3 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 716, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":714
*
* @property
* def active_states(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return merge_with(sum, [tg._states for tg in self.active])
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.active_states.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr6__pyx_v_tg);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":718
* return merge_with(sum, [tg._states for tg in self.active])
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_3__repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_3__repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__repr__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_2__repr__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_gb_11distributed_9scheduler_10TaskPrefix_8__repr___2generator25(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* "distributed/scheduler.py":724
* + ": "
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self.states.items()) if v # <<<<<<<<<<<<<<
* )
* + ">"
*/
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_8__repr___genexpr(PyObject *__pyx_self) {
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr *__pyx_cur_scope;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("genexpr", 0);
__pyx_cur_scope = (struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr *)__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_1_genexpr(__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_1_genexpr, __pyx_empty_tuple, NULL);
if (unlikely(!__pyx_cur_scope)) {
__pyx_cur_scope = ((struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr *)Py_None);
__Pyx_INCREF(Py_None);
__PYX_ERR(0, 724, __pyx_L1_error)
} else {
__Pyx_GOTREF(__pyx_cur_scope);
}
__pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__ *) __pyx_self;
__Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
__Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
{
__pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_11distributed_9scheduler_10TaskPrefix_8__repr___2generator25, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_repr___locals_genexpr, __pyx_n_s_distributed_scheduler); if (unlikely(!gen)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_DECREF(__pyx_cur_scope);
__Pyx_RefNannyFinishContext();
return (PyObject *) gen;
}
/* function exit code */
__pyx_L1_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__repr__.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__Pyx_DECREF(((PyObject *)__pyx_cur_scope));
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_gb_11distributed_9scheduler_10TaskPrefix_8__repr___2generator25(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr *__pyx_cur_scope = ((struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_1_genexpr *)__pyx_generator->closure);
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_t_5;
Py_ssize_t __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
int __pyx_t_9;
Py_ssize_t __pyx_t_10;
Py_UCS4 __pyx_t_11;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("genexpr", 0);
switch (__pyx_generator->resume_label) {
case 0: goto __pyx_L3_first_run;
default: /* CPython raises the right error here */
__Pyx_RefNannyFinishContext();
return NULL;
}
__pyx_L3_first_run:;
if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 724, __pyx_L1_error)
__pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_r);
if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); __PYX_ERR(0, 724, __pyx_L1_error) }
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self), __pyx_n_s_states); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
}
}
__pyx_t_2 = (__pyx_t_3) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3) : __Pyx_PyObject_CallNoArg(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = PySequence_List(__pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_1 = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
__pyx_t_5 = PyList_Sort(__pyx_t_1); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 724, __pyx_L1_error)
if (unlikely(__pyx_t_1 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 724, __pyx_L1_error)
}
__pyx_t_4 = __pyx_t_1; __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
for (;;) {
if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_4)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(0, 724, __pyx_L1_error)
#else
__pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 724, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_2 = PyList_GET_ITEM(sequence, 0);
__pyx_t_3 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_3);
#else
__pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
index = 1; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(0, 724, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 724, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_k);
__Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_k, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_2 = 0;
__Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_v);
__Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_v, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__pyx_t_3 = 0;
__pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_v); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 724, __pyx_L1_error)
if (__pyx_t_9) {
__pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_10 = 0;
__pyx_t_11 = 127;
__pyx_t_3 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Unicode(__pyx_cur_scope->__pyx_v_k), __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_11 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) > __pyx_t_11) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) : __pyx_t_11;
__pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
__pyx_t_3 = 0;
__Pyx_INCREF(__pyx_kp_u__4);
__pyx_t_10 += 2;
__Pyx_GIVEREF(__pyx_kp_u__4);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_kp_u__4);
__pyx_t_3 = __Pyx_PyObject_FormatAndDecref(__Pyx_PyNumber_IntOrLong(__pyx_cur_scope->__pyx_v_v), __pyx_n_u_d); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_11 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) > __pyx_t_11) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) : __pyx_t_11;
__pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_3);
__pyx_t_3 = 0;
__pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_1, 3, __pyx_t_10, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_3))) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_r); __pyx_r = 0;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
#if !CYTHON_USE_EXC_INFO_STACK
__Pyx_Coroutine_ResetAndClearException(__pyx_generator);
#endif
__pyx_generator->resume_label = -1;
__Pyx_Coroutine_clear((PyObject*)__pyx_generator);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":718
* return merge_with(sum, [tg._states for tg in self.active])
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_2__repr__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__ *__pyx_cur_scope;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__repr__", 0);
__pyx_cur_scope = (struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__ *)__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct____repr__(__pyx_ptype_11distributed_9scheduler___pyx_scope_struct____repr__, __pyx_empty_tuple, NULL);
if (unlikely(!__pyx_cur_scope)) {
__pyx_cur_scope = ((struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct____repr__ *)Py_None);
__Pyx_INCREF(Py_None);
__PYX_ERR(0, 718, __pyx_L1_error)
} else {
__Pyx_GOTREF(__pyx_cur_scope);
}
__pyx_cur_scope->__pyx_v_self = __pyx_v_self;
__Pyx_INCREF((PyObject *)__pyx_cur_scope->__pyx_v_self);
__Pyx_GIVEREF((PyObject *)__pyx_cur_scope->__pyx_v_self);
/* "distributed/scheduler.py":719
*
* def __repr__(self):
* return ( # <<<<<<<<<<<<<<
* "<"
* + self._name
*/
__Pyx_XDECREF(__pyx_r);
/* "distributed/scheduler.py":721
* return (
* "<"
* + self._name # <<<<<<<<<<<<<<
* + ": "
* + ", ".join(
*/
__pyx_t_1 = __Pyx_PyUnicode_ConcatSafe(__pyx_kp_u__5, __pyx_cur_scope->__pyx_v_self->_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 721, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
/* "distributed/scheduler.py":722
* "<"
* + self._name
* + ": " # <<<<<<<<<<<<<<
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self.states.items()) if v
*/
__pyx_t_2 = __Pyx_PyUnicode_Concat(__pyx_t_1, __pyx_kp_u__4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 722, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":724
* + ": "
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self.states.items()) if v # <<<<<<<<<<<<<<
* )
* + ">"
*/
__pyx_t_1 = __pyx_pf_11distributed_9scheduler_10TaskPrefix_8__repr___genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 724, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
/* "distributed/scheduler.py":723
* + self._name
* + ": "
* + ", ".join( # <<<<<<<<<<<<<<
* "%s: %d" % (k, v) for (k, v) in sorted(self.states.items()) if v
* )
*/
__pyx_t_3 = __Pyx_Generator_Next(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 723, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = PyUnicode_Join(__pyx_kp_u__6, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 723, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = __Pyx_PyUnicode_Concat(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 723, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":726
* "%s: %d" % (k, v) for (k, v) in sorted(self.states.items()) if v
* )
* + ">" # <<<<<<<<<<<<<<
* )
*
*/
__pyx_t_1 = __Pyx_PyUnicode_Concat(__pyx_t_3, __pyx_kp_u__3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":718
* return merge_with(sum, [tg._states for tg in self.active])
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(((PyObject *)__pyx_cur_scope));
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":730
*
* @property
* def nbytes_in_memory(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return sum([tg._nbytes_in_memory for tg in self._groups])
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_16nbytes_in_memory_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_16nbytes_in_memory_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_16nbytes_in_memory___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_16nbytes_in_memory___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_8genexpr8__pyx_v_tg = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":732
* def nbytes_in_memory(self):
* tg: TaskGroup
* return sum([tg._nbytes_in_memory for tg in self._groups]) # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
{ /* enter inner scope */
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 732, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_self->_groups == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 732, __pyx_L5_error)
}
__pyx_t_2 = __pyx_v_self->_groups; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
for (;;) {
if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_4); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 732, __pyx_L5_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 732, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 732, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_8genexpr8__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_4 = PyInt_FromSsize_t(__pyx_8genexpr8__pyx_v_tg->_nbytes_in_memory); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 732, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 732, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr8__pyx_v_tg); __pyx_8genexpr8__pyx_v_tg = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr8__pyx_v_tg); __pyx_8genexpr8__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_sum, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 732, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":730
*
* @property
* def nbytes_in_memory(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return sum([tg._nbytes_in_memory for tg in self._groups])
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.nbytes_in_memory.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr8__pyx_v_tg);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":735
*
* @property
* def nbytes_total(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return sum([tg._nbytes_total for tg in self._groups])
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_12nbytes_total_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_12nbytes_total_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_12nbytes_total___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_12nbytes_total___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_8genexpr9__pyx_v_tg = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":737
* def nbytes_total(self):
* tg: TaskGroup
* return sum([tg._nbytes_total for tg in self._groups]) # <<<<<<<<<<<<<<
*
* def __len__(self):
*/
__Pyx_XDECREF(__pyx_r);
{ /* enter inner scope */
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_self->_groups == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 737, __pyx_L5_error)
}
__pyx_t_2 = __pyx_v_self->_groups; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
for (;;) {
if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_4); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 737, __pyx_L5_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_8genexpr9__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_4 = PyInt_FromSsize_t(__pyx_8genexpr9__pyx_v_tg->_nbytes_total); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 737, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr9__pyx_v_tg); __pyx_8genexpr9__pyx_v_tg = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr9__pyx_v_tg); __pyx_8genexpr9__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_sum, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":735
*
* @property
* def nbytes_total(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return sum([tg._nbytes_total for tg in self._groups])
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.nbytes_total.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_8genexpr9__pyx_v_tg);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":739
* return sum([tg._nbytes_total for tg in self._groups])
*
* def __len__(self): # <<<<<<<<<<<<<<
* return sum(map(len, self._groups))
*
*/
/* Python wrapper */
static Py_ssize_t __pyx_pw_11distributed_9scheduler_10TaskPrefix_5__len__(PyObject *__pyx_v_self); /*proto*/
static Py_ssize_t __pyx_pw_11distributed_9scheduler_10TaskPrefix_5__len__(PyObject *__pyx_v_self) {
Py_ssize_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__len__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_4__len__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static Py_ssize_t __pyx_pf_11distributed_9scheduler_10TaskPrefix_4__len__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
Py_ssize_t __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__len__", 0);
/* "distributed/scheduler.py":740
*
* def __len__(self):
* return sum(map(len, self._groups)) # <<<<<<<<<<<<<<
*
* @property
*/
__pyx_t_1 = __Pyx_GetBuiltinName(__pyx_n_s_len); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 740, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 740, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
__Pyx_INCREF(__pyx_v_self->_groups);
__Pyx_GIVEREF(__pyx_v_self->_groups);
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->_groups);
__pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_map, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 740, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_sum, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 740, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 740, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_3;
goto __pyx_L0;
/* "distributed/scheduler.py":739
* return sum([tg._nbytes_total for tg in self._groups])
*
* def __len__(self): # <<<<<<<<<<<<<<
* return sum(map(len, self._groups))
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":743
*
* @property
* def duration(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return sum([tg._duration for tg in self._groups])
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_8duration_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_8duration_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_8duration___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_8duration___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_9genexpr10__pyx_v_tg = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":745
* def duration(self):
* tg: TaskGroup
* return sum([tg._duration for tg in self._groups]) # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
{ /* enter inner scope */
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 745, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_self->_groups == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 745, __pyx_L5_error)
}
__pyx_t_2 = __pyx_v_self->_groups; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
for (;;) {
if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_4); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(0, 745, __pyx_L5_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 745, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 745, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_9genexpr10__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_4 = PyFloat_FromDouble(__pyx_9genexpr10__pyx_v_tg->_duration); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 745, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_4);
if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(0, 745, __pyx_L5_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF((PyObject *)__pyx_9genexpr10__pyx_v_tg); __pyx_9genexpr10__pyx_v_tg = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_9genexpr10__pyx_v_tg); __pyx_9genexpr10__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_sum, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 745, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":743
*
* @property
* def duration(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return sum([tg._duration for tg in self._groups])
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.duration.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_9genexpr10__pyx_v_tg);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":748
*
* @property
* def types(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return set().union(*[tg._types for tg in self._groups])
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_5types_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_5types_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_5types___get__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_5types___get__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_9genexpr11__pyx_v_tg = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
Py_ssize_t __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":750
* def types(self):
* tg: TaskGroup
* return set().union(*[tg._types for tg in self._groups]) # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PySet_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_union); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
{ /* enter inner scope */
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 750, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_self->_groups == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 750, __pyx_L5_error)
}
__pyx_t_3 = __pyx_v_self->_groups; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
for (;;) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 750, __pyx_L5_error)
#else
__pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 750, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_11distributed_9scheduler_TaskGroup))))) __PYX_ERR(0, 750, __pyx_L5_error)
__Pyx_XDECREF_SET(__pyx_9genexpr11__pyx_v_tg, ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_t_5));
__pyx_t_5 = 0;
if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_9genexpr11__pyx_v_tg->_types))) __PYX_ERR(0, 750, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF((PyObject *)__pyx_9genexpr11__pyx_v_tg); __pyx_9genexpr11__pyx_v_tg = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF((PyObject *)__pyx_9genexpr11__pyx_v_tg); __pyx_9genexpr11__pyx_v_tg = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__pyx_t_3 = PySequence_Tuple(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":748
*
* @property
* def types(self): # <<<<<<<<<<<<<<
* tg: TaskGroup
* return set().union(*[tg._types for tg in self._groups])
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.types.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_9genexpr11__pyx_v_tg);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_7__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_7__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_6__reduce_cython__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_6__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self) {
PyObject *__pyx_v_state = 0;
PyObject *__pyx_v__dict = 0;
int __pyx_v_use_setstate;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_t_4;
int __pyx_t_5;
int __pyx_t_6;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__reduce_cython__", 0);
/* "(tree fragment)":5
* cdef object _dict
* cdef bint use_setstate
* state = (self._all_durations, self._duration_average, self._groups, self._name, self._suspicious) # <<<<<<<<<<<<<<
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
*/
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_duration_average); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyInt_FromSsize_t(__pyx_v_self->_suspicious); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyTuple_New(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_self->_all_durations);
__Pyx_GIVEREF(__pyx_v_self->_all_durations);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self->_all_durations);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
__Pyx_INCREF(__pyx_v_self->_groups);
__Pyx_GIVEREF(__pyx_v_self->_groups);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_self->_groups);
__Pyx_INCREF(__pyx_v_self->_name);
__Pyx_GIVEREF(__pyx_v_self->_name);
PyTuple_SET_ITEM(__pyx_t_3, 3, __pyx_v_self->_name);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_3, 4, __pyx_t_2);
__pyx_t_1 = 0;
__pyx_t_2 = 0;
__pyx_v_state = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
/* "(tree fragment)":6
* cdef bint use_setstate
* state = (self._all_durations, self._duration_average, self._groups, self._name, self._suspicious)
* _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<<
* if _dict is not None:
* state += (_dict,)
*/
__pyx_t_3 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v__dict = __pyx_t_3;
__pyx_t_3 = 0;
/* "(tree fragment)":7
* state = (self._all_durations, self._duration_average, self._groups, self._name, self._suspicious)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
__pyx_t_4 = (__pyx_v__dict != Py_None);
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
/* "(tree fragment)":8
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
* state += (_dict,) # <<<<<<<<<<<<<<
* use_setstate = True
* else:
*/
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v__dict);
__Pyx_GIVEREF(__pyx_v__dict);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v__dict);
__pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_2));
__pyx_t_2 = 0;
/* "(tree fragment)":9
* if _dict is not None:
* state += (_dict,)
* use_setstate = True # <<<<<<<<<<<<<<
* else:
* use_setstate = self._all_durations is not None or self._groups is not None or self._name is not None
*/
__pyx_v_use_setstate = 1;
/* "(tree fragment)":7
* state = (self._all_durations, self._duration_average, self._groups, self._name, self._suspicious)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
goto __pyx_L3;
}
/* "(tree fragment)":11
* use_setstate = True
* else:
* use_setstate = self._all_durations is not None or self._groups is not None or self._name is not None # <<<<<<<<<<<<<<
* if use_setstate:
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, None), state
*/
/*else*/ {
__pyx_t_4 = (__pyx_v_self->_all_durations != Py_None);
__pyx_t_6 = (__pyx_t_4 != 0);
if (!__pyx_t_6) {
} else {
__pyx_t_5 = __pyx_t_6;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_6 = (__pyx_v_self->_groups != ((PyObject*)Py_None));
__pyx_t_4 = (__pyx_t_6 != 0);
if (!__pyx_t_4) {
} else {
__pyx_t_5 = __pyx_t_4;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_4 = (__pyx_v_self->_name != ((PyObject*)Py_None));
__pyx_t_6 = (__pyx_t_4 != 0);
__pyx_t_5 = __pyx_t_6;
__pyx_L4_bool_binop_done:;
__pyx_v_use_setstate = __pyx_t_5;
}
__pyx_L3:;
/* "(tree fragment)":12
* else:
* use_setstate = self._all_durations is not None or self._groups is not None or self._name is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, None), state
* else:
*/
__pyx_t_5 = (__pyx_v_use_setstate != 0);
if (__pyx_t_5) {
/* "(tree fragment)":13
* use_setstate = self._all_durations is not None or self._groups is not None or self._name is not None
* if use_setstate:
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, None), state # <<<<<<<<<<<<<<
* else:
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, state)
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pyx_unpickle_TaskPrefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_163323807);
__Pyx_GIVEREF(__pyx_int_163323807);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_int_163323807);
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
PyTuple_SET_ITEM(__pyx_t_3, 2, Py_None);
__pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state);
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "(tree fragment)":12
* else:
* use_setstate = self._all_durations is not None or self._groups is not None or self._name is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, None), state
* else:
*/
}
/* "(tree fragment)":15
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, None), state
* else:
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, state) # <<<<<<<<<<<<<<
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_TaskPrefix__set_state(self, __pyx_state)
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pyx_unpickle_TaskPrefix); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_163323807);
__Pyx_GIVEREF(__pyx_int_163323807);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_int_163323807);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state);
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_3);
__pyx_t_1 = 0;
__pyx_t_3 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_state);
__Pyx_XDECREF(__pyx_v__dict);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_TaskPrefix__set_state(self, __pyx_state)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_9__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_10TaskPrefix_9__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_10TaskPrefix_8__setstate_cython__(((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_10TaskPrefix_8__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_TaskPrefix *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__setstate_cython__", 0);
/* "(tree fragment)":17
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, state)
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_TaskPrefix__set_state(self, __pyx_state) # <<<<<<<<<<<<<<
*/
if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(1, 17, __pyx_L1_error)
__pyx_t_1 = __pyx_f_11distributed_9scheduler___pyx_unpickle_TaskPrefix__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_TaskPrefix, (type(self), 0x9bc1f9f, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_TaskPrefix__set_state(self, __pyx_state)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskPrefix.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":805
* _types: set
*
* def __init__(self, name: str): # <<<<<<<<<<<<<<
* self._name = name
* self._prefix = None
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_9TaskGroup_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_pw_11distributed_9scheduler_9TaskGroup_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_name,0};
PyObject* values[1] = {0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 805, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
__pyx_v_name = ((PyObject*)values[0]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 805, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_name), (&PyUnicode_Type), 1, "name", 1))) __PYX_ERR(0, 805, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup___init__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self), __pyx_v_name);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_9TaskGroup___init__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v_name) {
PyObject *__pyx_9genexpr12__pyx_v_state = NULL;
int __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
Py_ssize_t __pyx_t_4;
int __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
int __pyx_t_7;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
/* "distributed/scheduler.py":806
*
* def __init__(self, name: str):
* self._name = name # <<<<<<<<<<<<<<
* self._prefix = None
* self._states = {state: 0 for state in ALL_TASK_STATES}
*/
__Pyx_INCREF(__pyx_v_name);
__Pyx_GIVEREF(__pyx_v_name);
__Pyx_GOTREF(__pyx_v_self->_name);
__Pyx_DECREF(__pyx_v_self->_name);
__pyx_v_self->_name = __pyx_v_name;
/* "distributed/scheduler.py":807
* def __init__(self, name: str):
* self._name = name
* self._prefix = None # <<<<<<<<<<<<<<
* self._states = {state: 0 for state in ALL_TASK_STATES}
* self._states["forgotten"] = 0
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_prefix);
__Pyx_DECREF(((PyObject *)__pyx_v_self->_prefix));
__pyx_v_self->_prefix = ((struct __pyx_obj_11distributed_9scheduler_TaskPrefix *)Py_None);
/* "distributed/scheduler.py":808
* self._name = name
* self._prefix = None
* self._states = {state: 0 for state in ALL_TASK_STATES} # <<<<<<<<<<<<<<
* self._states["forgotten"] = 0
* self._dependencies = set()
*/
{ /* enter inner scope */
__pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 808, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = 0;
__pyx_t_6 = __Pyx_set_iterator(__pyx_v_11distributed_9scheduler_ALL_TASK_STATES, 1, (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 808, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_2);
__pyx_t_2 = __pyx_t_6;
__pyx_t_6 = 0;
while (1) {
__pyx_t_7 = __Pyx_set_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_6, __pyx_t_5);
if (unlikely(__pyx_t_7 == 0)) break;
if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(0, 808, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_XDECREF_SET(__pyx_9genexpr12__pyx_v_state, __pyx_t_6);
__pyx_t_6 = 0;
if (unlikely(PyDict_SetItem(__pyx_t_1, (PyObject*)__pyx_9genexpr12__pyx_v_state, (PyObject*)__pyx_int_0))) __PYX_ERR(0, 808, __pyx_L5_error)
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_9genexpr12__pyx_v_state); __pyx_9genexpr12__pyx_v_state = 0;
goto __pyx_L8_exit_scope;
__pyx_L5_error:;
__Pyx_XDECREF(__pyx_9genexpr12__pyx_v_state); __pyx_9genexpr12__pyx_v_state = 0;
goto __pyx_L1_error;
__pyx_L8_exit_scope:;
} /* exit inner scope */
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_states);
__Pyx_DECREF(__pyx_v_self->_states);
__pyx_v_self->_states = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":809
* self._prefix = None
* self._states = {state: 0 for state in ALL_TASK_STATES}
* self._states["forgotten"] = 0 # <<<<<<<<<<<<<<
* self._dependencies = set()
* self._nbytes_total = 0
*/
if (unlikely(__pyx_v_self->_states == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 809, __pyx_L1_error)
}
if (unlikely(PyDict_SetItem(__pyx_v_self->_states, __pyx_n_u_forgotten, __pyx_int_0) < 0)) __PYX_ERR(0, 809, __pyx_L1_error)
/* "distributed/scheduler.py":810
* self._states = {state: 0 for state in ALL_TASK_STATES}
* self._states["forgotten"] = 0
* self._dependencies = set() # <<<<<<<<<<<<<<
* self._nbytes_total = 0
* self._nbytes_in_memory = 0
*/
__pyx_t_1 = PySet_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 810, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_dependencies);
__Pyx_DECREF(__pyx_v_self->_dependencies);
__pyx_v_self->_dependencies = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":811
* self._states["forgotten"] = 0
* self._dependencies = set()
* self._nbytes_total = 0 # <<<<<<<<<<<<<<
* self._nbytes_in_memory = 0
* self._duration = 0
*/
__pyx_v_self->_nbytes_total = 0;
/* "distributed/scheduler.py":812
* self._dependencies = set()
* self._nbytes_total = 0
* self._nbytes_in_memory = 0 # <<<<<<<<<<<<<<
* self._duration = 0
* self._types = set()
*/
__pyx_v_self->_nbytes_in_memory = 0;
/* "distributed/scheduler.py":813
* self._nbytes_total = 0
* self._nbytes_in_memory = 0
* self._duration = 0 # <<<<<<<<<<<<<<
* self._types = set()
*
*/
__pyx_v_self->_duration = 0.0;
/* "distributed/scheduler.py":814
* self._nbytes_in_memory = 0
* self._duration = 0
* self._types = set() # <<<<<<<<<<<<<<
*
* @property
*/
__pyx_t_1 = PySet_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->_types);
__Pyx_DECREF(__pyx_v_self->_types);
__pyx_v_self->_types = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":805
* _types: set
*
* def __init__(self, name: str): # <<<<<<<<<<<<<<
* self._name = name
* self._prefix = None
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_XDECREF(__pyx_9genexpr12__pyx_v_state);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":817
*
* @property
* def name(self): # <<<<<<<<<<<<<<
* return self._name
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_4name_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_4name_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_4name___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_4name___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":818
* @property
* def name(self):
* return self._name # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_name);
__pyx_r = __pyx_v_self->_name;
goto __pyx_L0;
/* "distributed/scheduler.py":817
*
* @property
* def name(self): # <<<<<<<<<<<<<<
* return self._name
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":821
*
* @property
* def prefix(self): # <<<<<<<<<<<<<<
* return self._prefix
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_6prefix_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_6prefix_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_6prefix___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_6prefix___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":822
* @property
* def prefix(self):
* return self._prefix # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_prefix));
__pyx_r = ((PyObject *)__pyx_v_self->_prefix);
goto __pyx_L0;
/* "distributed/scheduler.py":821
*
* @property
* def prefix(self): # <<<<<<<<<<<<<<
* return self._prefix
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":825
*
* @property
* def states(self): # <<<<<<<<<<<<<<
* return self._states
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_6states_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_6states_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_6states___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_6states___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":826
* @property
* def states(self):
* return self._states # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_states);
__pyx_r = __pyx_v_self->_states;
goto __pyx_L0;
/* "distributed/scheduler.py":825
*
* @property
* def states(self): # <<<<<<<<<<<<<<
* return self._states
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":829
*
* @property
* def dependencies(self): # <<<<<<<<<<<<<<
* return self._dependencies
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_12dependencies_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_12dependencies_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_12dependencies___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_12dependencies___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":830
* @property
* def dependencies(self):
* return self._dependencies # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_dependencies);
__pyx_r = __pyx_v_self->_dependencies;
goto __pyx_L0;
/* "distributed/scheduler.py":829
*
* @property
* def dependencies(self): # <<<<<<<<<<<<<<
* return self._dependencies
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":833
*
* @property
* def nbytes_total(self): # <<<<<<<<<<<<<<
* return self._nbytes_total
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_12nbytes_total_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_12nbytes_total_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_12nbytes_total___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_12nbytes_total___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":834
* @property
* def nbytes_total(self):
* return self._nbytes_total # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_nbytes_total); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 834, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":833
*
* @property
* def nbytes_total(self): # <<<<<<<<<<<<<<
* return self._nbytes_total
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.nbytes_total.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":837
*
* @property
* def nbytes_in_memory(self): # <<<<<<<<<<<<<<
* return self._nbytes_in_memory
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_16nbytes_in_memory_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_16nbytes_in_memory_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_16nbytes_in_memory___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_16nbytes_in_memory___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":838
* @property
* def nbytes_in_memory(self):
* return self._nbytes_in_memory # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_nbytes_in_memory); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 838, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":837
*
* @property
* def nbytes_in_memory(self): # <<<<<<<<<<<<<<
* return self._nbytes_in_memory
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.nbytes_in_memory.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":841
*
* @property
* def duration(self): # <<<<<<<<<<<<<<
* return self._duration
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_8duration_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_8duration_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_8duration___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_8duration___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":842
* @property
* def duration(self):
* return self._duration # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_duration); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":841
*
* @property
* def duration(self): # <<<<<<<<<<<<<<
* return self._duration
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.duration.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":845
*
* @property
* def types(self): # <<<<<<<<<<<<<<
* return self._types
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_5types_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_5types_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_5types___get__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_5types___get__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":846
* @property
* def types(self):
* return self._types # <<<<<<<<<<<<<<
*
* @ccall
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_types);
__pyx_r = __pyx_v_self->_types;
goto __pyx_L0;
/* "distributed/scheduler.py":845
*
* @property
* def types(self): # <<<<<<<<<<<<<<
* return self._types
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":849
*
* @ccall
* def add(self, o): # <<<<<<<<<<<<<<
* ts: TaskState = o
* self._states[ts._state] += 1
*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_3add(PyObject *__pyx_v_self, PyObject *__pyx_v_o); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskGroup_add(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v_o, CYTHON_UNUSED int __pyx_skip_dispatch) {
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("add", 0);
/* "distributed/scheduler.py":850
* @ccall
* def add(self, o):
* ts: TaskState = o # <<<<<<<<<<<<<<
* self._states[ts._state] += 1
* ts._group = self
*/
if (!(likely(((__pyx_v_o) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_o, __pyx_ptype_11distributed_9scheduler_TaskState))))) __PYX_ERR(0, 850, __pyx_L1_error)
__pyx_t_1 = __pyx_v_o;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_ts = ((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":851
* def add(self, o):
* ts: TaskState = o
* self._states[ts._state] += 1 # <<<<<<<<<<<<<<
* ts._group = self
*
*/
if (unlikely(__pyx_v_self->_states == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 851, __pyx_L1_error)
}
__Pyx_INCREF(__pyx_v_self->_states);
__pyx_t_2 = __pyx_v_self->_states;
__Pyx_INCREF(__pyx_v_ts->_state);
__pyx_t_3 = __pyx_v_ts->_state;
if (unlikely(__pyx_t_2 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 851, __pyx_L1_error)
}
__pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 851, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_4 = __Pyx_PyInt_AddObjC(__pyx_t_1, __pyx_int_1, 1, 1, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 851, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_t_2 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 851, __pyx_L1_error)
}
if (unlikely(PyDict_SetItem(__pyx_t_2, __pyx_t_3, __pyx_t_4) < 0)) __PYX_ERR(0, 851, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "distributed/scheduler.py":852
* ts: TaskState = o
* self._states[ts._state] += 1
* ts._group = self # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self));
__Pyx_GOTREF(__pyx_v_ts->_group);
__Pyx_DECREF(((PyObject *)__pyx_v_ts->_group));
__pyx_v_ts->_group = __pyx_v_self;
/* "distributed/scheduler.py":849
*
* @ccall
* def add(self, o): # <<<<<<<<<<<<<<
* ts: TaskState = o
* self._states[ts._state] += 1
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.add", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_ts);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_3add(PyObject *__pyx_v_self, PyObject *__pyx_v_o); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_3add(PyObject *__pyx_v_self, PyObject *__pyx_v_o) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("add (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_2add(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self), ((PyObject *)__pyx_v_o));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_2add(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v_o) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("add", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_9TaskGroup_add(__pyx_v_self, __pyx_v_o, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 849, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.add", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":854
* ts._group = self
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_5__repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_5__repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__repr__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_4__repr__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_gb_11distributed_9scheduler_9TaskGroup_8__repr___2generator26(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */
/* "distributed/scheduler.py":860
* + ": "
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self._states.items()) if v # <<<<<<<<<<<<<<
* )
* + ">"
*/
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_8__repr___genexpr(PyObject *__pyx_self) {
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr *__pyx_cur_scope;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("genexpr", 0);
__pyx_cur_scope = (struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr *)__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_3_genexpr(__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_3_genexpr, __pyx_empty_tuple, NULL);
if (unlikely(!__pyx_cur_scope)) {
__pyx_cur_scope = ((struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr *)Py_None);
__Pyx_INCREF(Py_None);
__PYX_ERR(0, 860, __pyx_L1_error)
} else {
__Pyx_GOTREF(__pyx_cur_scope);
}
__pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__ *) __pyx_self;
__Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
__Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
{
__pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_11distributed_9scheduler_9TaskGroup_8__repr___2generator26, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_repr___locals_genexpr, __pyx_n_s_distributed_scheduler); if (unlikely(!gen)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_DECREF(__pyx_cur_scope);
__Pyx_RefNannyFinishContext();
return (PyObject *) gen;
}
/* function exit code */
__pyx_L1_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__repr__.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__Pyx_DECREF(((PyObject *)__pyx_cur_scope));
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_gb_11distributed_9scheduler_9TaskGroup_8__repr___2generator26(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */
{
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr *__pyx_cur_scope = ((struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_3_genexpr *)__pyx_generator->closure);
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_t_4;
Py_ssize_t __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
int __pyx_t_9;
Py_ssize_t __pyx_t_10;
Py_UCS4 __pyx_t_11;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("genexpr", 0);
switch (__pyx_generator->resume_label) {
case 0: goto __pyx_L3_first_run;
default: /* CPython raises the right error here */
__Pyx_RefNannyFinishContext();
return NULL;
}
__pyx_L3_first_run:;
if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 860, __pyx_L1_error)
__pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_r);
if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); __PYX_ERR(0, 860, __pyx_L1_error) }
if (unlikely(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self->_states == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items");
__PYX_ERR(0, 860, __pyx_L1_error)
}
__pyx_t_2 = __Pyx_PyDict_Items(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self->_states); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PySequence_List(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_1 = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
__pyx_t_4 = PyList_Sort(__pyx_t_1); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 860, __pyx_L1_error)
if (unlikely(__pyx_t_1 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
__PYX_ERR(0, 860, __pyx_L1_error)
}
__pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
for (;;) {
if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_3)) break;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(0, 860, __pyx_L1_error)
#else
__pyx_t_1 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 860, __pyx_L1_error)
}
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_2 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(0, 860, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 860, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_k);
__Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_k, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_2 = 0;
__Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_v);
__Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_v, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_6);
__pyx_t_6 = 0;
__pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_v); if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 860, __pyx_L1_error)
if (__pyx_t_9) {
__pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_10 = 0;
__pyx_t_11 = 127;
__pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Unicode(__pyx_cur_scope->__pyx_v_k), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_11 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_11) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_11;
__pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6);
__pyx_t_6 = 0;
__Pyx_INCREF(__pyx_kp_u__4);
__pyx_t_10 += 2;
__Pyx_GIVEREF(__pyx_kp_u__4);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_kp_u__4);
__pyx_t_6 = __Pyx_PyObject_FormatAndDecref(__Pyx_PyNumber_IntOrLong(__pyx_cur_scope->__pyx_v_v), __pyx_n_u_d); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_11 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_11) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_11;
__pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_6);
__pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_1, 3, __pyx_t_10, __pyx_t_11); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_6))) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_r); __pyx_r = 0;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
#if !CYTHON_USE_EXC_INFO_STACK
__Pyx_Coroutine_ResetAndClearException(__pyx_generator);
#endif
__pyx_generator->resume_label = -1;
__Pyx_Coroutine_clear((PyObject*)__pyx_generator);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":854
* ts._group = self
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_4__repr__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__ *__pyx_cur_scope;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__repr__", 0);
__pyx_cur_scope = (struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__ *)__pyx_tp_new_11distributed_9scheduler___pyx_scope_struct_2___repr__(__pyx_ptype_11distributed_9scheduler___pyx_scope_struct_2___repr__, __pyx_empty_tuple, NULL);
if (unlikely(!__pyx_cur_scope)) {
__pyx_cur_scope = ((struct __pyx_obj_11distributed_9scheduler___pyx_scope_struct_2___repr__ *)Py_None);
__Pyx_INCREF(Py_None);
__PYX_ERR(0, 854, __pyx_L1_error)
} else {
__Pyx_GOTREF(__pyx_cur_scope);
}
__pyx_cur_scope->__pyx_v_self = __pyx_v_self;
__Pyx_INCREF((PyObject *)__pyx_cur_scope->__pyx_v_self);
__Pyx_GIVEREF((PyObject *)__pyx_cur_scope->__pyx_v_self);
/* "distributed/scheduler.py":855
*
* def __repr__(self):
* return ( # <<<<<<<<<<<<<<
* "<"
* + (self._name or "no-group")
*/
__Pyx_XDECREF(__pyx_r);
/* "distributed/scheduler.py":857
* return (
* "<"
* + (self._name or "no-group") # <<<<<<<<<<<<<<
* + ": "
* + ", ".join(
*/
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_self->_name); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 857, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__Pyx_INCREF(__pyx_cur_scope->__pyx_v_self->_name);
__pyx_t_1 = __pyx_cur_scope->__pyx_v_self->_name;
goto __pyx_L3_bool_binop_done;
}
__Pyx_INCREF(__pyx_kp_u_no_group);
__pyx_t_1 = __pyx_kp_u_no_group;
__pyx_L3_bool_binop_done:;
__pyx_t_3 = PyNumber_Add(__pyx_kp_u__5, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 857, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":858
* "<"
* + (self._name or "no-group")
* + ": " # <<<<<<<<<<<<<<
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self._states.items()) if v
*/
__pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_kp_u__4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 858, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "distributed/scheduler.py":860
* + ": "
* + ", ".join(
* "%s: %d" % (k, v) for (k, v) in sorted(self._states.items()) if v # <<<<<<<<<<<<<<
* )
* + ">"
*/
__pyx_t_3 = __pyx_pf_11distributed_9scheduler_9TaskGroup_8__repr___genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
/* "distributed/scheduler.py":859
* + (self._name or "no-group")
* + ": "
* + ", ".join( # <<<<<<<<<<<<<<
* "%s: %d" % (k, v) for (k, v) in sorted(self._states.items()) if v
* )
*/
__pyx_t_4 = __Pyx_Generator_Next(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 859, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = PyUnicode_Join(__pyx_kp_u__6, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 859, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = PyNumber_Add(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 859, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "distributed/scheduler.py":862
* "%s: %d" % (k, v) for (k, v) in sorted(self._states.items()) if v
* )
* + ">" # <<<<<<<<<<<<<<
* )
*
*/
__pyx_t_3 = PyNumber_Add(__pyx_t_4, __pyx_kp_u__3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 862, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":854
* ts._group = self
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return (
* "<"
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(((PyObject *)__pyx_cur_scope));
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":865
* )
*
* def __len__(self): # <<<<<<<<<<<<<<
* return sum(self._states.values())
*
*/
/* Python wrapper */
static Py_ssize_t __pyx_pw_11distributed_9scheduler_9TaskGroup_7__len__(PyObject *__pyx_v_self); /*proto*/
static Py_ssize_t __pyx_pw_11distributed_9scheduler_9TaskGroup_7__len__(PyObject *__pyx_v_self) {
Py_ssize_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__len__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_6__len__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static Py_ssize_t __pyx_pf_11distributed_9scheduler_9TaskGroup_6__len__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
Py_ssize_t __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
Py_ssize_t __pyx_t_3;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__len__", 0);
/* "distributed/scheduler.py":866
*
* def __len__(self):
* return sum(self._states.values()) # <<<<<<<<<<<<<<
*
*
*/
if (unlikely(__pyx_v_self->_states == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "values");
__PYX_ERR(0, 866, __pyx_L1_error)
}
__pyx_t_1 = __Pyx_PyDict_Values(__pyx_v_self->_states); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_sum, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 866, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_3;
goto __pyx_L0;
/* "distributed/scheduler.py":865
* )
*
* def __len__(self): # <<<<<<<<<<<<<<
* return sum(self._states.values())
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_9__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_9__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_8__reduce_cython__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_8__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self) {
PyObject *__pyx_v_state = 0;
PyObject *__pyx_v__dict = 0;
int __pyx_v_use_setstate;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_t_5;
int __pyx_t_6;
int __pyx_t_7;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__reduce_cython__", 0);
/* "(tree fragment)":5
* cdef object _dict
* cdef bint use_setstate
* state = (self._dependencies, self._duration, self._name, self._nbytes_in_memory, self._nbytes_total, self._prefix, self._states, self._types) # <<<<<<<<<<<<<<
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
*/
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_duration); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyInt_FromSsize_t(__pyx_v_self->_nbytes_in_memory); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyInt_FromSsize_t(__pyx_v_self->_nbytes_total); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = PyTuple_New(8); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_self->_dependencies);
__Pyx_GIVEREF(__pyx_v_self->_dependencies);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->_dependencies);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1);
__Pyx_INCREF(__pyx_v_self->_name);
__Pyx_GIVEREF(__pyx_v_self->_name);
PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_self->_name);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_t_3);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_prefix));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self->_prefix));
PyTuple_SET_ITEM(__pyx_t_4, 5, ((PyObject *)__pyx_v_self->_prefix));
__Pyx_INCREF(__pyx_v_self->_states);
__Pyx_GIVEREF(__pyx_v_self->_states);
PyTuple_SET_ITEM(__pyx_t_4, 6, __pyx_v_self->_states);
__Pyx_INCREF(__pyx_v_self->_types);
__Pyx_GIVEREF(__pyx_v_self->_types);
PyTuple_SET_ITEM(__pyx_t_4, 7, __pyx_v_self->_types);
__pyx_t_1 = 0;
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_v_state = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
/* "(tree fragment)":6
* cdef bint use_setstate
* state = (self._dependencies, self._duration, self._name, self._nbytes_in_memory, self._nbytes_total, self._prefix, self._states, self._types)
* _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<<
* if _dict is not None:
* state += (_dict,)
*/
__pyx_t_4 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 6, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_v__dict = __pyx_t_4;
__pyx_t_4 = 0;
/* "(tree fragment)":7
* state = (self._dependencies, self._duration, self._name, self._nbytes_in_memory, self._nbytes_total, self._prefix, self._states, self._types)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
__pyx_t_5 = (__pyx_v__dict != Py_None);
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
/* "(tree fragment)":8
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
* state += (_dict,) # <<<<<<<<<<<<<<
* use_setstate = True
* else:
*/
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v__dict);
__Pyx_GIVEREF(__pyx_v__dict);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v__dict);
__pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3));
__pyx_t_3 = 0;
/* "(tree fragment)":9
* if _dict is not None:
* state += (_dict,)
* use_setstate = True # <<<<<<<<<<<<<<
* else:
* use_setstate = self._dependencies is not None or self._name is not None or self._prefix is not None or self._states is not None or self._types is not None
*/
__pyx_v_use_setstate = 1;
/* "(tree fragment)":7
* state = (self._dependencies, self._duration, self._name, self._nbytes_in_memory, self._nbytes_total, self._prefix, self._states, self._types)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
goto __pyx_L3;
}
/* "(tree fragment)":11
* use_setstate = True
* else:
* use_setstate = self._dependencies is not None or self._name is not None or self._prefix is not None or self._states is not None or self._types is not None # <<<<<<<<<<<<<<
* if use_setstate:
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, None), state
*/
/*else*/ {
__pyx_t_5 = (__pyx_v_self->_dependencies != ((PyObject*)Py_None));
__pyx_t_7 = (__pyx_t_5 != 0);
if (!__pyx_t_7) {
} else {
__pyx_t_6 = __pyx_t_7;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_7 = (__pyx_v_self->_name != ((PyObject*)Py_None));
__pyx_t_5 = (__pyx_t_7 != 0);
if (!__pyx_t_5) {
} else {
__pyx_t_6 = __pyx_t_5;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_5 = (((PyObject *)__pyx_v_self->_prefix) != Py_None);
__pyx_t_7 = (__pyx_t_5 != 0);
if (!__pyx_t_7) {
} else {
__pyx_t_6 = __pyx_t_7;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_7 = (__pyx_v_self->_states != ((PyObject*)Py_None));
__pyx_t_5 = (__pyx_t_7 != 0);
if (!__pyx_t_5) {
} else {
__pyx_t_6 = __pyx_t_5;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_5 = (__pyx_v_self->_types != ((PyObject*)Py_None));
__pyx_t_7 = (__pyx_t_5 != 0);
__pyx_t_6 = __pyx_t_7;
__pyx_L4_bool_binop_done:;
__pyx_v_use_setstate = __pyx_t_6;
}
__pyx_L3:;
/* "(tree fragment)":12
* else:
* use_setstate = self._dependencies is not None or self._name is not None or self._prefix is not None or self._states is not None or self._types is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, None), state
* else:
*/
__pyx_t_6 = (__pyx_v_use_setstate != 0);
if (__pyx_t_6) {
/* "(tree fragment)":13
* use_setstate = self._dependencies is not None or self._name is not None or self._prefix is not None or self._states is not None or self._types is not None
* if use_setstate:
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, None), state # <<<<<<<<<<<<<<
* else:
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, state)
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_TaskGroup); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_135525525);
__Pyx_GIVEREF(__pyx_int_135525525);
PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_135525525);
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
PyTuple_SET_ITEM(__pyx_t_4, 2, Py_None);
__pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_state);
__pyx_t_3 = 0;
__pyx_t_4 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
/* "(tree fragment)":12
* else:
* use_setstate = self._dependencies is not None or self._name is not None or self._prefix is not None or self._states is not None or self._types is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, None), state
* else:
*/
}
/* "(tree fragment)":15
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, None), state
* else:
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, state) # <<<<<<<<<<<<<<
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_TaskGroup__set_state(self, __pyx_state)
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pyx_unpickle_TaskGroup); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_135525525);
__Pyx_GIVEREF(__pyx_int_135525525);
PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_135525525);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state);
__pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4);
__pyx_t_2 = 0;
__pyx_t_4 = 0;
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_state);
__Pyx_XDECREF(__pyx_v__dict);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_TaskGroup__set_state(self, __pyx_state)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_11__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskGroup_11__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskGroup_10__setstate_cython__(((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskGroup_10__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__setstate_cython__", 0);
/* "(tree fragment)":17
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, state)
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_TaskGroup__set_state(self, __pyx_state) # <<<<<<<<<<<<<<
*/
if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(1, 17, __pyx_L1_error)
__pyx_t_1 = __pyx_f_11distributed_9scheduler___pyx_unpickle_TaskGroup__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_TaskGroup, (type(self), 0x813f495, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_TaskGroup__set_state(self, __pyx_state)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskGroup.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1193
* )
*
* def __init__(self, key: str, run_spec: object): # <<<<<<<<<<<<<<
* self._key = key
* self._hash = hash(key)
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_9TaskState_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_pw_11distributed_9scheduler_9TaskState_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_key = 0;
PyObject *__pyx_v_run_spec = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_key,&__pyx_n_s_run_spec,0};
PyObject* values[2] = {0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_key)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_run_spec)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(0, 1193, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1193, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
}
__pyx_v_key = ((PyObject*)values[0]);
__pyx_v_run_spec = values[1];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1193, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskState.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_key), (&PyUnicode_Type), 1, "key", 1))) __PYX_ERR(0, 1193, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState___init__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), __pyx_v_key, __pyx_v_run_spec);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_9TaskState___init__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_run_spec) {
int __pyx_r;
__Pyx_RefNannyDeclarations
Py_hash_t __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
/* "distributed/scheduler.py":1194
*
* def __init__(self, key: str, run_spec: object):
* self._key = key # <<<<<<<<<<<<<<
* self._hash = hash(key)
* self._run_spec = run_spec
*/
__Pyx_INCREF(__pyx_v_key);
__Pyx_GIVEREF(__pyx_v_key);
__Pyx_GOTREF(__pyx_v_self->_key);
__Pyx_DECREF(__pyx_v_self->_key);
__pyx_v_self->_key = __pyx_v_key;
/* "distributed/scheduler.py":1195
* def __init__(self, key: str, run_spec: object):
* self._key = key
* self._hash = hash(key) # <<<<<<<<<<<<<<
* self._run_spec = run_spec
* self._state = None
*/
__pyx_t_1 = PyObject_Hash(__pyx_v_key); if (unlikely(__pyx_t_1 == ((Py_hash_t)-1))) __PYX_ERR(0, 1195, __pyx_L1_error)
__pyx_v_self->_hash = __pyx_t_1;
/* "distributed/scheduler.py":1196
* self._key = key
* self._hash = hash(key)
* self._run_spec = run_spec # <<<<<<<<<<<<<<
* self._state = None
* self._exception = self._traceback = self._exception_blame = None
*/
__Pyx_INCREF(__pyx_v_run_spec);
__Pyx_GIVEREF(__pyx_v_run_spec);
__Pyx_GOTREF(__pyx_v_self->_run_spec);
__Pyx_DECREF(__pyx_v_self->_run_spec);
__pyx_v_self->_run_spec = __pyx_v_run_spec;
/* "distributed/scheduler.py":1197
* self._hash = hash(key)
* self._run_spec = run_spec
* self._state = None # <<<<<<<<<<<<<<
* self._exception = self._traceback = self._exception_blame = None
* self._suspicious = self._retries = 0
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_state);
__Pyx_DECREF(__pyx_v_self->_state);
__pyx_v_self->_state = ((PyObject*)Py_None);
/* "distributed/scheduler.py":1198
* self._run_spec = run_spec
* self._state = None
* self._exception = self._traceback = self._exception_blame = None # <<<<<<<<<<<<<<
* self._suspicious = self._retries = 0
* self._nbytes = -1
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_exception);
__Pyx_DECREF(__pyx_v_self->_exception);
__pyx_v_self->_exception = Py_None;
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_traceback);
__Pyx_DECREF(__pyx_v_self->_traceback);
__pyx_v_self->_traceback = Py_None;
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_exception_blame);
__Pyx_DECREF(__pyx_v_self->_exception_blame);
__pyx_v_self->_exception_blame = Py_None;
/* "distributed/scheduler.py":1199
* self._state = None
* self._exception = self._traceback = self._exception_blame = None
* self._suspicious = self._retries = 0 # <<<<<<<<<<<<<<
* self._nbytes = -1
* self._priority = None
*/
__pyx_v_self->_suspicious = 0;
__pyx_v_self->_retries = 0;
/* "distributed/scheduler.py":1200
* self._exception = self._traceback = self._exception_blame = None
* self._suspicious = self._retries = 0
* self._nbytes = -1 # <<<<<<<<<<<<<<
* self._priority = None
* self._who_wants = set()
*/
__pyx_v_self->_nbytes = -1L;
/* "distributed/scheduler.py":1201
* self._suspicious = self._retries = 0
* self._nbytes = -1
* self._priority = None # <<<<<<<<<<<<<<
* self._who_wants = set()
* self._dependencies = set()
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_priority);
__Pyx_DECREF(__pyx_v_self->_priority);
__pyx_v_self->_priority = ((PyObject*)Py_None);
/* "distributed/scheduler.py":1202
* self._nbytes = -1
* self._priority = None
* self._who_wants = set() # <<<<<<<<<<<<<<
* self._dependencies = set()
* self._dependents = set()
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_who_wants);
__Pyx_DECREF(__pyx_v_self->_who_wants);
__pyx_v_self->_who_wants = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1203
* self._priority = None
* self._who_wants = set()
* self._dependencies = set() # <<<<<<<<<<<<<<
* self._dependents = set()
* self._waiting_on = set()
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1203, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_dependencies);
__Pyx_DECREF(__pyx_v_self->_dependencies);
__pyx_v_self->_dependencies = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1204
* self._who_wants = set()
* self._dependencies = set()
* self._dependents = set() # <<<<<<<<<<<<<<
* self._waiting_on = set()
* self._waiters = set()
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_dependents);
__Pyx_DECREF(__pyx_v_self->_dependents);
__pyx_v_self->_dependents = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1205
* self._dependencies = set()
* self._dependents = set()
* self._waiting_on = set() # <<<<<<<<<<<<<<
* self._waiters = set()
* self._who_has = set()
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_waiting_on);
__Pyx_DECREF(__pyx_v_self->_waiting_on);
__pyx_v_self->_waiting_on = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1206
* self._dependents = set()
* self._waiting_on = set()
* self._waiters = set() # <<<<<<<<<<<<<<
* self._who_has = set()
* self._processing_on = None
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_waiters);
__Pyx_DECREF(__pyx_v_self->_waiters);
__pyx_v_self->_waiters = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1207
* self._waiting_on = set()
* self._waiters = set()
* self._who_has = set() # <<<<<<<<<<<<<<
* self._processing_on = None
* self._has_lost_dependencies = False
*/
__pyx_t_2 = PySet_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1207, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_who_has);
__Pyx_DECREF(__pyx_v_self->_who_has);
__pyx_v_self->_who_has = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1208
* self._waiters = set()
* self._who_has = set()
* self._processing_on = None # <<<<<<<<<<<<<<
* self._has_lost_dependencies = False
* self._host_restrictions = None
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_processing_on);
__Pyx_DECREF(((PyObject *)__pyx_v_self->_processing_on));
__pyx_v_self->_processing_on = ((struct __pyx_obj_11distributed_9scheduler_WorkerState *)Py_None);
/* "distributed/scheduler.py":1209
* self._who_has = set()
* self._processing_on = None
* self._has_lost_dependencies = False # <<<<<<<<<<<<<<
* self._host_restrictions = None
* self._worker_restrictions = None
*/
__pyx_v_self->_has_lost_dependencies = 0;
/* "distributed/scheduler.py":1210
* self._processing_on = None
* self._has_lost_dependencies = False
* self._host_restrictions = None # <<<<<<<<<<<<<<
* self._worker_restrictions = None
* self._resource_restrictions = None
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_host_restrictions);
__Pyx_DECREF(__pyx_v_self->_host_restrictions);
__pyx_v_self->_host_restrictions = ((PyObject*)Py_None);
/* "distributed/scheduler.py":1211
* self._has_lost_dependencies = False
* self._host_restrictions = None
* self._worker_restrictions = None # <<<<<<<<<<<<<<
* self._resource_restrictions = None
* self._loose_restrictions = False
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_worker_restrictions);
__Pyx_DECREF(__pyx_v_self->_worker_restrictions);
__pyx_v_self->_worker_restrictions = ((PyObject*)Py_None);
/* "distributed/scheduler.py":1212
* self._host_restrictions = None
* self._worker_restrictions = None
* self._resource_restrictions = None # <<<<<<<<<<<<<<
* self._loose_restrictions = False
* self._actor = False
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_resource_restrictions);
__Pyx_DECREF(__pyx_v_self->_resource_restrictions);
__pyx_v_self->_resource_restrictions = ((PyObject*)Py_None);
/* "distributed/scheduler.py":1213
* self._worker_restrictions = None
* self._resource_restrictions = None
* self._loose_restrictions = False # <<<<<<<<<<<<<<
* self._actor = False
* self._type = None
*/
__pyx_v_self->_loose_restrictions = 0;
/* "distributed/scheduler.py":1214
* self._resource_restrictions = None
* self._loose_restrictions = False
* self._actor = False # <<<<<<<<<<<<<<
* self._type = None
* self._group_key = key_split_group(key)
*/
__pyx_v_self->_actor = 0;
/* "distributed/scheduler.py":1215
* self._loose_restrictions = False
* self._actor = False
* self._type = None # <<<<<<<<<<<<<<
* self._group_key = key_split_group(key)
* self._group = None
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_type);
__Pyx_DECREF(__pyx_v_self->_type);
__pyx_v_self->_type = ((PyObject*)Py_None);
/* "distributed/scheduler.py":1216
* self._actor = False
* self._type = None
* self._group_key = key_split_group(key) # <<<<<<<<<<<<<<
* self._group = None
* self._metadata = {}
*/
__Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_key_split_group); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_3, function);
}
}
__pyx_t_2 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_4, __pyx_v_key) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_key);
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (!(likely(PyUnicode_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "unicode", Py_TYPE(__pyx_t_2)->tp_name), 0))) __PYX_ERR(0, 1216, __pyx_L1_error)
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_group_key);
__Pyx_DECREF(__pyx_v_self->_group_key);
__pyx_v_self->_group_key = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1217
* self._type = None
* self._group_key = key_split_group(key)
* self._group = None # <<<<<<<<<<<<<<
* self._metadata = {}
* self._annotations = {}
*/
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
__Pyx_GOTREF(__pyx_v_self->_group);
__Pyx_DECREF(((PyObject *)__pyx_v_self->_group));
__pyx_v_self->_group = ((struct __pyx_obj_11distributed_9scheduler_TaskGroup *)Py_None);
/* "distributed/scheduler.py":1218
* self._group_key = key_split_group(key)
* self._group = None
* self._metadata = {} # <<<<<<<<<<<<<<
* self._annotations = {}
*
*/
__pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1218, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_metadata);
__Pyx_DECREF(__pyx_v_self->_metadata);
__pyx_v_self->_metadata = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1219
* self._group = None
* self._metadata = {}
* self._annotations = {} # <<<<<<<<<<<<<<
*
* def __hash__(self):
*/
__pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1219, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_v_self->_annotations);
__Pyx_DECREF(__pyx_v_self->_annotations);
__pyx_v_self->_annotations = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
/* "distributed/scheduler.py":1193
* )
*
* def __init__(self, key: str, run_spec: object): # <<<<<<<<<<<<<<
* self._key = key
* self._hash = hash(key)
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskState.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1221
* self._annotations = {}
*
* def __hash__(self): # <<<<<<<<<<<<<<
* return self._hash
*
*/
/* Python wrapper */
static Py_hash_t __pyx_pw_11distributed_9scheduler_9TaskState_3__hash__(PyObject *__pyx_v_self); /*proto*/
static Py_hash_t __pyx_pw_11distributed_9scheduler_9TaskState_3__hash__(PyObject *__pyx_v_self) {
Py_hash_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__hash__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_2__hash__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static Py_hash_t __pyx_pf_11distributed_9scheduler_9TaskState_2__hash__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
Py_hash_t __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__hash__", 0);
/* "distributed/scheduler.py":1222
*
* def __hash__(self):
* return self._hash # <<<<<<<<<<<<<<
*
* def __eq__(self, other):
*/
__pyx_r = __pyx_v_self->_hash;
goto __pyx_L0;
/* "distributed/scheduler.py":1221
* self._annotations = {}
*
* def __hash__(self): # <<<<<<<<<<<<<<
* return self._hash
*
*/
/* function exit code */
__pyx_L0:;
if (unlikely(__pyx_r == -1) && !PyErr_Occurred()) __pyx_r = -2;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1224
* return self._hash
*
* def __eq__(self, other): # <<<<<<<<<<<<<<
* typ_self: type = type(self)
* typ_other: type = type(other)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__eq__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_4__eq__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((PyObject *)__pyx_v_other));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_4__eq__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v_other) {
PyTypeObject *__pyx_v_typ_self = 0;
PyTypeObject *__pyx_v_typ_other = 0;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_other_ts = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__eq__", 0);
/* "distributed/scheduler.py":1225
*
* def __eq__(self, other):
* typ_self: type = type(self) # <<<<<<<<<<<<<<
* typ_other: type = type(other)
* if typ_self == typ_other:
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_v_typ_self = ((PyTypeObject*)((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
/* "distributed/scheduler.py":1226
* def __eq__(self, other):
* typ_self: type = type(self)
* typ_other: type = type(other) # <<<<<<<<<<<<<<
* if typ_self == typ_other:
* other_ts: TaskState = other
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_other)));
__pyx_v_typ_other = ((PyTypeObject*)((PyObject *)Py_TYPE(__pyx_v_other)));
/* "distributed/scheduler.py":1227
* typ_self: type = type(self)
* typ_other: type = type(other)
* if typ_self == typ_other: # <<<<<<<<<<<<<<
* other_ts: TaskState = other
* return self._key == other_ts._key
*/
__pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_v_typ_self), ((PyObject *)__pyx_v_typ_other), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1227, __pyx_L1_error)
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1227, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_2) {
/* "distributed/scheduler.py":1228
* typ_other: type = type(other)
* if typ_self == typ_other:
* other_ts: TaskState = other # <<<<<<<<<<<<<<
* return self._key == other_ts._key
* else:
*/
if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_11distributed_9scheduler_TaskState))))) __PYX_ERR(0, 1228, __pyx_L1_error)
__pyx_t_1 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_other_ts = ((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_t_1);
__pyx_t_1 = 0;
/* "distributed/scheduler.py":1229
* if typ_self == typ_other:
* other_ts: TaskState = other
* return self._key == other_ts._key # <<<<<<<<<<<<<<
* else:
* return False
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_v_self->_key, __pyx_v_other_ts->_key, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 1229, __pyx_L1_error)
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1229, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1227
* typ_self: type = type(self)
* typ_other: type = type(other)
* if typ_self == typ_other: # <<<<<<<<<<<<<<
* other_ts: TaskState = other
* return self._key == other_ts._key
*/
}
/* "distributed/scheduler.py":1231
* return self._key == other_ts._key
* else:
* return False # <<<<<<<<<<<<<<
*
* @property
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(Py_False);
__pyx_r = Py_False;
goto __pyx_L0;
}
/* "distributed/scheduler.py":1224
* return self._hash
*
* def __eq__(self, other): # <<<<<<<<<<<<<<
* typ_self: type = type(self)
* typ_other: type = type(other)
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_typ_self);
__Pyx_XDECREF(__pyx_v_typ_other);
__Pyx_XDECREF((PyObject *)__pyx_v_other_ts);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1234
*
* @property
* def key(self): # <<<<<<<<<<<<<<
* return self._key
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_3key_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_3key_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_3key___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_3key___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1235
* @property
* def key(self):
* return self._key # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_key);
__pyx_r = __pyx_v_self->_key;
goto __pyx_L0;
/* "distributed/scheduler.py":1234
*
* @property
* def key(self): # <<<<<<<<<<<<<<
* return self._key
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1238
*
* @property
* def prefix(self): # <<<<<<<<<<<<<<
* return self._prefix
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_6prefix_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_6prefix_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_6prefix___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_6prefix___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1239
* @property
* def prefix(self):
* return self._prefix # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_prefix));
__pyx_r = ((PyObject *)__pyx_v_self->_prefix);
goto __pyx_L0;
/* "distributed/scheduler.py":1238
*
* @property
* def prefix(self): # <<<<<<<<<<<<<<
* return self._prefix
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1242
*
* @property
* def run_spec(self): # <<<<<<<<<<<<<<
* return self._run_spec
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_8run_spec_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_8run_spec_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_8run_spec___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8run_spec___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1243
* @property
* def run_spec(self):
* return self._run_spec # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_run_spec);
__pyx_r = __pyx_v_self->_run_spec;
goto __pyx_L0;
/* "distributed/scheduler.py":1242
*
* @property
* def run_spec(self): # <<<<<<<<<<<<<<
* return self._run_spec
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1246
*
* @property
* def priority(self): # <<<<<<<<<<<<<<
* return self._priority
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_8priority_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_8priority_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_8priority___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8priority___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1247
* @property
* def priority(self):
* return self._priority # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_priority);
__pyx_r = __pyx_v_self->_priority;
goto __pyx_L0;
/* "distributed/scheduler.py":1246
*
* @property
* def priority(self): # <<<<<<<<<<<<<<
* return self._priority
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1250
*
* @property
* def state(self) -> str: # <<<<<<<<<<<<<<
* return self._state
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5state_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5state_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_5state___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_5state___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1251
* @property
* def state(self) -> str:
* return self._state # <<<<<<<<<<<<<<
*
* @state.setter
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_state);
__pyx_r = __pyx_v_self->_state;
goto __pyx_L0;
/* "distributed/scheduler.py":1250
*
* @property
* def state(self) -> str: # <<<<<<<<<<<<<<
* return self._state
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1254
*
* @state.setter
* def state(self, value: str): # <<<<<<<<<<<<<<
* self._group._states[self._state] -= 1
* self._group._states[value] += 1
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_9TaskState_5state_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_pw_11distributed_9scheduler_9TaskState_5state_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_value), (&PyUnicode_Type), 1, "value", 1))) __PYX_ERR(0, 1254, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_5state_2__set__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((PyObject*)__pyx_v_value));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_9TaskState_5state_2__set__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v_value) {
int __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__set__", 0);
/* "distributed/scheduler.py":1255
* @state.setter
* def state(self, value: str):
* self._group._states[self._state] -= 1 # <<<<<<<<<<<<<<
* self._group._states[value] += 1
* self._state = value
*/
if (unlikely(__pyx_v_self->_group->_states == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 1255, __pyx_L1_error)
}
__Pyx_INCREF(__pyx_v_self->_group->_states);
__pyx_t_1 = __pyx_v_self->_group->_states;
__Pyx_INCREF(__pyx_v_self->_state);
__pyx_t_2 = __pyx_v_self->_state;
if (unlikely(__pyx_t_1 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 1255, __pyx_L1_error)
}
__pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1255, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = __Pyx_PyInt_SubtractObjC(__pyx_t_3, __pyx_int_1, 1, 1, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1255, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (unlikely(__pyx_t_1 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 1255, __pyx_L1_error)
}
if (unlikely(PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_t_4) < 0)) __PYX_ERR(0, 1255, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":1256
* def state(self, value: str):
* self._group._states[self._state] -= 1
* self._group._states[value] += 1 # <<<<<<<<<<<<<<
* self._state = value
*
*/
if (unlikely(__pyx_v_self->_group->_states == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 1256, __pyx_L1_error)
}
__Pyx_INCREF(__pyx_v_self->_group->_states);
__pyx_t_1 = __pyx_v_self->_group->_states;
__Pyx_INCREF(__pyx_v_value);
__pyx_t_2 = __pyx_v_value;
if (unlikely(__pyx_t_1 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 1256, __pyx_L1_error)
}
__pyx_t_4 = __Pyx_PyDict_GetItem(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_t_4, __pyx_int_1, 1, 1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(__pyx_t_1 == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
__PYX_ERR(0, 1256, __pyx_L1_error)
}
if (unlikely(PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_t_3) < 0)) __PYX_ERR(0, 1256, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":1257
* self._group._states[self._state] -= 1
* self._group._states[value] += 1
* self._state = value # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_INCREF(__pyx_v_value);
__Pyx_GIVEREF(__pyx_v_value);
__Pyx_GOTREF(__pyx_v_self->_state);
__Pyx_DECREF(__pyx_v_self->_state);
__pyx_v_self->_state = __pyx_v_value;
/* "distributed/scheduler.py":1254
*
* @state.setter
* def state(self, value: str): # <<<<<<<<<<<<<<
* self._group._states[self._state] -= 1
* self._group._states[value] += 1
*/
/* function exit code */
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskState.state.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1260
*
* @property
* def dependencies(self): # <<<<<<<<<<<<<<
* return self._dependencies
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_12dependencies_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_12dependencies_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_12dependencies___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_12dependencies___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1261
* @property
* def dependencies(self):
* return self._dependencies # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_dependencies);
__pyx_r = __pyx_v_self->_dependencies;
goto __pyx_L0;
/* "distributed/scheduler.py":1260
*
* @property
* def dependencies(self): # <<<<<<<<<<<<<<
* return self._dependencies
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1264
*
* @property
* def dependents(self): # <<<<<<<<<<<<<<
* return self._dependents
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10dependents_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10dependents_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_10dependents___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10dependents___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1265
* @property
* def dependents(self):
* return self._dependents # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_dependents);
__pyx_r = __pyx_v_self->_dependents;
goto __pyx_L0;
/* "distributed/scheduler.py":1264
*
* @property
* def dependents(self): # <<<<<<<<<<<<<<
* return self._dependents
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1268
*
* @property
* def has_lost_dependencies(self): # <<<<<<<<<<<<<<
* return self._has_lost_dependencies
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_21has_lost_dependencies_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_21has_lost_dependencies_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_21has_lost_dependencies___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_21has_lost_dependencies___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1269
* @property
* def has_lost_dependencies(self):
* return self._has_lost_dependencies # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->_has_lost_dependencies); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1269, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1268
*
* @property
* def has_lost_dependencies(self): # <<<<<<<<<<<<<<
* return self._has_lost_dependencies
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.has_lost_dependencies.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1272
*
* @property
* def waiting_on(self): # <<<<<<<<<<<<<<
* return self._waiting_on
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10waiting_on_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10waiting_on_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_10waiting_on___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10waiting_on___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1273
* @property
* def waiting_on(self):
* return self._waiting_on # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_waiting_on);
__pyx_r = __pyx_v_self->_waiting_on;
goto __pyx_L0;
/* "distributed/scheduler.py":1272
*
* @property
* def waiting_on(self): # <<<<<<<<<<<<<<
* return self._waiting_on
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1276
*
* @property
* def waiters(self): # <<<<<<<<<<<<<<
* return self._waiters
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7waiters_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7waiters_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_7waiters___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_7waiters___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1277
* @property
* def waiters(self):
* return self._waiters # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_waiters);
__pyx_r = __pyx_v_self->_waiters;
goto __pyx_L0;
/* "distributed/scheduler.py":1276
*
* @property
* def waiters(self): # <<<<<<<<<<<<<<
* return self._waiters
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1280
*
* @property
* def who_wants(self): # <<<<<<<<<<<<<<
* return self._who_wants
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9who_wants_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9who_wants_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_9who_wants___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9who_wants___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1281
* @property
* def who_wants(self):
* return self._who_wants # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_who_wants);
__pyx_r = __pyx_v_self->_who_wants;
goto __pyx_L0;
/* "distributed/scheduler.py":1280
*
* @property
* def who_wants(self): # <<<<<<<<<<<<<<
* return self._who_wants
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1284
*
* @property
* def who_has(self): # <<<<<<<<<<<<<<
* return self._who_has
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7who_has_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7who_has_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_7who_has___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_7who_has___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1285
* @property
* def who_has(self):
* return self._who_has # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_who_has);
__pyx_r = __pyx_v_self->_who_has;
goto __pyx_L0;
/* "distributed/scheduler.py":1284
*
* @property
* def who_has(self): # <<<<<<<<<<<<<<
* return self._who_has
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1288
*
* @property
* def processing_on(self): # <<<<<<<<<<<<<<
* return self._processing_on
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_13processing_on_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_13processing_on_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_13processing_on___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_13processing_on___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1289
* @property
* def processing_on(self):
* return self._processing_on # <<<<<<<<<<<<<<
*
* @processing_on.setter
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_processing_on));
__pyx_r = ((PyObject *)__pyx_v_self->_processing_on);
goto __pyx_L0;
/* "distributed/scheduler.py":1288
*
* @property
* def processing_on(self): # <<<<<<<<<<<<<<
* return self._processing_on
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1292
*
* @processing_on.setter
* def processing_on(self, v: WorkerState): # <<<<<<<<<<<<<<
* self._processing_on = v
*
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_9TaskState_13processing_on_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_v); /*proto*/
static int __pyx_pw_11distributed_9scheduler_9TaskState_13processing_on_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_v) {
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_11distributed_9scheduler_WorkerState, 1, "v", 0))) __PYX_ERR(0, 1292, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_13processing_on_2__set__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_v_v));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_9TaskState_13processing_on_2__set__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_v) {
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__", 0);
/* "distributed/scheduler.py":1293
* @processing_on.setter
* def processing_on(self, v: WorkerState):
* self._processing_on = v # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_INCREF(((PyObject *)__pyx_v_v));
__Pyx_GIVEREF(((PyObject *)__pyx_v_v));
__Pyx_GOTREF(__pyx_v_self->_processing_on);
__Pyx_DECREF(((PyObject *)__pyx_v_self->_processing_on));
__pyx_v_self->_processing_on = __pyx_v_v;
/* "distributed/scheduler.py":1292
*
* @processing_on.setter
* def processing_on(self, v: WorkerState): # <<<<<<<<<<<<<<
* self._processing_on = v
*
*/
/* function exit code */
__pyx_r = 0;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1296
*
* @property
* def retries(self): # <<<<<<<<<<<<<<
* return self._retries
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7retries_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7retries_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_7retries___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_7retries___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1297
* @property
* def retries(self):
* return self._retries # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_retries); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1296
*
* @property
* def retries(self): # <<<<<<<<<<<<<<
* return self._retries
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.retries.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1300
*
* @property
* def nbytes(self): # <<<<<<<<<<<<<<
* return self._nbytes
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_6nbytes_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_6nbytes_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_6nbytes___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_6nbytes___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1301
* @property
* def nbytes(self):
* return self._nbytes # <<<<<<<<<<<<<<
*
* @nbytes.setter
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_nbytes); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1301, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1300
*
* @property
* def nbytes(self): # <<<<<<<<<<<<<<
* return self._nbytes
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.nbytes.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1304
*
* @nbytes.setter
* def nbytes(self, v: Py_ssize_t): # <<<<<<<<<<<<<<
* self._nbytes = v
*
*/
/* Python wrapper */
static int __pyx_pw_11distributed_9scheduler_9TaskState_6nbytes_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_arg_v); /*proto*/
static int __pyx_pw_11distributed_9scheduler_9TaskState_6nbytes_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_arg_v) {
Py_ssize_t __pyx_v_v;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
assert(__pyx_arg_v); {
__pyx_v_v = __Pyx_PyIndex_AsSsize_t(__pyx_arg_v); if (unlikely((__pyx_v_v == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 1304, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskState.nbytes.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_6nbytes_2__set__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((Py_ssize_t)__pyx_v_v));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static int __pyx_pf_11distributed_9scheduler_9TaskState_6nbytes_2__set__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, Py_ssize_t __pyx_v_v) {
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__", 0);
/* "distributed/scheduler.py":1305
* @nbytes.setter
* def nbytes(self, v: Py_ssize_t):
* self._nbytes = v # <<<<<<<<<<<<<<
*
* @property
*/
__pyx_v_self->_nbytes = __pyx_v_v;
/* "distributed/scheduler.py":1304
*
* @nbytes.setter
* def nbytes(self, v: Py_ssize_t): # <<<<<<<<<<<<<<
* self._nbytes = v
*
*/
/* function exit code */
__pyx_r = 0;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1308
*
* @property
* def type(self): # <<<<<<<<<<<<<<
* return self._type
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_4type_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_4type_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_4type___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_4type___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1309
* @property
* def type(self):
* return self._type # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_type);
__pyx_r = __pyx_v_self->_type;
goto __pyx_L0;
/* "distributed/scheduler.py":1308
*
* @property
* def type(self): # <<<<<<<<<<<<<<
* return self._type
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1312
*
* @property
* def exception(self): # <<<<<<<<<<<<<<
* return self._exception
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9exception_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9exception_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_9exception___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9exception___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1313
* @property
* def exception(self):
* return self._exception # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_exception);
__pyx_r = __pyx_v_self->_exception;
goto __pyx_L0;
/* "distributed/scheduler.py":1312
*
* @property
* def exception(self): # <<<<<<<<<<<<<<
* return self._exception
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1316
*
* @property
* def traceback(self): # <<<<<<<<<<<<<<
* return self._traceback
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9traceback_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9traceback_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_9traceback___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9traceback___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1317
* @property
* def traceback(self):
* return self._traceback # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_traceback);
__pyx_r = __pyx_v_self->_traceback;
goto __pyx_L0;
/* "distributed/scheduler.py":1316
*
* @property
* def traceback(self): # <<<<<<<<<<<<<<
* return self._traceback
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1320
*
* @property
* def exception_blame(self): # <<<<<<<<<<<<<<
* return self._exception_blame
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_15exception_blame_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_15exception_blame_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_15exception_blame___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_15exception_blame___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1321
* @property
* def exception_blame(self):
* return self._exception_blame # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_exception_blame);
__pyx_r = __pyx_v_self->_exception_blame;
goto __pyx_L0;
/* "distributed/scheduler.py":1320
*
* @property
* def exception_blame(self): # <<<<<<<<<<<<<<
* return self._exception_blame
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1324
*
* @property
* def suspicious(self): # <<<<<<<<<<<<<<
* return self._suspicious
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10suspicious_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10suspicious_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_10suspicious___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10suspicious___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1325
* @property
* def suspicious(self):
* return self._suspicious # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->_suspicious); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1325, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1324
*
* @property
* def suspicious(self): # <<<<<<<<<<<<<<
* return self._suspicious
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.suspicious.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1328
*
* @property
* def host_restrictions(self): # <<<<<<<<<<<<<<
* return self._host_restrictions
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_17host_restrictions_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_17host_restrictions_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_17host_restrictions___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_17host_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1329
* @property
* def host_restrictions(self):
* return self._host_restrictions # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_host_restrictions);
__pyx_r = __pyx_v_self->_host_restrictions;
goto __pyx_L0;
/* "distributed/scheduler.py":1328
*
* @property
* def host_restrictions(self): # <<<<<<<<<<<<<<
* return self._host_restrictions
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1332
*
* @property
* def worker_restrictions(self): # <<<<<<<<<<<<<<
* return self._worker_restrictions
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_19worker_restrictions_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_19worker_restrictions_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_19worker_restrictions___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_19worker_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1333
* @property
* def worker_restrictions(self):
* return self._worker_restrictions # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_worker_restrictions);
__pyx_r = __pyx_v_self->_worker_restrictions;
goto __pyx_L0;
/* "distributed/scheduler.py":1332
*
* @property
* def worker_restrictions(self): # <<<<<<<<<<<<<<
* return self._worker_restrictions
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1336
*
* @property
* def resource_restrictions(self): # <<<<<<<<<<<<<<
* return self._resource_restrictions
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_21resource_restrictions_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_21resource_restrictions_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_21resource_restrictions___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_21resource_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1337
* @property
* def resource_restrictions(self):
* return self._resource_restrictions # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_resource_restrictions);
__pyx_r = __pyx_v_self->_resource_restrictions;
goto __pyx_L0;
/* "distributed/scheduler.py":1336
*
* @property
* def resource_restrictions(self): # <<<<<<<<<<<<<<
* return self._resource_restrictions
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1340
*
* @property
* def loose_restrictions(self): # <<<<<<<<<<<<<<
* return self._loose_restrictions
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_18loose_restrictions_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_18loose_restrictions_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_18loose_restrictions___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_18loose_restrictions___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1341
* @property
* def loose_restrictions(self):
* return self._loose_restrictions # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->_loose_restrictions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1341, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1340
*
* @property
* def loose_restrictions(self): # <<<<<<<<<<<<<<
* return self._loose_restrictions
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.loose_restrictions.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1344
*
* @property
* def metadata(self): # <<<<<<<<<<<<<<
* return self._metadata
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_8metadata_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_8metadata_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_8metadata___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8metadata___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1345
* @property
* def metadata(self):
* return self._metadata # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_metadata);
__pyx_r = __pyx_v_self->_metadata;
goto __pyx_L0;
/* "distributed/scheduler.py":1344
*
* @property
* def metadata(self): # <<<<<<<<<<<<<<
* return self._metadata
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1348
*
* @property
* def annotations(self): # <<<<<<<<<<<<<<
* return self._annotations
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_11annotations_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_11annotations_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_11annotations___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_11annotations___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1349
* @property
* def annotations(self):
* return self._annotations # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_annotations);
__pyx_r = __pyx_v_self->_annotations;
goto __pyx_L0;
/* "distributed/scheduler.py":1348
*
* @property
* def annotations(self): # <<<<<<<<<<<<<<
* return self._annotations
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1352
*
* @property
* def actor(self): # <<<<<<<<<<<<<<
* return self._actor
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5actor_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5actor_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_5actor___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_5actor___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1353
* @property
* def actor(self):
* return self._actor # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->_actor); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1352
*
* @property
* def actor(self): # <<<<<<<<<<<<<<
* return self._actor
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.actor.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1356
*
* @property
* def group(self): # <<<<<<<<<<<<<<
* return self._group
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5group_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_5group_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_5group___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_5group___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1357
* @property
* def group(self):
* return self._group # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_group));
__pyx_r = ((PyObject *)__pyx_v_self->_group);
goto __pyx_L0;
/* "distributed/scheduler.py":1356
*
* @property
* def group(self): # <<<<<<<<<<<<<<
* return self._group
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1360
*
* @property
* def group_key(self): # <<<<<<<<<<<<<<
* return self._group_key
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9group_key_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9group_key_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_9group_key___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_9group_key___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1361
* @property
* def group_key(self):
* return self._group_key # <<<<<<<<<<<<<<
*
* @property
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_group_key);
__pyx_r = __pyx_v_self->_group_key;
goto __pyx_L0;
/* "distributed/scheduler.py":1360
*
* @property
* def group_key(self): # <<<<<<<<<<<<<<
* return self._group_key
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1364
*
* @property
* def prefix_key(self): # <<<<<<<<<<<<<<
* return self._prefix._name
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10prefix_key_1__get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_10prefix_key_1__get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_10prefix_key___get__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10prefix_key___get__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__get__", 0);
/* "distributed/scheduler.py":1365
* @property
* def prefix_key(self):
* return self._prefix._name # <<<<<<<<<<<<<<
*
* @ccall
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_self->_prefix->_name);
__pyx_r = __pyx_v_self->_prefix->_name;
goto __pyx_L0;
/* "distributed/scheduler.py":1364
*
* @property
* def prefix_key(self): # <<<<<<<<<<<<<<
* return self._prefix._name
*
*/
/* function exit code */
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1368
*
* @ccall
* def add_dependency(self, other: "TaskState"): # <<<<<<<<<<<<<<
* """ Add another task as a dependency of this task """
* self._dependencies.add(other)
*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7add_dependency(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_add_dependency(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_other, CYTHON_UNUSED int __pyx_skip_dispatch) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("add_dependency", 0);
/* "distributed/scheduler.py":1370
* def add_dependency(self, other: "TaskState"):
* """ Add another task as a dependency of this task """
* self._dependencies.add(other) # <<<<<<<<<<<<<<
* self._group._dependencies.add(other._group)
* other._dependents.add(self)
*/
if (unlikely(__pyx_v_self->_dependencies == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "add");
__PYX_ERR(0, 1370, __pyx_L1_error)
}
__pyx_t_1 = PySet_Add(__pyx_v_self->_dependencies, ((PyObject *)__pyx_v_other)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1370, __pyx_L1_error)
/* "distributed/scheduler.py":1371
* """ Add another task as a dependency of this task """
* self._dependencies.add(other)
* self._group._dependencies.add(other._group) # <<<<<<<<<<<<<<
* other._dependents.add(self)
*
*/
if (unlikely(__pyx_v_self->_group->_dependencies == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "add");
__PYX_ERR(0, 1371, __pyx_L1_error)
}
__pyx_t_2 = ((PyObject *)__pyx_v_other->_group);
__Pyx_INCREF(__pyx_t_2);
__pyx_t_1 = PySet_Add(__pyx_v_self->_group->_dependencies, __pyx_t_2); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1371, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "distributed/scheduler.py":1372
* self._dependencies.add(other)
* self._group._dependencies.add(other._group)
* other._dependents.add(self) # <<<<<<<<<<<<<<
*
* @ccall
*/
if (unlikely(__pyx_v_other->_dependents == Py_None)) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "add");
__PYX_ERR(0, 1372, __pyx_L1_error)
}
__pyx_t_1 = PySet_Add(__pyx_v_other->_dependents, ((PyObject *)__pyx_v_self)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1372, __pyx_L1_error)
/* "distributed/scheduler.py":1368
*
* @ccall
* def add_dependency(self, other: "TaskState"): # <<<<<<<<<<<<<<
* """ Add another task as a dependency of this task """
* self._dependencies.add(other)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("distributed.scheduler.TaskState.add_dependency", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7add_dependency(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static char __pyx_doc_11distributed_9scheduler_9TaskState_6add_dependency[] = " Add another task as a dependency of this task ";
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_7add_dependency(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("add_dependency (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_11distributed_9scheduler_TaskState, 1, "other", 0))) __PYX_ERR(0, 1368, __pyx_L1_error)
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_6add_dependency(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_other));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_6add_dependency(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_other) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("add_dependency", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_9TaskState_add_dependency(__pyx_v_self, __pyx_v_other, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.add_dependency", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1377
* @inline
* @nogil
* def get_nbytes(self) -> Py_ssize_t: # <<<<<<<<<<<<<<
* return self._nbytes if self._nbytes >= 0 else DEFAULT_DATA_SIZE
*
*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9get_nbytes(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static CYTHON_INLINE Py_ssize_t __pyx_f_11distributed_9scheduler_9TaskState_get_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch) {
Py_ssize_t __pyx_r;
Py_ssize_t __pyx_t_1;
/* "distributed/scheduler.py":1378
* @nogil
* def get_nbytes(self) -> Py_ssize_t:
* return self._nbytes if self._nbytes >= 0 else DEFAULT_DATA_SIZE # <<<<<<<<<<<<<<
*
* @ccall
*/
if (((__pyx_v_self->_nbytes >= 0) != 0)) {
__pyx_t_1 = __pyx_v_self->_nbytes;
} else {
__pyx_t_1 = __pyx_v_11distributed_9scheduler_DEFAULT_DATA_SIZE;
}
__pyx_r = __pyx_t_1;
goto __pyx_L0;
/* "distributed/scheduler.py":1377
* @inline
* @nogil
* def get_nbytes(self) -> Py_ssize_t: # <<<<<<<<<<<<<<
* return self._nbytes if self._nbytes >= 0 else DEFAULT_DATA_SIZE
*
*/
/* function exit code */
__pyx_L0:;
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9get_nbytes(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_9get_nbytes(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("get_nbytes (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_8get_nbytes(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_8get_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
Py_ssize_t __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("get_nbytes", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_9TaskState_get_nbytes(__pyx_v_self, 1); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1377, __pyx_L1_error)
__pyx_t_2 = PyInt_FromSsize_t(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("distributed.scheduler.TaskState.get_nbytes", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1381
*
* @ccall
* def set_nbytes(self, nbytes: Py_ssize_t): # <<<<<<<<<<<<<<
* diff: Py_ssize_t = nbytes
* old_nbytes: Py_ssize_t = self._nbytes
*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_11set_nbytes(PyObject *__pyx_v_self, PyObject *__pyx_arg_nbytes); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_set_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, Py_ssize_t __pyx_v_nbytes, CYTHON_UNUSED int __pyx_skip_dispatch) {
Py_ssize_t __pyx_v_diff;
Py_ssize_t __pyx_v_old_nbytes;
struct __pyx_obj_11distributed_9scheduler_WorkerState *__pyx_v_ws = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
Py_ssize_t __pyx_t_1;
int __pyx_t_2;
struct __pyx_obj_11distributed_9scheduler_TaskGroup *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
Py_ssize_t __pyx_t_5;
int __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
int __pyx_t_8;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("set_nbytes", 0);
/* "distributed/scheduler.py":1382
* @ccall
* def set_nbytes(self, nbytes: Py_ssize_t):
* diff: Py_ssize_t = nbytes # <<<<<<<<<<<<<<
* old_nbytes: Py_ssize_t = self._nbytes
* if old_nbytes >= 0:
*/
__pyx_v_diff = __pyx_v_nbytes;
/* "distributed/scheduler.py":1383
* def set_nbytes(self, nbytes: Py_ssize_t):
* diff: Py_ssize_t = nbytes
* old_nbytes: Py_ssize_t = self._nbytes # <<<<<<<<<<<<<<
* if old_nbytes >= 0:
* diff -= old_nbytes
*/
__pyx_t_1 = __pyx_v_self->_nbytes;
__pyx_v_old_nbytes = __pyx_t_1;
/* "distributed/scheduler.py":1384
* diff: Py_ssize_t = nbytes
* old_nbytes: Py_ssize_t = self._nbytes
* if old_nbytes >= 0: # <<<<<<<<<<<<<<
* diff -= old_nbytes
* self._group._nbytes_total += diff
*/
__pyx_t_2 = ((__pyx_v_old_nbytes >= 0) != 0);
if (__pyx_t_2) {
/* "distributed/scheduler.py":1385
* old_nbytes: Py_ssize_t = self._nbytes
* if old_nbytes >= 0:
* diff -= old_nbytes # <<<<<<<<<<<<<<
* self._group._nbytes_total += diff
* self._group._nbytes_in_memory += diff
*/
__pyx_v_diff = (__pyx_v_diff - __pyx_v_old_nbytes);
/* "distributed/scheduler.py":1384
* diff: Py_ssize_t = nbytes
* old_nbytes: Py_ssize_t = self._nbytes
* if old_nbytes >= 0: # <<<<<<<<<<<<<<
* diff -= old_nbytes
* self._group._nbytes_total += diff
*/
}
/* "distributed/scheduler.py":1386
* if old_nbytes >= 0:
* diff -= old_nbytes
* self._group._nbytes_total += diff # <<<<<<<<<<<<<<
* self._group._nbytes_in_memory += diff
* ws: WorkerState
*/
__Pyx_INCREF(((PyObject *)__pyx_v_self->_group));
__pyx_t_3 = __pyx_v_self->_group;
__pyx_t_3->_nbytes_total = (__pyx_t_3->_nbytes_total + __pyx_v_diff);
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
/* "distributed/scheduler.py":1387
* diff -= old_nbytes
* self._group._nbytes_total += diff
* self._group._nbytes_in_memory += diff # <<<<<<<<<<<<<<
* ws: WorkerState
* for ws in self._who_has:
*/
__Pyx_INCREF(((PyObject *)__pyx_v_self->_group));
__pyx_t_3 = __pyx_v_self->_group;
__pyx_t_3->_nbytes_in_memory = (__pyx_t_3->_nbytes_in_memory + __pyx_v_diff);
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
/* "distributed/scheduler.py":1389
* self._group._nbytes_in_memory += diff
* ws: WorkerState
* for ws in self._who_has: # <<<<<<<<<<<<<<
* ws._nbytes += diff
* self._nbytes = nbytes
*/
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_set_iterator(__pyx_v_self->_who_has, 1, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_4);
__pyx_t_4 = __pyx_t_7;
__pyx_t_7 = 0;
while (1) {
__pyx_t_8 = __Pyx_set_iter_next(__pyx_t_4, __pyx_t_5, &__pyx_t_1, &__pyx_t_7, __pyx_t_6);
if (unlikely(__pyx_t_8 == 0)) break;
if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 1389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_11distributed_9scheduler_WorkerState))))) __PYX_ERR(0, 1389, __pyx_L1_error)
__Pyx_XDECREF_SET(__pyx_v_ws, ((struct __pyx_obj_11distributed_9scheduler_WorkerState *)__pyx_t_7));
__pyx_t_7 = 0;
/* "distributed/scheduler.py":1390
* ws: WorkerState
* for ws in self._who_has:
* ws._nbytes += diff # <<<<<<<<<<<<<<
* self._nbytes = nbytes
*
*/
__pyx_v_ws->_nbytes = (__pyx_v_ws->_nbytes + __pyx_v_diff);
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "distributed/scheduler.py":1391
* for ws in self._who_has:
* ws._nbytes += diff
* self._nbytes = nbytes # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
__pyx_v_self->_nbytes = __pyx_v_nbytes;
/* "distributed/scheduler.py":1381
*
* @ccall
* def set_nbytes(self, nbytes: Py_ssize_t): # <<<<<<<<<<<<<<
* diff: Py_ssize_t = nbytes
* old_nbytes: Py_ssize_t = self._nbytes
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(((PyObject *)__pyx_t_3));
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("distributed.scheduler.TaskState.set_nbytes", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_ws);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_11set_nbytes(PyObject *__pyx_v_self, PyObject *__pyx_arg_nbytes); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_11set_nbytes(PyObject *__pyx_v_self, PyObject *__pyx_arg_nbytes) {
Py_ssize_t __pyx_v_nbytes;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("set_nbytes (wrapper)", 0);
assert(__pyx_arg_nbytes); {
__pyx_v_nbytes = __Pyx_PyIndex_AsSsize_t(__pyx_arg_nbytes); if (unlikely((__pyx_v_nbytes == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 1381, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler.TaskState.set_nbytes", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_10set_nbytes(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((Py_ssize_t)__pyx_v_nbytes));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_10set_nbytes(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, Py_ssize_t __pyx_v_nbytes) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("set_nbytes", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_9TaskState_set_nbytes(__pyx_v_self, __pyx_v_nbytes, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.set_nbytes", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1393
* self._nbytes = nbytes
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return "<Task %r %s>" % (self._key, self._state)
*
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_13__repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_13__repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__repr__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_12__repr__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_12__repr__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
Py_ssize_t __pyx_t_2;
Py_UCS4 __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__repr__", 0);
/* "distributed/scheduler.py":1394
*
* def __repr__(self):
* return "<Task %r %s>" % (self._key, self._state) # <<<<<<<<<<<<<<
*
* @ccall
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyTuple_New(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = 0;
__pyx_t_3 = 127;
__Pyx_INCREF(__pyx_kp_u_Task);
__pyx_t_2 += 6;
__Pyx_GIVEREF(__pyx_kp_u_Task);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_kp_u_Task);
__pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->_key), __pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) > __pyx_t_3) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) : __pyx_t_3;
__pyx_t_2 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_INCREF(__pyx_kp_u__7);
__pyx_t_2 += 1;
__Pyx_GIVEREF(__pyx_kp_u__7);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_kp_u__7);
__pyx_t_4 = __Pyx_PyUnicode_Unicode(__pyx_v_self->_state); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) > __pyx_t_3) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) : __pyx_t_3;
__pyx_t_2 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_INCREF(__pyx_kp_u__3);
__pyx_t_2 += 1;
__Pyx_GIVEREF(__pyx_kp_u__3);
PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_kp_u__3);
__pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_1, 5, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1393
* self._nbytes = nbytes
*
* def __repr__(self): # <<<<<<<<<<<<<<
* return "<Task %r %s>" % (self._key, self._state)
*
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_AddTraceback("distributed.scheduler.TaskState.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1397
*
* @ccall
* def validate(self): # <<<<<<<<<<<<<<
* try:
* for cs in self._who_wants:
*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_15validate(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_f_11distributed_9scheduler_9TaskState_validate(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, CYTHON_UNUSED int __pyx_skip_dispatch) {
PyObject *__pyx_v_cs = NULL;
PyObject *__pyx_v_ws = NULL;
PyObject *__pyx_v_ts = NULL;
PyObject *__pyx_v_e = NULL;
PyObject *__pyx_v_pdb = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
Py_ssize_t __pyx_t_5;
Py_ssize_t __pyx_t_6;
int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
int __pyx_t_9;
int __pyx_t_10;
PyObject *__pyx_t_11 = NULL;
PyObject *__pyx_t_12 = NULL;
PyObject *__pyx_t_13 = NULL;
PyObject *__pyx_t_14 = NULL;
char const *__pyx_t_15;
PyObject *__pyx_t_16 = NULL;
PyObject *__pyx_t_17 = NULL;
PyObject *__pyx_t_18 = NULL;
PyObject *__pyx_t_19 = NULL;
PyObject *__pyx_t_20 = NULL;
PyObject *__pyx_t_21 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("validate", 0);
/* "distributed/scheduler.py":1398
* @ccall
* def validate(self):
* try: # <<<<<<<<<<<<<<
* for cs in self._who_wants:
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants)
*/
{
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
__Pyx_XGOTREF(__pyx_t_1);
__Pyx_XGOTREF(__pyx_t_2);
__Pyx_XGOTREF(__pyx_t_3);
/*try:*/ {
/* "distributed/scheduler.py":1399
* def validate(self):
* try:
* for cs in self._who_wants: # <<<<<<<<<<<<<<
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants)
* for ws in self._who_has:
*/
__pyx_t_5 = 0;
__pyx_t_8 = __Pyx_set_iterator(__pyx_v_self->_who_wants, 1, (&__pyx_t_6), (&__pyx_t_7)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1399, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_4);
__pyx_t_4 = __pyx_t_8;
__pyx_t_8 = 0;
while (1) {
__pyx_t_9 = __Pyx_set_iter_next(__pyx_t_4, __pyx_t_6, &__pyx_t_5, &__pyx_t_8, __pyx_t_7);
if (unlikely(__pyx_t_9 == 0)) break;
if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 1399, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF_SET(__pyx_v_cs, __pyx_t_8);
__pyx_t_8 = 0;
/* "distributed/scheduler.py":1400
* try:
* for cs in self._who_wants:
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants) # <<<<<<<<<<<<<<
* for ws in self._who_has:
* assert isinstance(ws, WorkerState), (repr(ws), self._who_has)
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
__pyx_t_10 = __Pyx_TypeCheck(__pyx_v_cs, __pyx_ptype_11distributed_9scheduler_ClientState);
if (unlikely(!(__pyx_t_10 != 0))) {
__pyx_t_8 = PyObject_Repr(__pyx_v_cs); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1400, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1400, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8);
__Pyx_INCREF(__pyx_v_self->_who_wants);
__Pyx_GIVEREF(__pyx_v_self->_who_wants);
PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->_who_wants);
__pyx_t_8 = 0;
__pyx_t_8 = PyTuple_Pack(1, __pyx_t_11); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1400, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
PyErr_SetObject(PyExc_AssertionError, __pyx_t_8);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__PYX_ERR(0, 1400, __pyx_L3_error)
}
}
#endif
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "distributed/scheduler.py":1401
* for cs in self._who_wants:
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants)
* for ws in self._who_has: # <<<<<<<<<<<<<<
* assert isinstance(ws, WorkerState), (repr(ws), self._who_has)
* for ts in self._dependencies:
*/
__pyx_t_6 = 0;
__pyx_t_8 = __Pyx_set_iterator(__pyx_v_self->_who_has, 1, (&__pyx_t_5), (&__pyx_t_7)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1401, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_4);
__pyx_t_4 = __pyx_t_8;
__pyx_t_8 = 0;
while (1) {
__pyx_t_9 = __Pyx_set_iter_next(__pyx_t_4, __pyx_t_5, &__pyx_t_6, &__pyx_t_8, __pyx_t_7);
if (unlikely(__pyx_t_9 == 0)) break;
if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 1401, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF_SET(__pyx_v_ws, __pyx_t_8);
__pyx_t_8 = 0;
/* "distributed/scheduler.py":1402
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants)
* for ws in self._who_has:
* assert isinstance(ws, WorkerState), (repr(ws), self._who_has) # <<<<<<<<<<<<<<
* for ts in self._dependencies:
* assert isinstance(ts, TaskState), (repr(ts), self._dependencies)
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
__pyx_t_10 = __Pyx_TypeCheck(__pyx_v_ws, __pyx_ptype_11distributed_9scheduler_WorkerState);
if (unlikely(!(__pyx_t_10 != 0))) {
__pyx_t_8 = PyObject_Repr(__pyx_v_ws); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1402, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1402, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8);
__Pyx_INCREF(__pyx_v_self->_who_has);
__Pyx_GIVEREF(__pyx_v_self->_who_has);
PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->_who_has);
__pyx_t_8 = 0;
__pyx_t_8 = PyTuple_Pack(1, __pyx_t_11); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1402, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
PyErr_SetObject(PyExc_AssertionError, __pyx_t_8);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__PYX_ERR(0, 1402, __pyx_L3_error)
}
}
#endif
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "distributed/scheduler.py":1403
* for ws in self._who_has:
* assert isinstance(ws, WorkerState), (repr(ws), self._who_has)
* for ts in self._dependencies: # <<<<<<<<<<<<<<
* assert isinstance(ts, TaskState), (repr(ts), self._dependencies)
* for ts in self._dependents:
*/
__pyx_t_5 = 0;
__pyx_t_8 = __Pyx_set_iterator(__pyx_v_self->_dependencies, 1, (&__pyx_t_6), (&__pyx_t_7)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1403, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_4);
__pyx_t_4 = __pyx_t_8;
__pyx_t_8 = 0;
while (1) {
__pyx_t_9 = __Pyx_set_iter_next(__pyx_t_4, __pyx_t_6, &__pyx_t_5, &__pyx_t_8, __pyx_t_7);
if (unlikely(__pyx_t_9 == 0)) break;
if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 1403, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF_SET(__pyx_v_ts, __pyx_t_8);
__pyx_t_8 = 0;
/* "distributed/scheduler.py":1404
* assert isinstance(ws, WorkerState), (repr(ws), self._who_has)
* for ts in self._dependencies:
* assert isinstance(ts, TaskState), (repr(ts), self._dependencies) # <<<<<<<<<<<<<<
* for ts in self._dependents:
* assert isinstance(ts, TaskState), (repr(ts), self._dependents)
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
__pyx_t_10 = __Pyx_TypeCheck(__pyx_v_ts, __pyx_ptype_11distributed_9scheduler_TaskState);
if (unlikely(!(__pyx_t_10 != 0))) {
__pyx_t_8 = PyObject_Repr(__pyx_v_ts); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1404, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1404, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8);
__Pyx_INCREF(__pyx_v_self->_dependencies);
__Pyx_GIVEREF(__pyx_v_self->_dependencies);
PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->_dependencies);
__pyx_t_8 = 0;
__pyx_t_8 = PyTuple_Pack(1, __pyx_t_11); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1404, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
PyErr_SetObject(PyExc_AssertionError, __pyx_t_8);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__PYX_ERR(0, 1404, __pyx_L3_error)
}
}
#endif
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "distributed/scheduler.py":1405
* for ts in self._dependencies:
* assert isinstance(ts, TaskState), (repr(ts), self._dependencies)
* for ts in self._dependents: # <<<<<<<<<<<<<<
* assert isinstance(ts, TaskState), (repr(ts), self._dependents)
* validate_task_state(self)
*/
__pyx_t_6 = 0;
__pyx_t_8 = __Pyx_set_iterator(__pyx_v_self->_dependents, 1, (&__pyx_t_5), (&__pyx_t_7)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1405, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_4);
__pyx_t_4 = __pyx_t_8;
__pyx_t_8 = 0;
while (1) {
__pyx_t_9 = __Pyx_set_iter_next(__pyx_t_4, __pyx_t_5, &__pyx_t_6, &__pyx_t_8, __pyx_t_7);
if (unlikely(__pyx_t_9 == 0)) break;
if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 1405, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_XDECREF_SET(__pyx_v_ts, __pyx_t_8);
__pyx_t_8 = 0;
/* "distributed/scheduler.py":1406
* assert isinstance(ts, TaskState), (repr(ts), self._dependencies)
* for ts in self._dependents:
* assert isinstance(ts, TaskState), (repr(ts), self._dependents) # <<<<<<<<<<<<<<
* validate_task_state(self)
* except Exception as e:
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
__pyx_t_10 = __Pyx_TypeCheck(__pyx_v_ts, __pyx_ptype_11distributed_9scheduler_TaskState);
if (unlikely(!(__pyx_t_10 != 0))) {
__pyx_t_8 = PyObject_Repr(__pyx_v_ts); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1406, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1406, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_11);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8);
__Pyx_INCREF(__pyx_v_self->_dependents);
__Pyx_GIVEREF(__pyx_v_self->_dependents);
PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->_dependents);
__pyx_t_8 = 0;
__pyx_t_8 = PyTuple_Pack(1, __pyx_t_11); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1406, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
PyErr_SetObject(PyExc_AssertionError, __pyx_t_8);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__PYX_ERR(0, 1406, __pyx_L3_error)
}
}
#endif
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "distributed/scheduler.py":1407
* for ts in self._dependents:
* assert isinstance(ts, TaskState), (repr(ts), self._dependents)
* validate_task_state(self) # <<<<<<<<<<<<<<
* except Exception as e:
* logger.exception(e)
*/
__Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_validate_task_state); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1407, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_11 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_11 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_11)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_11);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
}
}
__pyx_t_4 = (__pyx_t_11) ? __Pyx_PyObject_Call2Args(__pyx_t_8, __pyx_t_11, ((PyObject *)__pyx_v_self)) : __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_self));
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1407, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "distributed/scheduler.py":1398
* @ccall
* def validate(self):
* try: # <<<<<<<<<<<<<<
* for cs in self._who_wants:
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants)
*/
}
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
goto __pyx_L8_try_end;
__pyx_L3_error:;
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
/* "distributed/scheduler.py":1408
* assert isinstance(ts, TaskState), (repr(ts), self._dependents)
* validate_task_state(self)
* except Exception as e: # <<<<<<<<<<<<<<
* logger.exception(e)
* if LOG_PDB:
*/
__pyx_t_7 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
if (__pyx_t_7) {
__Pyx_AddTraceback("distributed.scheduler.TaskState.validate", __pyx_clineno, __pyx_lineno, __pyx_filename);
if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_8, &__pyx_t_11) < 0) __PYX_ERR(0, 1408, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_11);
__Pyx_INCREF(__pyx_t_8);
__pyx_v_e = __pyx_t_8;
/*try:*/ {
/* "distributed/scheduler.py":1409
* validate_task_state(self)
* except Exception as e:
* logger.exception(e) # <<<<<<<<<<<<<<
* if LOG_PDB:
* import pdb
*/
__Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_logger); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1409, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_13);
__pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_exception); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1409, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_14);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_13 = NULL;
if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_14))) {
__pyx_t_13 = PyMethod_GET_SELF(__pyx_t_14);
if (likely(__pyx_t_13)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
__Pyx_INCREF(__pyx_t_13);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_14, function);
}
}
__pyx_t_12 = (__pyx_t_13) ? __Pyx_PyObject_Call2Args(__pyx_t_14, __pyx_t_13, __pyx_v_e) : __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_v_e);
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1409, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
/* "distributed/scheduler.py":1410
* except Exception as e:
* logger.exception(e)
* if LOG_PDB: # <<<<<<<<<<<<<<
* import pdb
*
*/
__Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_LOG_PDB); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1410, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_12); if (unlikely(__pyx_t_10 < 0)) __PYX_ERR(0, 1410, __pyx_L22_error)
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
if (__pyx_t_10) {
/* "distributed/scheduler.py":1411
* logger.exception(e)
* if LOG_PDB:
* import pdb # <<<<<<<<<<<<<<
*
* pdb.set_trace()
*/
__pyx_t_12 = __Pyx_Import(__pyx_n_s_pdb, 0, 0); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1411, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__pyx_v_pdb = __pyx_t_12;
__pyx_t_12 = 0;
/* "distributed/scheduler.py":1413
* import pdb
*
* pdb.set_trace() # <<<<<<<<<<<<<<
*
* def get_nbytes_deps(self):
*/
__pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_v_pdb, __pyx_n_s_set_trace); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1413, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_14);
__pyx_t_13 = NULL;
if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
__pyx_t_13 = PyMethod_GET_SELF(__pyx_t_14);
if (likely(__pyx_t_13)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
__Pyx_INCREF(__pyx_t_13);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_14, function);
}
}
__pyx_t_12 = (__pyx_t_13) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_13) : __Pyx_PyObject_CallNoArg(__pyx_t_14);
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1413, __pyx_L22_error)
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
/* "distributed/scheduler.py":1410
* except Exception as e:
* logger.exception(e)
* if LOG_PDB: # <<<<<<<<<<<<<<
* import pdb
*
*/
}
}
/* "distributed/scheduler.py":1408
* assert isinstance(ts, TaskState), (repr(ts), self._dependents)
* validate_task_state(self)
* except Exception as e: # <<<<<<<<<<<<<<
* logger.exception(e)
* if LOG_PDB:
*/
/*finally:*/ {
/*normal exit:*/{
__Pyx_DECREF(__pyx_v_e);
__pyx_v_e = NULL;
goto __pyx_L23;
}
__pyx_L22_error:;
/*exception exit:*/{
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0;
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18) < 0)) __Pyx_ErrFetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
__Pyx_XGOTREF(__pyx_t_16);
__Pyx_XGOTREF(__pyx_t_17);
__Pyx_XGOTREF(__pyx_t_18);
__Pyx_XGOTREF(__pyx_t_19);
__Pyx_XGOTREF(__pyx_t_20);
__Pyx_XGOTREF(__pyx_t_21);
__pyx_t_7 = __pyx_lineno; __pyx_t_9 = __pyx_clineno; __pyx_t_15 = __pyx_filename;
{
__Pyx_DECREF(__pyx_v_e);
__pyx_v_e = NULL;
}
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_19);
__Pyx_XGIVEREF(__pyx_t_20);
__Pyx_XGIVEREF(__pyx_t_21);
__Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
__Pyx_XGIVEREF(__pyx_t_16);
__Pyx_XGIVEREF(__pyx_t_17);
__Pyx_XGIVEREF(__pyx_t_18);
__Pyx_ErrRestore(__pyx_t_16, __pyx_t_17, __pyx_t_18);
__pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0;
__pyx_lineno = __pyx_t_7; __pyx_clineno = __pyx_t_9; __pyx_filename = __pyx_t_15;
goto __pyx_L5_except_error;
}
__pyx_L23:;
}
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
goto __pyx_L4_exception_handled;
}
goto __pyx_L5_except_error;
__pyx_L5_except_error:;
/* "distributed/scheduler.py":1398
* @ccall
* def validate(self):
* try: # <<<<<<<<<<<<<<
* for cs in self._who_wants:
* assert isinstance(cs, ClientState), (repr(cs), self._who_wants)
*/
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
goto __pyx_L1_error;
__pyx_L4_exception_handled:;
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
__pyx_L8_try_end:;
}
/* "distributed/scheduler.py":1397
*
* @ccall
* def validate(self): # <<<<<<<<<<<<<<
* try:
* for cs in self._who_wants:
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_11);
__Pyx_XDECREF(__pyx_t_12);
__Pyx_XDECREF(__pyx_t_13);
__Pyx_XDECREF(__pyx_t_14);
__Pyx_AddTraceback("distributed.scheduler.TaskState.validate", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_cs);
__Pyx_XDECREF(__pyx_v_ws);
__Pyx_XDECREF(__pyx_v_ts);
__Pyx_XDECREF(__pyx_v_e);
__Pyx_XDECREF(__pyx_v_pdb);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_15validate(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_15validate(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("validate (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_14validate(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_14validate(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("validate", 0);
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_f_11distributed_9scheduler_9TaskState_validate(__pyx_v_self, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1397, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.validate", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1415
* pdb.set_trace()
*
* def get_nbytes_deps(self): # <<<<<<<<<<<<<<
* nbytes: Py_ssize_t = 0
* ts: TaskState
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_17get_nbytes_deps(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_17get_nbytes_deps(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("get_nbytes_deps (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_16get_nbytes_deps(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_16get_nbytes_deps(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
Py_ssize_t __pyx_v_nbytes;
struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_ts = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
Py_ssize_t __pyx_t_2;
Py_ssize_t __pyx_t_3;
int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
int __pyx_t_6;
Py_ssize_t __pyx_t_7;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("get_nbytes_deps", 0);
/* "distributed/scheduler.py":1416
*
* def get_nbytes_deps(self):
* nbytes: Py_ssize_t = 0 # <<<<<<<<<<<<<<
* ts: TaskState
* for ts in self._dependencies:
*/
__pyx_v_nbytes = 0;
/* "distributed/scheduler.py":1418
* nbytes: Py_ssize_t = 0
* ts: TaskState
* for ts in self._dependencies: # <<<<<<<<<<<<<<
* nbytes += ts.get_nbytes()
* return nbytes
*/
__pyx_t_2 = 0;
__pyx_t_5 = __Pyx_set_iterator(__pyx_v_self->_dependencies, 1, (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1418, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_1);
__pyx_t_1 = __pyx_t_5;
__pyx_t_5 = 0;
while (1) {
__pyx_t_6 = __Pyx_set_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, __pyx_t_4);
if (unlikely(__pyx_t_6 == 0)) break;
if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(0, 1418, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_11distributed_9scheduler_TaskState))))) __PYX_ERR(0, 1418, __pyx_L1_error)
__Pyx_XDECREF_SET(__pyx_v_ts, ((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_t_5));
__pyx_t_5 = 0;
/* "distributed/scheduler.py":1419
* ts: TaskState
* for ts in self._dependencies:
* nbytes += ts.get_nbytes() # <<<<<<<<<<<<<<
* return nbytes
*
*/
__pyx_t_7 = __pyx_f_11distributed_9scheduler_9TaskState_get_nbytes(__pyx_v_ts, 0); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1419, __pyx_L1_error)
__pyx_v_nbytes = (__pyx_v_nbytes + __pyx_t_7);
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "distributed/scheduler.py":1420
* for ts in self._dependencies:
* nbytes += ts.get_nbytes()
* return nbytes # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyInt_FromSsize_t(__pyx_v_nbytes); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1420, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
/* "distributed/scheduler.py":1415
* pdb.set_trace()
*
* def get_nbytes_deps(self): # <<<<<<<<<<<<<<
* nbytes: Py_ssize_t = 0
* ts: TaskState
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("distributed.scheduler.TaskState.get_nbytes_deps", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_ts);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_19__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_19__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_18__reduce_cython__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_18__reduce_cython__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self) {
PyObject *__pyx_v_state = 0;
PyObject *__pyx_v__dict = 0;
int __pyx_v_use_setstate;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
int __pyx_t_9;
int __pyx_t_10;
int __pyx_t_11;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__reduce_cython__", 0);
/* "(tree fragment)":5
* cdef object _dict
* cdef bint use_setstate
* state = (self._actor, self._annotations, self._dependencies, self._dependents, self._exception, self._exception_blame, self._group, self._group_key, self._has_lost_dependencies, self._hash, self._host_restrictions, self._key, self._loose_restrictions, self._metadata, self._nbytes, self._prefix, self._priority, self._processing_on, self._resource_restrictions, self._retries, self._run_spec, self._state, self._suspicious, self._traceback, self._type, self._waiters, self._waiting_on, self._who_has, self._who_wants, self._worker_restrictions) # <<<<<<<<<<<<<<
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
*/
__pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->_actor); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_self->_has_lost_dependencies); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __Pyx_PyInt_FromHash_t(__pyx_v_self->_hash); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->_loose_restrictions); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PyInt_FromSsize_t(__pyx_v_self->_nbytes); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = PyInt_FromSsize_t(__pyx_v_self->_retries); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = PyInt_FromSsize_t(__pyx_v_self->_suspicious); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = PyTuple_New(30); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1);
__Pyx_INCREF(__pyx_v_self->_annotations);
__Pyx_GIVEREF(__pyx_v_self->_annotations);
PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->_annotations);
__Pyx_INCREF(__pyx_v_self->_dependencies);
__Pyx_GIVEREF(__pyx_v_self->_dependencies);
PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_self->_dependencies);
__Pyx_INCREF(__pyx_v_self->_dependents);
__Pyx_GIVEREF(__pyx_v_self->_dependents);
PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_v_self->_dependents);
__Pyx_INCREF(__pyx_v_self->_exception);
__Pyx_GIVEREF(__pyx_v_self->_exception);
PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_v_self->_exception);
__Pyx_INCREF(__pyx_v_self->_exception_blame);
__Pyx_GIVEREF(__pyx_v_self->_exception_blame);
PyTuple_SET_ITEM(__pyx_t_8, 5, __pyx_v_self->_exception_blame);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_group));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self->_group));
PyTuple_SET_ITEM(__pyx_t_8, 6, ((PyObject *)__pyx_v_self->_group));
__Pyx_INCREF(__pyx_v_self->_group_key);
__Pyx_GIVEREF(__pyx_v_self->_group_key);
PyTuple_SET_ITEM(__pyx_t_8, 7, __pyx_v_self->_group_key);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_8, 8, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_8, 9, __pyx_t_3);
__Pyx_INCREF(__pyx_v_self->_host_restrictions);
__Pyx_GIVEREF(__pyx_v_self->_host_restrictions);
PyTuple_SET_ITEM(__pyx_t_8, 10, __pyx_v_self->_host_restrictions);
__Pyx_INCREF(__pyx_v_self->_key);
__Pyx_GIVEREF(__pyx_v_self->_key);
PyTuple_SET_ITEM(__pyx_t_8, 11, __pyx_v_self->_key);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_8, 12, __pyx_t_4);
__Pyx_INCREF(__pyx_v_self->_metadata);
__Pyx_GIVEREF(__pyx_v_self->_metadata);
PyTuple_SET_ITEM(__pyx_t_8, 13, __pyx_v_self->_metadata);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_8, 14, __pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_prefix));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self->_prefix));
PyTuple_SET_ITEM(__pyx_t_8, 15, ((PyObject *)__pyx_v_self->_prefix));
__Pyx_INCREF(__pyx_v_self->_priority);
__Pyx_GIVEREF(__pyx_v_self->_priority);
PyTuple_SET_ITEM(__pyx_t_8, 16, __pyx_v_self->_priority);
__Pyx_INCREF(((PyObject *)__pyx_v_self->_processing_on));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self->_processing_on));
PyTuple_SET_ITEM(__pyx_t_8, 17, ((PyObject *)__pyx_v_self->_processing_on));
__Pyx_INCREF(__pyx_v_self->_resource_restrictions);
__Pyx_GIVEREF(__pyx_v_self->_resource_restrictions);
PyTuple_SET_ITEM(__pyx_t_8, 18, __pyx_v_self->_resource_restrictions);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_8, 19, __pyx_t_6);
__Pyx_INCREF(__pyx_v_self->_run_spec);
__Pyx_GIVEREF(__pyx_v_self->_run_spec);
PyTuple_SET_ITEM(__pyx_t_8, 20, __pyx_v_self->_run_spec);
__Pyx_INCREF(__pyx_v_self->_state);
__Pyx_GIVEREF(__pyx_v_self->_state);
PyTuple_SET_ITEM(__pyx_t_8, 21, __pyx_v_self->_state);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_8, 22, __pyx_t_7);
__Pyx_INCREF(__pyx_v_self->_traceback);
__Pyx_GIVEREF(__pyx_v_self->_traceback);
PyTuple_SET_ITEM(__pyx_t_8, 23, __pyx_v_self->_traceback);
__Pyx_INCREF(__pyx_v_self->_type);
__Pyx_GIVEREF(__pyx_v_self->_type);
PyTuple_SET_ITEM(__pyx_t_8, 24, __pyx_v_self->_type);
__Pyx_INCREF(__pyx_v_self->_waiters);
__Pyx_GIVEREF(__pyx_v_self->_waiters);
PyTuple_SET_ITEM(__pyx_t_8, 25, __pyx_v_self->_waiters);
__Pyx_INCREF(__pyx_v_self->_waiting_on);
__Pyx_GIVEREF(__pyx_v_self->_waiting_on);
PyTuple_SET_ITEM(__pyx_t_8, 26, __pyx_v_self->_waiting_on);
__Pyx_INCREF(__pyx_v_self->_who_has);
__Pyx_GIVEREF(__pyx_v_self->_who_has);
PyTuple_SET_ITEM(__pyx_t_8, 27, __pyx_v_self->_who_has);
__Pyx_INCREF(__pyx_v_self->_who_wants);
__Pyx_GIVEREF(__pyx_v_self->_who_wants);
PyTuple_SET_ITEM(__pyx_t_8, 28, __pyx_v_self->_who_wants);
__Pyx_INCREF(__pyx_v_self->_worker_restrictions);
__Pyx_GIVEREF(__pyx_v_self->_worker_restrictions);
PyTuple_SET_ITEM(__pyx_t_8, 29, __pyx_v_self->_worker_restrictions);
__pyx_t_1 = 0;
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = 0;
__pyx_v_state = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
/* "(tree fragment)":6
* cdef bint use_setstate
* state = (self._actor, self._annotations, self._dependencies, self._dependents, self._exception, self._exception_blame, self._group, self._group_key, self._has_lost_dependencies, self._hash, self._host_restrictions, self._key, self._loose_restrictions, self._metadata, self._nbytes, self._prefix, self._priority, self._processing_on, self._resource_restrictions, self._retries, self._run_spec, self._state, self._suspicious, self._traceback, self._type, self._waiters, self._waiting_on, self._who_has, self._who_wants, self._worker_restrictions)
* _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<<
* if _dict is not None:
* state += (_dict,)
*/
__pyx_t_8 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 6, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_v__dict = __pyx_t_8;
__pyx_t_8 = 0;
/* "(tree fragment)":7
* state = (self._actor, self._annotations, self._dependencies, self._dependents, self._exception, self._exception_blame, self._group, self._group_key, self._has_lost_dependencies, self._hash, self._host_restrictions, self._key, self._loose_restrictions, self._metadata, self._nbytes, self._prefix, self._priority, self._processing_on, self._resource_restrictions, self._retries, self._run_spec, self._state, self._suspicious, self._traceback, self._type, self._waiters, self._waiting_on, self._who_has, self._who_wants, self._worker_restrictions)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
__pyx_t_9 = (__pyx_v__dict != Py_None);
__pyx_t_10 = (__pyx_t_9 != 0);
if (__pyx_t_10) {
/* "(tree fragment)":8
* _dict = getattr(self, '__dict__', None)
* if _dict is not None:
* state += (_dict,) # <<<<<<<<<<<<<<
* use_setstate = True
* else:
*/
__pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v__dict);
__Pyx_GIVEREF(__pyx_v__dict);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v__dict);
__pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 8, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_7));
__pyx_t_7 = 0;
/* "(tree fragment)":9
* if _dict is not None:
* state += (_dict,)
* use_setstate = True # <<<<<<<<<<<<<<
* else:
* use_setstate = self._annotations is not None or self._dependencies is not None or self._dependents is not None or self._exception is not None or self._exception_blame is not None or self._group is not None or self._group_key is not None or self._host_restrictions is not None or self._key is not None or self._metadata is not None or self._prefix is not None or self._priority is not None or self._processing_on is not None or self._resource_restrictions is not None or self._run_spec is not None or self._state is not None or self._traceback is not None or self._type is not None or self._waiters is not None or self._waiting_on is not None or self._who_has is not None or self._who_wants is not None or self._worker_restrictions is not None
*/
__pyx_v_use_setstate = 1;
/* "(tree fragment)":7
* state = (self._actor, self._annotations, self._dependencies, self._dependents, self._exception, self._exception_blame, self._group, self._group_key, self._has_lost_dependencies, self._hash, self._host_restrictions, self._key, self._loose_restrictions, self._metadata, self._nbytes, self._prefix, self._priority, self._processing_on, self._resource_restrictions, self._retries, self._run_spec, self._state, self._suspicious, self._traceback, self._type, self._waiters, self._waiting_on, self._who_has, self._who_wants, self._worker_restrictions)
* _dict = getattr(self, '__dict__', None)
* if _dict is not None: # <<<<<<<<<<<<<<
* state += (_dict,)
* use_setstate = True
*/
goto __pyx_L3;
}
/* "(tree fragment)":11
* use_setstate = True
* else:
* use_setstate = self._annotations is not None or self._dependencies is not None or self._dependents is not None or self._exception is not None or self._exception_blame is not None or self._group is not None or self._group_key is not None or self._host_restrictions is not None or self._key is not None or self._metadata is not None or self._prefix is not None or self._priority is not None or self._processing_on is not None or self._resource_restrictions is not None or self._run_spec is not None or self._state is not None or self._traceback is not None or self._type is not None or self._waiters is not None or self._waiting_on is not None or self._who_has is not None or self._who_wants is not None or self._worker_restrictions is not None # <<<<<<<<<<<<<<
* if use_setstate:
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, None), state
*/
/*else*/ {
__pyx_t_9 = (__pyx_v_self->_annotations != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_dependencies != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_dependents != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_exception != Py_None);
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_exception_blame != Py_None);
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (((PyObject *)__pyx_v_self->_group) != Py_None);
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_group_key != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_host_restrictions != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_key != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_metadata != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (((PyObject *)__pyx_v_self->_prefix) != Py_None);
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_priority != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (((PyObject *)__pyx_v_self->_processing_on) != Py_None);
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_resource_restrictions != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_run_spec != Py_None);
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_state != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_traceback != Py_None);
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_type != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_waiters != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_waiting_on != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_who_has != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
if (!__pyx_t_11) {
} else {
__pyx_t_10 = __pyx_t_11;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_11 = (__pyx_v_self->_who_wants != ((PyObject*)Py_None));
__pyx_t_9 = (__pyx_t_11 != 0);
if (!__pyx_t_9) {
} else {
__pyx_t_10 = __pyx_t_9;
goto __pyx_L4_bool_binop_done;
}
__pyx_t_9 = (__pyx_v_self->_worker_restrictions != ((PyObject*)Py_None));
__pyx_t_11 = (__pyx_t_9 != 0);
__pyx_t_10 = __pyx_t_11;
__pyx_L4_bool_binop_done:;
__pyx_v_use_setstate = __pyx_t_10;
}
__pyx_L3:;
/* "(tree fragment)":12
* else:
* use_setstate = self._annotations is not None or self._dependencies is not None or self._dependents is not None or self._exception is not None or self._exception_blame is not None or self._group is not None or self._group_key is not None or self._host_restrictions is not None or self._key is not None or self._metadata is not None or self._prefix is not None or self._priority is not None or self._processing_on is not None or self._resource_restrictions is not None or self._run_spec is not None or self._state is not None or self._traceback is not None or self._type is not None or self._waiters is not None or self._waiting_on is not None or self._who_has is not None or self._who_wants is not None or self._worker_restrictions is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, None), state
* else:
*/
__pyx_t_10 = (__pyx_v_use_setstate != 0);
if (__pyx_t_10) {
/* "(tree fragment)":13
* use_setstate = self._annotations is not None or self._dependencies is not None or self._dependents is not None or self._exception is not None or self._exception_blame is not None or self._group is not None or self._group_key is not None or self._host_restrictions is not None or self._key is not None or self._metadata is not None or self._prefix is not None or self._priority is not None or self._processing_on is not None or self._resource_restrictions is not None or self._run_spec is not None or self._state is not None or self._traceback is not None or self._type is not None or self._waiters is not None or self._waiting_on is not None or self._who_has is not None or self._who_wants is not None or self._worker_restrictions is not None
* if use_setstate:
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, None), state # <<<<<<<<<<<<<<
* else:
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, state)
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_pyx_unpickle_TaskState); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_64377685);
__Pyx_GIVEREF(__pyx_int_64377685);
PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_int_64377685);
__Pyx_INCREF(Py_None);
__Pyx_GIVEREF(Py_None);
PyTuple_SET_ITEM(__pyx_t_8, 2, Py_None);
__pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 13, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_8);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_state);
__pyx_t_7 = 0;
__pyx_t_8 = 0;
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L0;
/* "(tree fragment)":12
* else:
* use_setstate = self._annotations is not None or self._dependencies is not None or self._dependents is not None or self._exception is not None or self._exception_blame is not None or self._group is not None or self._group_key is not None or self._host_restrictions is not None or self._key is not None or self._metadata is not None or self._prefix is not None or self._priority is not None or self._processing_on is not None or self._resource_restrictions is not None or self._run_spec is not None or self._state is not None or self._traceback is not None or self._type is not None or self._waiters is not None or self._waiting_on is not None or self._who_has is not None or self._who_wants is not None or self._worker_restrictions is not None
* if use_setstate: # <<<<<<<<<<<<<<
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, None), state
* else:
*/
}
/* "(tree fragment)":15
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, None), state
* else:
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, state) # <<<<<<<<<<<<<<
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_TaskState__set_state(self, __pyx_state)
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
__Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pyx_unpickle_TaskState); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__Pyx_INCREF(__pyx_int_64377685);
__Pyx_GIVEREF(__pyx_int_64377685);
PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_int_64377685);
__Pyx_INCREF(__pyx_v_state);
__Pyx_GIVEREF(__pyx_v_state);
PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_state);
__pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_8);
__pyx_t_6 = 0;
__pyx_t_8 = 0;
__pyx_r = __pyx_t_7;
__pyx_t_7 = 0;
goto __pyx_L0;
}
/* "(tree fragment)":1
* def __reduce_cython__(self): # <<<<<<<<<<<<<<
* cdef tuple state
* cdef object _dict
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_AddTraceback("distributed.scheduler.TaskState.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_state);
__Pyx_XDECREF(__pyx_v__dict);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_TaskState__set_state(self, __pyx_state)
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_21__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/
static PyObject *__pyx_pw_11distributed_9scheduler_9TaskState_21__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0);
__pyx_r = __pyx_pf_11distributed_9scheduler_9TaskState_20__setstate_cython__(((struct __pyx_obj_11distributed_9scheduler_TaskState *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_9TaskState_20__setstate_cython__(struct __pyx_obj_11distributed_9scheduler_TaskState *__pyx_v_self, PyObject *__pyx_v___pyx_state) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__setstate_cython__", 0);
/* "(tree fragment)":17
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, state)
* def __setstate_cython__(self, __pyx_state):
* __pyx_unpickle_TaskState__set_state(self, __pyx_state) # <<<<<<<<<<<<<<
*/
if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(1, 17, __pyx_L1_error)
__pyx_t_1 = __pyx_f_11distributed_9scheduler___pyx_unpickle_TaskState__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "(tree fragment)":16
* else:
* return __pyx_unpickle_TaskState, (type(self), 0x3d65355, state)
* def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<<
* __pyx_unpickle_TaskState__set_state(self, __pyx_state)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("distributed.scheduler.TaskState.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "distributed/scheduler.py":1428
* """
*
* def __init__(self, states, accessor): # <<<<<<<<<<<<<<
* self._states = states
* self._accessor = accessor
*/
/* Python wrapper */
static PyObject *__pyx_pw_11distributed_9scheduler_19_StateLegacyMapping_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_11distributed_9scheduler_19_StateLegacyMapping_1__init__ = {"__init__", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_11distributed_9scheduler_19_StateLegacyMapping_1__init__, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_11distributed_9scheduler_19_StateLegacyMapping_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_self = 0;
PyObject *__pyx_v_states = 0;
PyObject *__pyx_v_accessor = 0;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_states,&__pyx_n_s_accessor,0};
PyObject* values[3] = {0,0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_states)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("__init__", 1, 3, 3, 1); __PYX_ERR(0, 1428, __pyx_L3_error)
}
CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_accessor)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("__init__", 1, 3, 3, 2); __PYX_ERR(0, 1428, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(0, 1428, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
}
__pyx_v_self = values[0];
__pyx_v_states = values[1];
__pyx_v_accessor = values[2];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__init__", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1428, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("distributed.scheduler._StateLegacyMapping.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_11distributed_9scheduler_19_StateLegacyMapping___init__(__pyx_self, __pyx_v_self, __pyx_v_states, __pyx_v_accessor);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_11distributed_9scheduler_19_StateLegacyMapping___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_states, PyObject *__pyx_v_accessor) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("__init__", 0);
/* "distributed/scheduler.py":1429
*
* def __init__(self, states, accessor):
* self._states = states # <<<<<<<<<<<<<<
* self._accessor = accessor
*
*/
if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_states_2, __pyx_v_states) < 0) __PYX_ERR(0, 1429, __pyx_L1_error)
/* "distributed/scheduler.py":1430
* def __init__(self, states, accessor):
* self._states = states
* self._accessor = accessor # <<<<<<<<<<<<<<
*
* def __iter__(self):
*/
if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_accessor_2, __pyx_v_accessor) < 0) __PYX_ERR(0, 14
View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment