- 09 Jan, 2012 2 commits
-
-
Julien Muchembled authored
This is another fix to commit 4720ba33.
-
Vincent Pelletier authored
-
- 06 Jan, 2012 1 commit
-
-
Julien Muchembled authored
Keyword arguments are kept internally by the handler switcher, which passes them to the handler when the peer answers. This will be required by new replicator, so that 'setUnfinishedTIDList' receives the list of outdated partitions at the time the 'AskUnfinishedTransactions' packet was sent.
-
- 02 Jan, 2012 1 commit
-
-
Vincent Pelletier authored
-
- 20 Dec, 2011 1 commit
-
-
Vincent Pelletier authored
This increases cluster on-line flexibility, allowing new masters to be added without needing a restart of all masters. Downside is that more responsibility is pushed to cluster admins: they must update node configurations so they contain enough master nodes to allow them to join cluster after a restart.
-
- 09 Nov, 2011 1 commit
-
-
Julien Muchembled authored
-
- 26 Oct, 2011 4 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
Also simplify some code by using some new Python syntax.
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 25 Oct, 2011 1 commit
-
-
Julien Muchembled authored
Commit 5c5c7d9a was a wrong fix because RLock does not raise 'thread.error' like Lock (when releasing an unacquired lock). Python >= 2.5 raises a RuntimeError and older Python raise an AssertionError.
-
- 17 Oct, 2011 1 commit
-
-
Julien Muchembled authored
-
- 11 Oct, 2011 2 commits
-
-
Julien Muchembled authored
- Change protocol to use SHA1 for all checksums: - Use SHA1 instead of CRC32 for data checksums. - Use SHA1 instead of MD5 for replication. - Change DatabaseManager API so that backends can store raw data separately from object metadata: - When processing AskStoreObject, call the backend to store the data immediately, instead of keeping it in RAM or in the temporary object table. Data is then referenced only by its checksum. Without such change, the storage could fail to store the transaction due to lack of RAM, or it could make tpc_finish step very slow. - Backends have to store data in a separate space, and remove entries as soon as they get unreferenced. So they must have an index of checksums in object metadata space. A new '_uncommitted_data' backend attribute keeps references of uncommitted data. - New methods: _pruneData, _storeData, storeData, unlockData - MySQL: change vertical partitioning of 'obj' by having data in a separate 'data' table instead of using a shortened 'obj_short' table. - BTree: data is moved from '_obj' to a new '_data' btree. - Undo is optimized so that backpointers are not required anymore to fetch data: - The checksum of an object is None only when creation is undone. - Removed DatabaseManager methods: _getObjectData, _getDataTIDFromData - DatabaseManager: move some code from _getDataTID to findUndoTID so that _getDataTID only has what's specific to backend. - Removed because already covered by ZODB tests: - neo.tests.storage.testStorageDBTests.StorageDBTests.test__getDataTID - neo.tests.storage.testStorageDBTests.StorageDBTests.test__getDataTIDFromData
-
Julien Muchembled authored
This changes how NEO stores undo information and how it is transmitted on the network.
-
- 06 Oct, 2011 1 commit
-
-
Julien Muchembled authored
-
- 16 Sep, 2011 1 commit
-
-
Julien Muchembled authored
-
- 15 Sep, 2011 3 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
In particular, this fixes history tab on recent Zope.
-
- 08 Sep, 2011 1 commit
-
-
Julien Muchembled authored
This disables commit 4a4d2e64. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2836 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 06 Sep, 2011 1 commit
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2825 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 03 Sep, 2011 3 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2820 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
It was broken since commit 4a4d2e64 ("client: optimize by not calling lastTransaction at the end of transactions"). This fixes several unit tests like neo.tests.zodb.testBasic.BasicTests.check_tid_ordering_w_commit git-svn-id: https://svn.erp5.org/repos/neo/trunk@2819 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2818 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 01 Sep, 2011 2 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2813 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
Also patch ZODB to fix an invalidation bug. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2812 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 31 Aug, 2011 4 commits
-
-
Julien Muchembled authored
A ConflictError is raised instead. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2811 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2810 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2809 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2808 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 24 Jun, 2011 4 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2803 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
This fixes a regression introduced by implementation of IMVCCStorage in r2532. On recent ZODB, this fixes a severe performance issue. With ZODB 3.4, objects were never invalidated, which was even worse. This fixes includes compatibility code for ZODB 3.4 so that each connection has its own NEOStorage instance. The DB's storage is changed to always consider the last revision of objects. IMVCCStorage seems too complicated to me. Connection should be a better place to implement it (by extending/fixing the 'before' attribute). So we have decided that NEOStorage stops implementing IMVCCStorage. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2802 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2801 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2800 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 23 Jun, 2011 1 commit
-
-
Vincent Pelletier authored
Just don't use iterkeys on dictionaries, it's the default iterator anyway. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2799 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 22 Jun, 2011 2 commits
-
-
Vincent Pelletier authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2798 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2797 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 16 Jun, 2011 1 commit
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2793 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 09 Jun, 2011 2 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2774 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2772 71dcc9de-d417-0410-9af5-da40c76e7ee4
-