- 11 Oct, 2011 4 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.
-
Julien Muchembled authored
Also clean up deleteObject.
-
Julien Muchembled authored
-
- 06 Oct, 2011 1 commit
-
-
Julien Muchembled authored
-
- 03 Oct, 2011 1 commit
-
-
Julien Muchembled authored
-
- 30 Sep, 2011 1 commit
-
-
Julien Muchembled authored
-
- 29 Sep, 2011 4 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
With the change in TransactionManager, there's 1 comparison less.
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 24 Sep, 2011 2 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
During 'NEOCluster.stop', there's often 1 'Serialized.background()' call too many, and when it removed the last lock of the queue, another thread would hang if was sleeping between 'q.put(lock)' and 'q.get().release()'. An easy way to reproduce the bug was to add: if cls.pending is None: time.sleep(.01) just before 'q.get().release()'
-
- 16 Sep, 2011 3 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
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.
-
- 14 Sep, 2011 2 commits
-
-
Julien Muchembled authored
Protocol is extended to allow passing None in an Enum field.
-
Julien Muchembled authored
-
- 13 Sep, 2011 1 commit
-
-
Julien Muchembled authored
-
- 12 Sep, 2011 3 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 10 Sep, 2011 1 commit
-
-
Julien Muchembled authored
-
- 09 Sep, 2011 6 commits
-
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
Julien Muchembled authored
-
- 08 Sep, 2011 6 commits
-
-
Julien Muchembled authored
Subprocesses should free file descriptors (here a system-wide lock) they don't need. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2837 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
This disables commit 4a4d2e64. git-svn-id: https://svn.erp5.org/repos/neo/trunk@2836 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2835 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2834 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2833 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2832 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
- 07 Sep, 2011 2 commits
-
-
Julien Muchembled authored
git-svn-id: https://svn.erp5.org/repos/neo/trunk@2831 71dcc9de-d417-0410-9af5-da40c76e7ee4
-
Julien Muchembled authored
MySQL connections remained open, which even led to deadlocks with MySQL 5.5 git-svn-id: https://svn.erp5.org/repos/neo/trunk@2830 71dcc9de-d417-0410-9af5-da40c76e7ee4
-