1. 15 5月, 2012 1 次提交
  2. 09 5月, 2012 1 次提交
    • M
      - Removed unused imports; · 63bbd9ac
      marcelmhs@gmail.com 提交于
      - Created default recoverable for classes implementing SingleRecoverable;
      - Made changes to state transfer classes to work with single message processing.
      63bbd9ac
  3. 05 5月, 2012 1 次提交
  4. 23 4月, 2012 2 次提交
  5. 18 4月, 2012 1 次提交
  6. 12 4月, 2012 1 次提交
  7. 10 4月, 2012 1 次提交
  8. 09 4月, 2012 1 次提交
  9. 08 4月, 2012 4 次提交
  10. 07 4月, 2012 1 次提交
  11. 03 4月, 2012 1 次提交
  12. 02 4月, 2012 1 次提交
  13. 30 3月, 2012 3 次提交
  14. 28 3月, 2012 1 次提交
  15. 21 3月, 2012 1 次提交
  16. 04 3月, 2012 2 次提交
  17. 02 3月, 2012 1 次提交
  18. 28 2月, 2012 2 次提交
  19. 18 2月, 2012 1 次提交
  20. 16 2月, 2012 1 次提交
  21. 09 2月, 2012 1 次提交
    • L
      Updated the state transfer protocol to also include the latest view, in order... · d9aee962
      liquidsnake@sapo.pt 提交于
      Updated the state transfer protocol to also include the latest view, in order to avoid delayed replicas from getting blocked after applying the state. If the view had changed in the middle of a state transfer and the view updates where already erased from the state log, the replica would alreays discard client requests, since they where for a view ahead of the one it had.
      
      Also fixed a bug that wouldn't let the replica execute the requests contained in a state transfer log, also quase by the fact that a client might had a different view from the replica.
      d9aee962
  22. 04 2月, 2012 1 次提交
  23. 01 2月, 2012 1 次提交
    • L
      Fixed a bug that would manifest in a delayed replica: if a timeout occurred,... · 9a1ac08f
      liquidsnake@sapo.pt 提交于
      Fixed a bug that would manifest in a delayed replica: if a timeout occurred, the replica would be forever stopped, and the bug prevented it from triggering the state transfer protocol. With the bug gone, the replica will ask for the state.
      
      Regarding the aforementioned bug, I added a parameter to the config file dubbed "timeoutHighmark". It should be lower than "paxosHighmark" and greater than "revivalHighmark". This will make the replica trigger the state transfer more quickly, given the conditions just described.
      
      Fixed also a bug on the clients: when there were no "currentView" file, an exception would be thrown, and the clients would not read the host.config file. This no longer happens.
      
      Finally, added some debugger messages in the leader change protocol and also in the servicereplica class.
      9a1ac08f
  24. 28 1月, 2012 1 次提交
  25. 27 1月, 2012 1 次提交
  26. 19 1月, 2012 1 次提交
  27. 14 1月, 2012 1 次提交
  28. 09 1月, 2012 1 次提交
    • M
      Added changes from João Félix: · 90ebd9de
      marcelmhs@gmail.com 提交于
       - ServiceReplica.receiveMessages() is now implementing the code for batch message processing;
       - BatchExecutable.executeBatch() signature was changed to has an array of MessageContext as parameter.
      90ebd9de
  29. 04 1月, 2012 2 次提交
    • L
      Fixed a bug on the leader change protocol that would block all replicas if the... · b3e67b0f
      liquidsnake@sapo.pt 提交于
      Fixed a bug on the leader change protocol that would block all replicas if the delayed replica triggered again a leader change before the others finished the same protocol.
      
      Identified a bug on the method "send" of class NettyClientServerCommunicationSystemServerSide, but its cause remains misterious: if invoked 2 times for the same message (why it sometimes is invoked 2 times for the same message is not known), the client may not receive a reply on its end, and if no sufficent replies are received, the client blocks. If locks are used in this method, the problem seems to disappear.
      
      Removed various locks from the leader change protocol which were rendered useless in previous commits.
      
      The Proposed thread now  unlocks by this order: I am the leader -> the consensus as finished  -> I have message to order 
      b3e67b0f
    • M
      Changed Executable interface tree. · 72b3bbf6
      marcelmhs@gmail.com 提交于
      Now Executable is the top class. It has the executeUnordered method, as all executables can process readonly messages.
      There are two classes extending Executable.
      SingleExecutable has the executeOrdered method to process a sigle command.
      BatchExecutable has the executeBatch to process multiple commands.
      BatchExecutable was also changed to have a matrix of bytes as parameter, corresponding to an array of commands, having an array of bytes.
      Demo classes was changed to use the new Executable structure.
      ServiceReplica was also changed.
      72b3bbf6
  30. 14 12月, 2011 2 次提交