1. 15 Jun, 2015 1 commit
  2. 09 Jun, 2015 1 commit
  3. 21 May, 2015 1 commit
  4. 05 Dec, 2014 1 commit
  5. 30 Jul, 2014 2 commits
  6. 08 Jul, 2014 1 commit
    • Julien Muchembled's avatar
      storage: fix memory leak in replication · a0bd2ae8
      Julien Muchembled authored
      The following 3 methods are renamed:
       unlockData -> releaseData
       storeData -> holdData
       _storeData -> storeData
      
      and StorageOperationHandler use the new storeData instead of the old one.
      a0bd2ae8
  7. 04 Jul, 2014 1 commit
  8. 03 Jun, 2014 2 commits
  9. 07 Jan, 2014 4 commits
    • Julien Muchembled's avatar
      Add test showing that clients may be stuck on an old snapshot in case of failure during tpc_finish · fd4cfaa9
      Julien Muchembled authored
      If anything wrong happens after a transaction is locked and before the end of
      onTransactionCommitted, recovery phase should be run again, so that the master
      gets correct last tid.
      
      Following patch by Vincent is an attempt to fix this:
      
      --- a/neo/master/app.py
      +++ b/neo/master/app.py
      @@ -329,8 +329,8 @@ def playPrimaryRole(self):
      
               # recover the cluster status at startup
               try:
      -            self.runManager(RecoveryManager)
                   while True:
      +                self.runManager(RecoveryManager)
                       self.runManager(VerificationManager)
                       try:
                           if self.backup_tid:
      @@ -338,10 +338,6 @@ def playPrimaryRole(self):
                                   raise RuntimeError("No upstream cluster to backup"
                                                      " defined in configuration")
                               self.backup_app.provideService()
      -                        # Reset connection with storages (and go through a
      -                        # recovery phase) when leaving backup mode in order
      -                        # to get correct last oid/tid.
      -                        self.runManager(RecoveryManager)
                               continue
                           self.provideService()
                       except OperationFailure:
      fd4cfaa9
    • Julien Muchembled's avatar
      Update copyright year · 9b05eff4
      Julien Muchembled authored
      9b05eff4
    • Julien Muchembled's avatar
      Fix race conditions in testClientReconnection · 3462d3c1
      Julien Muchembled authored
      This should following random errors:
      
      >   File "neo/lib/event.py", line 77, in unregister
      >     self.epoll.unregister(fd)
      > IOError: [Errno 2] No such file or directory
      
      >   File "neo/tests/threaded/test.py", line 670, in testClientReconnection
      >     c, = cluster.storage.nm.getClientList()
      > ValueError: need more than 0 values to unpack
      3462d3c1
    • Julien Muchembled's avatar
      client: add support for reconnection to master · edefaca7
      Julien Muchembled authored
      This implementation proper cache invalidation.
      
      Connection to master is also made optional to load from storage nodes, as long
      as partition table contains up-to-date data (which is anyway unlikely to change
      when there is no master).
      edefaca7
  10. 04 Jan, 2014 1 commit
  11. 17 Dec, 2013 1 commit
  12. 26 Aug, 2012 1 commit
  13. 20 Aug, 2012 4 commits
  14. 14 Aug, 2012 2 commits
  15. 12 Aug, 2012 1 commit
    • Julien Muchembled's avatar
      master: check backup master behaves properly when upstream master is unreachable · f49bf829
      Julien Muchembled authored
      This fixes the following assertion failure:
      
      PACKET #0x021d Ping                           > M1 (10.0.114.64:14001)
      INFO   timeout for #0x0000021d with <ClientConnection(uuid=M1, address=10.0.114.64:14001, closed=0, handler=BackupHandler) at 2955590>
      DEBUG  connection closed for <ClientConnection(uuid=M1, address=10.0.114.64:14001, closed=1, handler=BackupHandler) at 2955590>
      ERROR  upstream master is down: connection lost
      ERROR  Pre-mortem data:
      ERROR  Traceback (most recent call last):
      ERROR    File "neo/master/app.py", line 134, in run
      ERROR      self._run()
      ERROR    File "neo/master/app.py", line 154, in _run
      ERROR      self.playPrimaryRole()
      ERROR    File "neo/master/app.py", line 344, in playPrimaryRole
      ERROR      self.backup_app.provideService()
      ERROR    File "neo/master/backup_app.py", line 129, in provideService
      ERROR      conn.close()
      ERROR    File "neo/lib/connection.py", line 541, in close
      ERROR      assert not self.isPending()
      ERROR  AssertionError
      f49bf829
  16. 10 Aug, 2012 1 commit
  17. 09 Aug, 2012 1 commit
    • Julien Muchembled's avatar
      Backup bugfixes · ad01f379
      Julien Muchembled authored
      - fix stopping backup cluster
      - fix leaving backup mode, including truncating to consistent TID
      - fix backup_tid on master and storages
      ad01f379
  18. 08 Aug, 2012 1 commit
  19. 01 Aug, 2012 2 commits
  20. 23 Jul, 2012 4 commits
  21. 19 Jul, 2012 2 commits
  22. 18 Jul, 2012 2 commits
  23. 13 Jul, 2012 1 commit
  24. 05 Jul, 2012 1 commit
  25. 19 Jun, 2012 1 commit