1. 01 Jun, 2021 1 commit
    • Kirill Smelkov's avatar
      X wcfs: Teach join/serve to start successfully even after unclean wcfs shutdown · b0ca031f
      Kirill Smelkov authored
      Before this patch, after `xslapos node stop wcfs`, `xslapos node start wcfs`
      was failing in a sense that started service was turning into EXITED state
      with something like the following in its log:
      
          wcfs: 2021/05/31 15:28:15 zodb: FIXME: open zeo://10.0.82.110:2100?storage=root: raw cache is not ready for invalidations -> NoCache forced
          Traceback (most recent call last):
            File "/srv/slapgrid/slappart34/srv/runner/software/44fe7dd3f13ecd100894c6368a35c055/bin/wcfs", line 290, in <module>
              sys.exit(wendelin.wcfs.main())
            File "<decorator-gen-7>", line 2, in main
            File "/srv/slapgrid/slappart34/srv/runner/software/44fe7dd3f13ecd100894c6368a35c055/develop-eggs/pygolang-0.0.8-py2.7-linux-x86_64.egg/golang/__init__.py", line 103, in _
              return f(*argv, **kw)
            File "/srv/slapgrid/slappart34/srv/runner/software/44fe7dd3f13ecd100894c6368a35c055/parts/wendelin.core/wcfs/__init__.py", line 409, in main
              serve(zurl, optv, exec_=True)
            File "/srv/slapgrid/slappart34/srv/runner/software/44fe7dd3f13ecd100894c6368a35c055/parts/wendelin.core/wcfs/__init__.py", line 365, in serve
              f = open(mntpt + "/.wcfs/zurl")
          IOError: [Errno 107] Transport endpoint is not connected: '/dev/shm/wcfs/c63ef16eb2e74dc62cabf8ffc11798fd42d0158a/.wcfs/zurl'
      
      That's because when wcfs is killed (xslapos node stop), it is only filesystem
      server process that is terminated, but the FUSE mount and connection remains
      registered on the system, and any access to FUSE filesystem with exited/crashed
      server returns that "Transport endpoint is not connected" error.
      
      -> Fix that by detecting at wcfs start whether it was previous unclean wcfs
      shutdown, and then pre-clean things as necessary.
      b0ca031f
  2. 31 May, 2021 1 commit
  3. 30 May, 2021 1 commit
  4. 28 May, 2021 1 commit
    • Kirill Smelkov's avatar
      X lib/zodb: zstor_2zurl: Explicitly reject MappingStorage · 206969bb
      Kirill Smelkov authored
      It is not possible for WCFS to access data of in-RAM storage of another
      process. But without explicit explanation the error message is confusing
      - it was something like:
      
          NotImplementedError: don't know how to extract zurl from <ZODB.MappingStorage.MappingStorage object at 0x7f28f04cea10>
      
      which suggests it was just not implemented.
      206969bb
  5. 27 May, 2021 1 commit
  6. 25 May, 2021 2 commits
  7. 24 May, 2021 1 commit
  8. 21 May, 2021 3 commits
    • Kirill Smelkov's avatar
      X wcfs/xbtree: ΔBtail tests += ø -> Tree; Tree -> ø · c32055fc
      Kirill Smelkov authored
      We need to test this because the following case happens often in
      practice: the tree did not exist when ΔBtail was started, later the tree
      is created and ΔBtail is recomputed. Since we are testing tree transitions
      that involves delete, test it uniformly for all cases.
      
      Currently Update test, if Fatal("TODO") is removed fails with:
      
          --- FAIL: TestΔBTail/Update/T2,5/B1:a-B2:b,4:d-B8:h→ø (0.00s)
      panic: ΔBtail update 03e036b7f59f86cc -> 03e036b7f5a28899: treediff 03e036b7f59f86cc..03e036b7f5a28899 000000000000000c: diffT 03e036b7f59f86cc:000000000000000c 03e036b7f5a28899:000000000000000c: BTrees.LOBTree.LOBTree(000000000000000c): activate: file:///tmp/δBTail851157667/1.fs: load 03e036b7f5a28899:000000000000000c: 000000000000000c: object was deleted @03e036b7f5a28899 [recovered]
      c32055fc
    • Kirill Smelkov's avatar
      . · b5571461
      Kirill Smelkov authored
      b5571461
    • Kirill Smelkov's avatar
      X wcfs: Fix tests to pass again · 877e64a9
      Kirill Smelkov authored
      I broke wcfs test while trying to implement rebuild.
      Keep wcfs tests passing while rebuild is not finished yet.
      877e64a9
  9. 19 May, 2021 3 commits
  10. 17 May, 2021 1 commit
  11. 16 May, 2021 7 commits
  12. 15 May, 2021 18 commits