• Kirill Smelkov's avatar
    X wcfs: client: Handle fork · 3f83469c
    Kirill Smelkov authored
    Without special care a forked child may interfere in parent-wcfs
    exchange via Python GC -> PyFileH.__del__ -> FileH.close -> message to
    WCFS sent from the child. This actually happens for real when running
    test.py/neo-wcfs because NEO test cluster spawns master and storage
    nodes with just fork without exec.
    
    -> detach from wcfs in child right after fork and deactivate all
    mappings in order not to provide stale data. See top-level comments
    added to wcfs/client/wcfs.cpp for details.
    3f83469c
wcfs.cpp 52.5 KB