[Checkins] SVN: zc.zeoinputlog/branches/replay/src/zc/zeoinputlog/replay.py *** empty log message ***

Jim Fulton jim at zope.com
Sun Oct 4 11:34:56 EDT 2009


Log message for revision 104775:
  *** empty log message ***

Changed:
  U   zc.zeoinputlog/branches/replay/src/zc/zeoinputlog/replay.py

-=-
Modified: zc.zeoinputlog/branches/replay/src/zc/zeoinputlog/replay.py
===================================================================
--- zc.zeoinputlog/branches/replay/src/zc/zeoinputlog/replay.py	2009-10-04 05:14:00 UTC (rev 104774)
+++ zc.zeoinputlog/branches/replay/src/zc/zeoinputlog/replay.py	2009-10-04 15:34:55 UTC (rev 104775)
@@ -177,20 +177,18 @@
 
     def sessions(self):
         sessions = {}
-        f = open(self.fname)
-        while 1:
-            try:
-                session, timetime, message = marshal.load(f)
-            except EOFError:
-                break
+        for session, timetime, msgid, async, op, args in self:
+            stats = sessions.get(session)
+            if stats is None:
+                stats = sessions[session] = dict(
+                    start_timetime=timetime,
+                    ops={},
+                    )
+            stats['end_timetime'] = timetime
+            stats['opd'][op] = stats['opd'].get(op, 0) + 1
 
-            start_stop = sessions.get(session)
-            if not start_stop:
-                start_stop = sessions[session] = [timetime, timetime]
-            start_stop[1] = timetime
+        return sorted(sessions.itervalues(), key=lambda v: v['start_timetime'])
 
-        return sorted(sessions.itervalues())
-
 class Transactions(object):
 
 



More information about the checkins mailing list