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
  7. 04 Jul, 2014 1 commit
  8. 03 Jun, 2014 2 commits
  9. 07 Jan, 2014 4 commits
    • Add test showing that clients may be stuck on an old snapshot in case of failure during tpc_finish · fd4cfaa9
      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:
      Julien Muchembled committed
    • Update copyright year · 9b05eff4
      Julien Muchembled committed
    • Fix race conditions in testClientReconnection · 3462d3c1
      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
      Julien Muchembled committed
    • client: add support for reconnection to master · edefaca7
      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).
      Julien Muchembled committed
  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
    • master: check backup master behaves properly when upstream master is unreachable · f49bf829
      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
      Julien Muchembled committed
  16. 10 Aug, 2012 1 commit
  17. 09 Aug, 2012 1 commit
  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