Clear data so random memory does not get freed.  Will backport.
diff --git a/Misc/NEWS b/Misc/NEWS
index 83f3da1..87379b1 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -636,6 +636,8 @@
 Extension Modules
 -----------------
 
+- Bug #1721309: prevent bsddb module from freeing random memory.
+
 - Bug #1686475: Support stat'ing open files on Windows again.
 
 - Patch #1185447: binascii.b2a_qp() now correctly quotes binary characters
diff --git a/Modules/_bsddb.c b/Modules/_bsddb.c
index ed7eb68..cc99926 100644
--- a/Modules/_bsddb.c
+++ b/Modules/_bsddb.c
@@ -1731,6 +1731,7 @@
         return NULL;
     }
 
+    CLEAR_DBT(data);
     flags |= DB_GET_BOTH;
 
     if (CHECK_DBFLAG(self, DB_THREAD)) {