The previous change works much faster (one lookup per key) when
iteritems() is defined.
diff --git a/Lib/bsddb/__init__.py b/Lib/bsddb/__init__.py
index 5fc8a38..2910236 100644
--- a/Lib/bsddb/__init__.py
+++ b/Lib/bsddb/__init__.py
@@ -154,6 +154,15 @@
         except _bsddb.DBNotFoundError:
             return
 
+    def iteritems(self):
+        try:
+            yield self.first()
+            next = self.next
+            while 1:
+                yield next()
+        except _bsddb.DBNotFoundError:
+            return
+
 #----------------------------------------------------------------------
 # Compatibility object factory functions