123456789101112131415161718192021222324252627 |
- Common problems and solutions
- =============================
- List set of common problems and their solution.
- Most functions are however rather safe and should return an exception in the wrapper, instead of crashing the kernel.
- Note that even if the MvK crashes with such an error as mentioned below, this only breaks the violating task and all other tasks are left unharmed.
- As such, it is possible for a user to log in again on a different task, although there is no continuation.
- body_id is None
- ---------------------
- This error likely means that a function is called that was never defined: the declaration was found, but the definition is empty.
- None has no length
- ------------------------
- Operations done on an error value, such as a dictionary read on a non-existing element
- pickle.PicklingError: Can't pickle <function X>
- -----------------------------------------------
- The wrapper for manual activities relies on the multiprocessing library to spawn the various user-side interactions.
- As such, the different functions are spawned in different Python processes, to allow for multiple such functions to execute simultaneously, as needed for process enactment.
- While this allows for multiple such functions to execute simultaneously, as needed for process enactment, `this is not 100% supported in Python for Windows<https://docs.python.org/2/library/multiprocessing.html#windows>`_.
- Your error is therefore likely caused by the multiprocessing library wanting to pass a function (or something else...), which it could not.
- For example, it is not possible on Windows to give a local (nested) function as parameter to *transformation_execute_MANUAL*, as local functions cannot be pickled.
- On Linux, that would work perfectly fine.
|