]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#103,!277] Use composite key for audit entry object type searches.
authorMarcin Siodelski <marcin@isc.org>
Tue, 19 Mar 2019 12:02:07 +0000 (13:02 +0100)
committerMarcin Siodelski <marcin@isc.org>
Tue, 26 Mar 2019 07:08:56 +0000 (03:08 -0400)
src/lib/database/audit_entry.h

index 7bfe7488fb72fd4ad1b459ca54ffd1d24eaf0fea..70cc3dba5473c4ae8940edbf99d6de0562c9aa1a 100644 (file)
@@ -8,8 +8,8 @@
 #define AUDIT_ENTRY_H
 
 #include <boost/date_time/posix_time/posix_time.hpp>
+#include <boost/multi_index/composite_key.hpp>
 #include <boost/multi_index_container.hpp>
-#include <boost/multi_index/hashed_index.hpp>
 #include <boost/multi_index/mem_fun.hpp>
 #include <boost/multi_index/ordered_index.hpp>
 #include <boost/shared_ptr.hpp>
@@ -170,12 +170,20 @@ typedef boost::multi_index_container<
     AuditEntryPtr,
     // First index allows for accessing by the object type.
     boost::multi_index::indexed_by<
-        boost::multi_index::hashed_non_unique<
+        boost::multi_index::ordered_non_unique<
             boost::multi_index::tag<AuditEntryObjectTypeTag>,
-            boost::multi_index::const_mem_fun<
+            boost::multi_index::composite_key<
                 AuditEntry,
-                std::string,
-                &AuditEntry::getObjectType
+                boost::multi_index::const_mem_fun<
+                    AuditEntry,
+                    std::string,
+                    &AuditEntry::getObjectType
+                >,
+                boost::multi_index::const_mem_fun<
+                    AuditEntry,
+                    AuditEntry::ModificationType,
+                    &AuditEntry::getModificationType
+                >
             >
         >,