- 27 May, 2011 4 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2763 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
- Previous implementation was not able to import transactions with many small objects, the client for faster to send a store request than to process its answer. If X is the difference of time for these 2 operations, the maximum number of objects a transaction could contain was CRITICAL_TIMEOUT / X. And HasLock feature can't act as a workaround because it is not working yet. - Change API of 'on_timeout', which currently only used by HasLock. - Stop pinging when we wait for an answer. This wastes resources and would never recover any bad state. - Make client connections send pings when they are idle instead. This implements keep-alive feature for high availability. Start with an non-configurable period of 60 seconds. - Move processing of ping/pong to handlers. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2762 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2761 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
For the moment, this only fixes a performance issue because in the worst case, subsequent pings (every 6 seconds) would make _poll() check in the connection has any pending message (while processing 'rlist'). git-svn-id: https://svn.erp5.org/repos/neo/trunk@2760 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 24 May, 2011 1 commit
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2759 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 23 May, 2011 6 commits
-
-
Julien Muchembled authored
The only reason why we produced different eggs was because we may want to install easily an admin node without caring about dependencies of neo.client. Multi-dist setup.py contains hacks and was overkill for NEO. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2757 71dcc9de-d417-0410-9af5-da40c76e7ee4 git-svn-id: https://svn.erp5.org/repos/neo/trunk@2758 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2756 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2755 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2754 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2753 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2752 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 20 May, 2011 2 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2751 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
- multi-eggs setup.py because we really don't want to split the repository in several ones - move 'components.xml' since namespace packages should not contain anything - workaround python-mock.sf.net because not eggified: automatically get a copy of mock.py (license: BSD) when setting up 'neotests' git-svn-id: https://svn.erp5.org/repos/neo/trunk@2750 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 02 May, 2011 2 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2749 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2748 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 29 Apr, 2011 4 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2747 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2746 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2745 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2744 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 28 Apr, 2011 8 commits
-
-
Julien Muchembled authored
testRestartWithMissingStorage was failing randomly depending on whether the cluster was started before or after the storage initializing connection with the master. Change to NEOCluster.start allows to test both scenarios explicitely. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2743 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2742 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2741 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2740 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2739 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2738 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2737 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2736 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 27 Apr, 2011 6 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2735 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2734 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2733 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
Main reason is that it's difficult to know in advance which side really closes the connection. Network events can be chaotic and this could lead to many race conditions. Thus, handler can be used to update any database that is somewhat redundant to the connection status, i.e. node status usually. Safely and less duplicated code. This change is motivated by recurrent random failures during election. An example of race condition was that 2 fully connected master could close the extra connection (the primary -> secondary one) at the same time. In order to stabilize lower-level code and start with reliable election process, code has also been simplified to not care about node states. All connections without exception are closed at the end of the election and states are then updated 1 by 1 by identification handler. Note that during election, there may be 2 connection per node, which makes difficult to update node states by connectionFailed/connectionClosed events. timeoutExpired & peerBroken are dropped as they are unused for the moment. A new API should be designed so that connectionClosed know the reason of the close. BROKEN state becomes unused. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2732 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2731 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2730 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 21 Apr, 2011 4 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2729 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
Now we can assert that abort is not called when it shouldn't be. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2728 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2727 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
The contained the request name twice. Example: #0x00000000 AnswerPrimaryMasterPrimaryMaster to None (127.0.0.1:34804) git-svn-id: https://svn.erp5.org/repos/neo/trunk@2726 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 20 Apr, 2011 3 commits
-
-
Julien Muchembled authored
This adds a dependency to 'psutil', which is required anyway to fix NEOProcess.isAlive git-svn-id: https://svn.erp5.org/repos/neo/trunk@2725 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2724 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
Although some tests of testStorage and testPack don't need a SQL database, this patch applies to the whole class for simplicity's sake. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2723 71dcc9de-d417-0410-9af5-da40c76e7ee4
-