- 05 Oct, 2005 4 commits
-
-
Tim Peters authored
-
Tim Peters authored
-
Tim Peters authored
-
Tim Peters authored
-
- 04 Oct, 2005 3 commits
-
-
Tim Peters authored
-
Tim Peters authored
-
Tim Peters authored
Collector 1900. send_reply(), return_error(): Stop trying to catch an exception that doesn't exist, when marshal.encode() raises an exception. Jeremy simplified the marshal.encode() half of this about 3 years ago, but apparently forgot to change ZEO/zrpc/connection.py to match.
-
- 03 Oct, 2005 2 commits
-
-
Tim Peters authored
-
Tim Peters authored
-
- 25 Sep, 2005 1 commit
-
-
Martijn Pieters authored
transactions for users defined in a non-root acl_users folder. Zope logs a acl_users path together with a username (separated by a space) and this previous fix failed to take this into account. Fixed by taking anything after the last space in the compared path out of the equation.
-
- 06 Sep, 2005 2 commits
-
-
Tim Peters authored
release from the 3.4 branch.
-
Tim Peters authored
-
- 26 Aug, 2005 1 commit
-
-
Tim Peters authored
Collector 1873. update_from_seq(): If PySequence_Check(seq) returns true, go on to check for the existence of "iteritems" when deciding whether the input is or is not "a sequence". Alas, PySequence_Check() does return true for PersistentMapping and PersistentDict instances, so that they couldn't be used as arguments to BTree/Bucket construction or update(). This is nasty type-sniffing, but it was before too. There's no way to make such stuff bulletproof, so I'm settling for incremental improvement.
-
- 25 Aug, 2005 1 commit
-
-
Tim Peters authored
storage interfaces. It would be better to define & document them, but that takes time, and until time is available better not to pretend that they're all really part of "the" storage API.
-
- 24 Aug, 2005 1 commit
-
-
Tim Peters authored
Also gave it some tests (it was woefully untested).
-
- 23 Aug, 2005 1 commit
-
-
Tim Peters authored
-
- 12 Aug, 2005 1 commit
-
-
Martijn Pieters authored
this helps poor schmucks like me who have to make app-level conflict resolution work in Products as well. Including INSTANCE_HOME makes sure ZEO can find the product code in the first place.
-
- 09 Aug, 2005 1 commit
-
-
Tim Peters authored
-
- 08 Aug, 2005 3 commits
-
-
Tim Peters authored
-
Tim Peters authored
simul.py hit NameErrors when startup cache verification found data in the cache to invalidate. The cache's loadBefore() implementation called _trace() incorrectly, passing the tid where the version argument belonged.
-
Tim Peters authored
Add missing packaging files, for zpkg use.
-
- 07 Aug, 2005 2 commits
-
-
Tim Peters authored
-
Tim Peters authored
There's no possiblity of rollback here, so no need to insist that the data manager support rollbacks.
-
- 04 Aug, 2005 3 commits
-
-
Tim Peters authored
-
Tim Peters authored
ClientCache._evicted(): When deleting the last range of non-current tids for an oid, remove the list from the noncurrent dict instead of leaving an empty list sitting there forever. This also required adjusting the side- effect dance in ClientCache._remove_noncurrent_revisions(). FileCache._makeroom(): This was the major leak -- it neglected to remove an evicted object's Entry from the key2entry dict.
-
Philipp von Weitershausen authored
Merge the philikon-zeo-scripts branch: move things around so that zeo scripts are installed for standalone zodb releases but not for zope releases
-
- 02 Aug, 2005 1 commit
-
-
Tim Peters authored
-
- 01 Aug, 2005 2 commits
-
-
Tim Peters authored
-
Tim Peters authored
See the thread starting at http://mail.zope.org/pipermail/zope/2005-July/160433.html for gory details.
-
- 29 Jul, 2005 2 commits
-
-
Tim Peters authored
-
Tim Peters authored
Maintaining this is a significant expense; the code didn't make real use of it; and every time I've tried to exploit it I've ended up with grossly too-large simulated hit rates. Would probably take another day to figure out exactly why that is, and the simulated rates are "good enough" now without it.
-
- 26 Jul, 2005 4 commits
-
-
Tim Peters authored
-
Tim Peters authored
-
Tim Peters authored
although the toy app I wrote to generate a 500MB trace file doesn't use MVCC in an essential way (some of the MVCC simulation code is nevertheless exercised, since an invalidation of current data in the presence of MVCC always creates a cache record for the newly non-current revision). Still puzzling over what to do when the trace file records a load hit but the simulated cache gets a miss. The old simulation code seemed to assume that a store for the same oid would show up in the trace file next, and it could get the info it needed about the missing object from the store trace. But that isn't true: precisely because the load was a hit in the trace file, the object isn't going to be stored again "soon" in the trace file. Here are some actual-vs-simulated hit rate results, for a 20MB cache, with a trace file covering about 9 million loads, over 3 ZEO client (re)starts: actual simulated ------ --------- 93.1 92.7 79.8 79.0 68.0 69.1 81.4 81.1 overall Since the simulated hit rates are both higher and lower than the actual hit rates, that argues against a gross systematic bias in the simulation (although there may be several systematic biases in opposite directions).
-
Tim Peters authored
MVCC. It isn't blowing up, but it thinks the hit rate is 100% -- might have missed something there <wink>.
-
- 25 Jul, 2005 1 commit
-
-
Tim Peters authored
I think the primary hangup now is that simul.py doesn't know anything about MVCC. As a result, it thinks there's significatly more free space in the cache than there really is, and that probably accounts for it predicting significantly higher hit rates than I actually see.
-
- 23 Jul, 2005 1 commit
-
-
Tim Peters authored
Output isn't obviously wholly insane, but isn't a reasonably close enough match to stats.py output either yet.
-
- 22 Jul, 2005 3 commits
-
-
Tim Peters authored
struct.unpack() calls by 1/2. Various bugfixes elsewhere.
-
Tim Peters authored
This has survived several 100 MB of trace files I generated over the last few days, so it's solid now if not necessarily perfect. Replaced simul.py with the much broader-ranging code Jeremy and I were working on a couple years ago, although it can't work with the current trace file format (no real loss there -- the simul.py it's replacing can't work with the current format either).
-
Tim Peters authored
-