- 21 Feb, 2017 5 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
This is a first version with several optimizations possible: - improve EventQueue (or implement a specific queue) to minimize deadlocks - turn the RebaseObject packet into a notification Sorting oids could also be useful to reduce the probability of deadlocks, but that would never be enough to avoid them completely, even if there's a single storage. For example: 1. C1 does a first store (x or y) 2. C2 stores x and y; one is delayed 3. C1 stores the other -> deadlock When solving the deadlock, the data of the first store may only exist on the storage. 2 functional tests are removed because they're redundant, either with ZODB tests or with the new threaded tests.
-
Julien Muchembled authored
- Make sure that errors while processing a delayed packet are reported to the connection that sent this packet. - Provide a mechanism to process events for the same connection in chronological order.
-
Julien Muchembled authored
-
- 14 Feb, 2017 8 commits
-
-
Julien Muchembled authored
Fix conflict handling after a successful store to a node being disconnected for having missed a transaction
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
- fail sooner in case of unresolvable conflict - avoid OOM when there are many conflicts
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 02 Feb, 2017 10 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
Now that we do inequality comparisons between timestamps, the master must use a monotonic clock, to avoid issues when the clock is turned back. Before, the probability that time.time() returned again the same value was probably negligible.
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
This optimizes the normal case, and handlers can now take specific action when requests are cancelled because a connection is closed.
-
Julien Muchembled authored
It was only used by the now removed HasLock.
-
Julien Muchembled authored
It was disabled long time ago and NEO has evolved in such a way that the new implementation will be completely different.
-
Julien Muchembled authored
It's dead code, because 1 year after it was introduced, something else was implemented to detect deadlocks immediately. Anyway, it would be an unacceptable way to detect them.
-
Julien Muchembled authored
-
- 26 Jan, 2017 1 commit
-
-
Julien Muchembled authored
-
- 19 Jan, 2017 2 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 18 Jan, 2017 4 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
It was failing when some .py files were not compiled.
-
- 17 Jan, 2017 4 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 16 Jan, 2017 4 commits
-
-
Julien Muchembled authored
100 is too small for tests like testBasicStore (MySQL) and testDelayedStore.
-
Julien Muchembled authored
When receiving 1 byte, benchmarking shows no visible difference with values between 4096 and 65536 for the buffer size. With higher values, it becomes significantly slower. On the other side, a 64k buffer is faster with bigger packets. Time to run testBasicStore with MySQL: 4096 65536 real 0m51.115s 0m21.592s user 0m41.857s 0m13.540s sys 0m8.700s 0m2.687s
-
Julien Muchembled authored
It started to fail with commit fd007f5d.
-
Julien Muchembled authored
It should have been removed with commit cf32e594 (see also c277ed20 and related commits).
-
- 13 Jan, 2017 2 commits
-
-
Julien Muchembled authored
-
-