]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/connection.c
Fixes for multiple threadpool queues
[openldap] / servers / slapd / connection.c
index 4f359a85325af9f0f3dda2607549dd1370a8d7c3..6dec6455e8e4faa3a0f60f4fe650bc8745c643e8 100644 (file)
@@ -1,7 +1,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2015 The OpenLDAP Foundation.
+ * Copyright 1998-2017 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -723,6 +723,9 @@ static void connection_abandon( Connection *c )
                SlapReply rs = {REP_RESULT};
 
                next = LDAP_STAILQ_NEXT( o, o_next );
+               /* don't abandon an op twice */
+               if ( o->o_abandon )
+                       continue;
                op.orn_msgid = o->o_msgid;
                o->o_abandon = 1;
                op.o_bd = frontendDB;