]> git.sur5r.net Git - openldap/commitdiff
Use MDB_APPEND mode where possible
authorHoward Chu <hyc@openldap.org>
Mon, 3 Oct 2011 04:29:21 +0000 (21:29 -0700)
committerHoward Chu <hyc@openldap.org>
Mon, 3 Oct 2011 04:29:21 +0000 (21:29 -0700)
servers/slapd/back-mdb/dn2id.c
servers/slapd/back-mdb/id2entry.c
servers/slapd/back-mdb/tools.c

index 2550b6959223dd55415203af902c94c0d4921de9..5431226ae43b26bce9c7b403a0fae74c6f5408c5 100644 (file)
@@ -199,7 +199,7 @@ mdb_dn2id_add(
                memcpy( ptr, &pid, sizeof( ID ));
                d->nrdnlen[0] ^= 0x80;
 
-               rc = mdb_cursor_put( mc, &key, &data, MDB_NODUPDATA );
+               rc = mdb_cursor_put( mc, &key, &data, MDB_NODUPDATA|MDB_APPEND );
        }
        mdb_cursor_close( mc );
 
index 1b8707e63497ed5b384995590f6f4d7f2507edcf..afa7539fdda503ea60731c501472d8298fb55c22 100644 (file)
@@ -92,7 +92,7 @@ int mdb_id2entry_add(
        MDB_txn *tid,
        Entry *e )
 {
-       return mdb_id2entry_put(op, tid, e, MDB_NOOVERWRITE);
+       return mdb_id2entry_put(op, tid, e, MDB_NOOVERWRITE|MDB_APPEND);
 }
 
 int mdb_id2entry_update(
index dfc956543471b78be22b751896c1b727bb505e12..79ef877f43334f0b51b847e82a1931996533cc51 100644 (file)
@@ -996,7 +996,7 @@ setrange:
                        for ( i=0; i<end; i++ ) {
                                if ( !ice->ids[i] ) continue;
                                data.mv_data = &ice->ids[i];
-                               rc = mdb_cursor_put( mc, &key, &data, MDB_NODUPDATA );
+                               rc = mdb_cursor_put( mc, &key, &data, MDB_NODUPDATA|MDB_APPEND );
                                if ( rc ) {
                                        if ( rc == MDB_KEYEXIST ) {
                                                rc = 0;