neoppod:62f142d389904f90e487a559507f7bdb3d2b4177 commitshttps://lab.nexedi.com/nexedi/neoppod/-/commits/62f142d389904f90e487a559507f7bdb3d2b41772012-01-02T15:36:40+01:00https://lab.nexedi.com/nexedi/neoppod/-/commit/62f142d389904f90e487a559507f7bdb3d2b4177_cache parameter doesn't exist anymore, so update docstring.2012-01-02T15:36:40+01:00Vincent Pelletiervincent@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/ddebcc9bb389909ea767de5d7537074b511f2883Clear aborted flag when closing a connection.2011-12-20T15:15:07+01:00Vincent Pelletiervincent@nexedi.com
Fixes a crash when a node aborts a connection and then detecting it as
closed: it would attempt to unregister from event manager twice.https://lab.nexedi.com/nexedi/neoppod/-/commit/a1c75b7ca8aadc91e1fe2afd18e2de0c362ffef6Uniformise checks among test_Connection_writable methods.2011-12-20T12:05:44+01:00Vincent Pelletiervincent@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/c6b73bcb9cb8517fe2ca616e550153971146019aAssorted comment cleanup.2011-12-20T12:05:03+01:00Vincent Pelletiervincent@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/91c013beed1540167330c6d33c3883982d4fabf3Reuse dedicated method.2011-12-20T11:55:54+01:00Vincent Pelletiervincent@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/59e7aafb314acd383c0b32175cbc12def773f768Create masters as we are notified of their existence.2011-12-20T11:29:20+01:00Vincent Pelletiervincent@nexedi.com
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.https://lab.nexedi.com/nexedi/neoppod/-/commit/a0ad2b8649b30a294e17bf9383cf406b28f55e4eMake threaded test suite executable as a stand-alone module.2011-12-20T11:28:00+01:00Vincent Pelletiervincent@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/5b91bcef44a2e2d194258308efa0fbffeb0e7da7Merge "tests: fix LoggerThreadName class for recent Python"2011-12-20T11:24:08+01:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/dbcc333d99a40c9a2ee12746a3442e7c09060761Merge "tests: fix LoggerThreadName class for recent Python"2011-12-20T11:23:57+01:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/59b83c0453d0707bc4295ce31041c10cb395a80ftests: fix LoggerThreadName class for recent Python2011-12-20T11:22:03+01:00Julien Muchembledjm@nexedi.com
See <a href="http://bugs.python.org/issue13361" rel="nofollow noreferrer noopener" target="_blank">http://bugs.python.org/issue13361</a> ("getLogger does not check its argument").https://lab.nexedi.com/nexedi/neoppod/-/commit/c2b8dbf959a740aeb09f050996d0c44be5bc0f5aMerge "tools/matrix: bugfixes"2011-11-09T19:33:43+01:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/ad81d3fd69d4d390e7e74c56bd5d48a7afc27f18Some code cleanup2011-11-09T19:31:23+01:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/20964f4f93a88731729949c2df1c2cdabcb3a875Use python's epoll wrapper2011-11-09T19:31:19+01:00Vincent Pelletiervincent@nexedi.com
Custom ctypes wrapper for epoll is not needed with python 2.6+.
Also, do not retry upon temporary error: it is valid to handle no packet,
and retrying the poll call would increase overall timeout without easy fix.
Also, remove meaningless frozensets (leftovers from an old bug's symptoms).https://lab.nexedi.com/nexedi/neoppod/-/commit/e19f35e8dba1a53e7c0765cac3dabaf945fc10a7tools/matrix: bugfixes2011-11-09T17:16:31+01:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/200a63c11bad2f58e45b91262c0baf3f1a68027fMake verbose locks work in 'with' statements2011-10-27T10:54:46+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/d9471e2e9b3db69788f6ccd0f3c4e5213787b362Use relative imports inside each virtual package2011-10-26T21:55:51+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/0ad980c8855ce86c7bc3658509a7e2dd423ec3e8Drop compatibility with Python < 2.6 and ZODB < 3.92011-10-26T21:55:51+02:00Julien Muchembledjm@nexedi.com
Also simplify some code by using some new Python syntax.https://lab.nexedi.com/nexedi/neoppod/-/commit/0f0491405bbd5078b7e2df874f1693444d0d20cfSimplify some code by using 'map()'2011-10-26T21:55:51+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/cbb992b21e8494eb21057394d0d60588af6d4cf7neo.lib.util: bin & dump roughly do the same thing as a2b_hex & b2a_hex from ...2011-10-26T21:55:51+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/f4220e1900e9c55d15e8e54d955605c793e40c35Prevent several test_bot instances from launching tests at the same time2011-10-26T21:55:50+02:00Julien Muchembledjm@nexedi.com
This hask is mainly for performance tests, which should be run on a physical
machine that doesn't do anything else.https://lab.nexedi.com/nexedi/neoppod/-/commit/fd8c8a6e1fe634c2de70e8d781fd279631efdaaamysql: fix compatibility issue with Python < 2.62011-10-26T14:23:52+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/2114e6db14db9d9e8dee488f5544cef7b167d360Remove unused Barrier packet2011-10-26T11:05:20+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/9d8081f57703702293c0f387b24ba06190bca548Merge "client: really fix ZODB monkey-patch when DB lock is not acquired"2011-10-25T19:36:31+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/b709cc899fa17ed14569a96395ad2def3a545db4client: really fix ZODB monkey-patch when DB lock is not acquired2011-10-25T19:35:36+02:00Julien Muchembledjm@nexedi.com
Commit <a href="/nexedi/neoppod/-/commit/5c5c7d9ad2ea21146eb472b308814a8d328a5be8" data-original="5c5c7d9ad2ea21146eb472b308814a8d328a5be8" data-link="false" data-link-reference="false" data-project="72" data-commit="5c5c7d9ad2ea21146eb472b308814a8d328a5be8" data-reference-type="commit" data-container="body" data-placement="top" data-html="true" title="client: fix missing import in ZODB monkey-patch" class="gfm gfm-commit has-tooltip">5c5c7d9a</a> 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.https://lab.nexedi.com/nexedi/neoppod/-/commit/3e6f9bd86e8af3b8c9337ee2606575a301f2cec5NEO 0.102011-10-17T18:28:50+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/68938f7f047ec400b10592c6123c529adbe47daaAdd upgrade note to migrate existing MySQL storages2011-10-17T18:28:33+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/748fc33428b1e2a65c9fc110731c26375dab7edfMerge branch 'v0.9.x'2011-10-17T18:28:07+02:00Julien Muchembledjm@nexedi.com
Conflicts:
CHANGEShttps://lab.nexedi.com/nexedi/neoppod/-/commit/4df975e87c80aa0c8e0d1f1afb0684a606eeb502NEO 0.9.22011-10-17T18:26:25+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/88606a09f3bf1a6fe60e21d229f62365a46fae84Comment ZODB patch to tpc_finish2011-10-17T15:42:37+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/fa1328cd60ac7299eefacb4365ab5bd2bbcd07a5Suggest to stop storages last in supervisor example so that they don't get ou...2011-10-17T15:17:37+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/430b6ea908eb0d2cf9e41348403a0c311c820191neomigrate: open source FileStorage read-only2011-10-13T15:49:51+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/d5c469befc35faca796d13275185745cd131aaa5Fix protocol and DB schema so that storages can handle transactions of any size2011-10-11T20:13:34+02:00Julien Muchembledjm@nexedi.com
- 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__getDataTIDFromDatahttps://lab.nexedi.com/nexedi/neoppod/-/commit/d90c5b8386ab14ba126428a0e5f6f80df8de5192Allow NEO to store empty values2011-10-11T20:13:33+02:00Julien Muchembledjm@nexedi.com
This changes how NEO stores undo information
and how it is transmitted on the network.https://lab.nexedi.com/nexedi/neoppod/-/commit/03bf302aed7df09e676df58a062fe186dea105f3btree: fix missing u64 oid conversion in deleteTransaction2011-10-11T20:13:27+02:00Julien Muchembledjm@nexedi.com
Also clean up deleteObject.https://lab.nexedi.com/nexedi/neoppod/-/commit/fe5526cb90e75ecf774aa3867c507fd9252cc905Document previous commit2011-10-11T20:13:21+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/5c5c7d9ad2ea21146eb472b308814a8d328a5be8client: fix missing import in ZODB monkey-patch2011-10-06T10:50:15+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/965047c12986cda3e94645fd835edfad494736acneomigrate: fix 'verbose' command line option2011-10-03T12:32:18+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/b05f9c8a541794f17a6033e7dbae6f665ce9c42astorage: extend syntax of database argument to specific socket of a MySQL DB2011-09-30T20:54:29+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/8cb16d749e131e5845d0cda10bfdc50812fe27eeNew extraCellSortKey and getUnpickler methods for threaded tests2011-09-29T17:38:05+02:00Julien Muchembledjm@nexedi.comhttps://lab.nexedi.com/nexedi/neoppod/-/commit/81c93b6758e435b992a68d110d5fe3e6cfa12dc4Coding style changes and small optimizations2011-09-29T17:38:03+02:00Julien Muchembledjm@nexedi.com
With the change in TransactionManager, there's 1 comparison less.