Traceback (most recent call last): File "/Users/twl/work/osaf/src/trees/dogfood/application/Application.py", line 731, in OnIdle self.propagateAsynchronousNotifications() File "/Users/twl/work/osaf/src/trees/dogfood/application/Application.py", line 707, in propagateAsynchronousNotifications self.repository.view.refresh (mergeFunction) # pickup changes from other threads File "/Users/twl/work/osaf/src/trees/dogfood/repository/persistence/DBRepositoryView.py", line 315, in refresh self._refresh(mergeFn, version, notify) File "/Users/twl/work/osaf/src/trees/dogfood/repository/persistence/DBRepositoryView.py", line 346, in _refresh self._refreshForwards(mergeFn, self.itsVersion + 1, True) File "/Users/twl/work/osaf/src/trees/dogfood/repository/persistence/DBRepositoryView.py", line 477, in _refreshForwards oldVersion, newVersion) File "/Users/twl/work/osaf/src/trees/dogfood/repository/persistence/DBRepositoryView.py", line 234, in _dispatchHistory 'extent', uItem) File "/Users/twl/work/osaf/src/trees/dogfood/repository/schema/Kind.py", line 1053, in _collectionChanged callable(superKind.extent, op, change, name, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 1202, in sourceChanged self._collectionChanged(op, change, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 366, in _collectionChanged item._collectionChanged(op, change, attribute, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Collection.py", line 89, in _collectionChanged super(Collection, self)._collectionChanged(op, change, name, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 716, in sourceChanged self._collectionChanged(op, change, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 366, in _collectionChanged item._collectionChanged(op, change, attribute, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Collection.py", line 89, in _collectionChanged super(Collection, self)._collectionChanged(op, change, name, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 1304, in sourceChanged self._collectionChanged(op, change, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 366, in _collectionChanged item._collectionChanged(op, change, attribute, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Collection.py", line 89, in _collectionChanged super(Collection, self)._collectionChanged(op, change, name, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 716, in sourceChanged self._collectionChanged(op, change, other) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Sets.py", line 349, in _collectionChanged index.insertKey(other, index.getLastKey()) File "/Users/twl/work/osaf/src/trees/dogfood/repository/item/Indexes.py", line 227, in insertKey skipList.insert(key, afterKey) AssertionError: key != afterKey