1. 04 Mar, 2021 1 commit
  2. 28 Apr, 2019 2 commits
    • Julien Muchembled's avatar
      protocol: switch to msgpack for packet serialization · 9d0bf97a
      Julien Muchembled authored
      Not only for performance reasons (at least 3% faster) but also because of
      several ugly things in the way packets were defined:
      - packet field names, which are only documentary; for roots fields,
        they even just duplicate the packet names
      - a lot of repetitions for packet names, and even confusion between the name
        of the packet definition and the name of the actual notify/request packet
      - the need to implement field types for anything, like PByte to support new
        compression formats, since PBoolean is not enough
      
      neo/lib/protocol.py is now much smaller.
      9d0bf97a
    • Julien Muchembled's avatar
      Release version 1.12 · 6332112c
      Julien Muchembled authored
      6332112c
  3. 11 Mar, 2019 1 commit
  4. 26 Feb, 2019 1 commit
    • Julien Muchembled's avatar
      qa: new tool to stress-test NEO · 38e98a12
      Julien Muchembled authored
      Example output:
      
          stress: yes (toggle with F1)
          cluster state: RUNNING
          last oid: 0x44c0
          last tid: 0x3cdee272ef19355 (2019-02-26 15:35:11.002419)
          clients: 2308, 2311, 2302, 2173, 2226, 2215, 2306, 2255, 2314, 2356 (+48)
                  8m53.988s (42.633861/s)
          pt id: 4107
              RRRDDRRR
           0: OU......
           1: ..UO....
           2: ....OU..
           3: ......UU
           4: OU......
           5: ..UO....
           6: ....OU..
           7: ......UU
           8: OU......
           9: ..UO....
          10: ....OU..
          11: ......UU
          12: OU......
          13: ..UO....
          14: ....OU..
          15: ......UU
          16: OU......
          17: ..UO....
          18: ....OU..
          19: ......UU
          20: OU......
          21: ..UO....
          22: ....OU..
          23: ......UU
      38e98a12
  5. 16 Jul, 2018 1 commit
  6. 16 May, 2018 2 commits
    • Julien Muchembled's avatar
      importer: give a title to the 'import' and 'writeback' subprocesses · 461df152
      Julien Muchembled authored
      'title' means both process name and command line.
      
      This is cosmetics so it won't fail if the 'setproctitle' module
      is not available.
      461df152
    • Julien Muchembled's avatar
      importer: fetch and process the data to import in a separate process · 05bf48de
      Julien Muchembled authored
      A new subprocess is used to:
      - fetch data from the source DB
      - repickle to change oids (when merging several DB)
      - compress
      - checksum
      
      This is mostly useful for the second step, which is relatively much slower than
      any other step, while not releasing the GIL.
      
      By using a second CPU core, it is also often possible to use a better
      compression algorithm for free (e.g. zlib=9). Actually, smaller data can speed
      up the writing process.
      
      In addition to greatly speed up the import by parallelizing fetch+process with
      write, it also makes the main process more reactive to queries from client
      nodes.
      05bf48de
  7. 13 Mar, 2018 1 commit
  8. 17 Nov, 2017 1 commit
  9. 07 Nov, 2017 1 commit
  10. 04 Jul, 2017 2 commits
  11. 12 May, 2017 1 commit
  12. 04 Apr, 2017 1 commit
  13. 18 Jan, 2017 1 commit
  14. 13 Jan, 2017 1 commit
  15. 20 Dec, 2016 1 commit
  16. 25 Nov, 2016 1 commit
  17. 13 Jul, 2016 1 commit
  18. 15 Jun, 2016 1 commit
  19. 28 Mar, 2016 1 commit
  20. 09 Mar, 2016 1 commit
  21. 01 Mar, 2016 1 commit
  22. 26 Feb, 2016 1 commit
  23. 25 Jan, 2016 1 commit
  24. 02 Dec, 2015 1 commit
  25. 26 Oct, 2015 1 commit
  26. 05 Oct, 2015 1 commit
  27. 13 Jul, 2015 1 commit
  28. 13 Jan, 2015 1 commit
  29. 30 Jul, 2014 3 commits
  30. 04 Jun, 2014 1 commit
    • Julien Muchembled's avatar
      Fix tests broken by API changes in new psutil 2.0.0 · 9fe34439
      Julien Muchembled authored
      This fixes:
      
      Traceback (most recent call last):
        File "neo/tests/functional/testMaster.py", line 50, in testStoppingSecondaryMaster
          self.neo.expectDead(master)
        File "neo/tests/functional/__init__.py", line 615, in expectDead
          self.expectCondition(callback, *args, **kw)
        File "neo/tests/functional/__init__.py", line 509, in expectCondition
          'History: %s' % opaque_history)
      AssertionError: Timeout while expecting condition. History: [False, False, False, False, False, False, False, False, False, False, False]
      9fe34439
  31. 03 Jun, 2014 1 commit
  32. 07 Jan, 2014 1 commit
  33. 08 Nov, 2013 1 commit
  34. 28 Oct, 2013 1 commit
  35. 27 Aug, 2012 1 commit