diff --git a/src/seq/seq_if.c b/src/seq/seq_if.c
index 5603a97abaf5a57af37874f7bceafa10b81873ef..970ef75435d9b310f07e46c13434a3a6adb273cd 100644
--- a/src/seq/seq_if.c
+++ b/src/seq/seq_if.c
@@ -233,6 +233,14 @@ epicsShareFunc boolean epicsShareAPI seq_pvGetComplete(SS_ID ss, VAR_ID varId)
 		return TRUE;
 	}
 
+	if (!ss->getReq[varId])
+	{
+		errlogSevPrintf(errlogMinor,
+			"pvGetComplete(%s): no pending get request for this variable\n",
+			ch->varName);
+		return TRUE;
+	}
+
 	switch (epicsEventTryWait(getSem))
 	{
 	case epicsEventWaitOK:
@@ -530,6 +538,13 @@ epicsShareFunc boolean epicsShareAPI seq_pvPutComplete(
 				        ch->varName);
 			done = TRUE;
 		}
+		else if (!ss->putReq[varId])
+		{
+		        errlogSevPrintf(errlogMinor,
+			        "pvPutComplete(%s): no pending put request for this variable\n",
+			        ch->varName);
+			done = TRUE;
+		}
 		else
 		{
 			switch (epicsEventTryWait(putSem))