diff --git a/modules/Bio/EnsEMBL/DBSQL/TranscriptAdaptor.pm b/modules/Bio/EnsEMBL/DBSQL/TranscriptAdaptor.pm
index a2eebb1b8959f5fc3691627b3125ad0289424652..f675739ebf41133872cc4698a51ee2421a37a684 100644
--- a/modules/Bio/EnsEMBL/DBSQL/TranscriptAdaptor.pm
+++ b/modules/Bio/EnsEMBL/DBSQL/TranscriptAdaptor.pm
@@ -831,7 +831,7 @@ sub store {
     my $old_dbid = $translation->dbID();
     $db->get_TranslationAdaptor()->store( $translation, $transc_dbID );
 
-    if ( $translation->dbID() != $old_dbid ) {
+    if ( defined($old_dbid) && $translation->dbID() != $old_dbid ) {
       # The dbID of the translation changed.  Need to update the
       # canonical_translation_id for this transcript.