diff --git a/openbsc/src/libmsc/db.c b/openbsc/src/libmsc/db.c
index 0935fc5..17bea24 100644
--- a/openbsc/src/libmsc/db.c
+++ b/openbsc/src/libmsc/db.c
@@ -508,14 +508,8 @@
 	/* Is this subscriber known in the db? */
 	subscr = db_get_subscriber(GSM_SUBSCRIBER_IMSI, imsi);
 	if (subscr) {
-		result = dbi_conn_queryf(conn,
-                         "UPDATE Subscriber set updated = datetime('now') "
-                         "WHERE imsi = %s " , imsi);
-		if (!result)
-			LOGP(DDB, LOGL_ERROR, "failed to update timestamp\n");
-		else
-			dbi_result_free(result);
-		return subscr;
+		subscr_put(subscr);
+		return NULL;
 	}
 
 	subscr = subscr_alloc();
diff --git a/openbsc/src/libmsc/vty_interface_layer3.c b/openbsc/src/libmsc/vty_interface_layer3.c
index f49c53a..790fedf 100644
--- a/openbsc/src/libmsc/vty_interface_layer3.c
+++ b/openbsc/src/libmsc/vty_interface_layer3.c
@@ -236,11 +236,17 @@
 	struct gsm_network *gsmnet = gsmnet_from_vty(vty);
 	struct gsm_subscriber *subscr;
 
-	subscr = subscr_create_subscriber(gsmnet->subscr_group, argv[0]);
-	if (!subscr) {
-		vty_out(vty, "%% No subscriber created for IMSI %s%s",
-			argv[0], VTY_NEWLINE);
-		return CMD_WARNING;
+	subscr = subscr_get_by_imsi(gsmnet->subscr_group, argv[0]);
+	if (subscr)
+		db_sync_subscriber(subscr);
+	else {
+		subscr = subscr_create_subscriber(gsmnet->subscr_group, argv[0]);
+
+		if (!subscr) {
+			vty_out(vty, "%% No subscriber created for IMSI %s%s",
+				argv[0], VTY_NEWLINE);
+			return CMD_WARNING;
+		}
 	}
 
 	/* Show info about the created subscriber. */
diff --git a/openbsc/tests/db/db_test.c b/openbsc/tests/db/db_test.c
index a02d1f8..fb159a5 100644
--- a/openbsc/tests/db/db_test.c
+++ b/openbsc/tests/db/db_test.c
@@ -1,5 +1,5 @@
 /* (C) 2008 by Jan Luebbe <jluebbe@debian.org>
- * (C) 2009 by Holger Hans Peter Freyther <zecke@selfish.org>
+ * (C) 2009-2016 by Holger Hans Peter Freyther <zecke@selfish.org>
  * (C) 2014 by Alexander Chemeris <Alexander.Chemeris@fairwaves.co>
  * All Rights Reserved
  *
@@ -246,6 +246,10 @@
 	SUBSCR_PUT(alice_db);
 	SUBSCR_PUT(alice);
 
+	/* create it again and see it fails */
+	alice = db_create_subscriber(alice_imsi);
+	OSMO_ASSERT(!alice);
+
 	test_sms();
 	test_sms_migrate();
 
