diff --git a/servers/slapd/back-mdb/idl.c b/servers/slapd/back-mdb/idl.c
index 79c2a81af261fa8bb423a178d96088d994633521..29a3796345a84ce4efea3deed297e738a99d2f87 100644
--- a/servers/slapd/back-mdb/idl.c
+++ b/servers/slapd/back-mdb/idl.c
@@ -413,9 +413,6 @@ mdb_idl_insert_keys(
 
 	assert( id != NOID );
 
-	if ( slapMode & SLAP_TOOL_QUICK )
-		flag |= MDB_APPEND;
-
 #ifndef MISALIGNED_OK
 	if (keys[0].bv_len & 0x03)
 		kbuf[1] = 0;
@@ -493,6 +490,8 @@ mdb_idl_insert_keys(
 				}
 			} else {
 			/* There's room, just store it */
+				if ( slapMode & SLAP_TOOL_QUICK )
+					flag |= MDB_APPEND;
 				goto put1;
 			}
 		} else {