diff --git a/ScalliGraph b/ScalliGraph index 46e37e4f0c..6a337eb9a7 160000 --- a/ScalliGraph +++ b/ScalliGraph @@ -1 +1 @@ -Subproject commit 46e37e4f0c28e3ab2f107e10f4d8b7619407bdea +Subproject commit 6a337eb9a76b3e572a6ae657ff83320e067bd149 diff --git a/cortex/connector/src/main/scala/org/thp/thehive/connector/cortex/models/CortexSchemaDefinition.scala b/cortex/connector/src/main/scala/org/thp/thehive/connector/cortex/models/CortexSchemaDefinition.scala index 8718790641..ca47ce3843 100644 --- a/cortex/connector/src/main/scala/org/thp/thehive/connector/cortex/models/CortexSchemaDefinition.scala +++ b/cortex/connector/src/main/scala/org/thp/thehive/connector/cortex/models/CortexSchemaDefinition.scala @@ -35,7 +35,7 @@ class CortexSchemaDefinition @Inject() () extends Schema with UpdatableSchema { .map(modelClass => rm.reflectModule(rm.classSymbol(modelClass).companion.companion.asModule).instance) .collect { case hasModel: HasModel => - logger.info(s"Loading model ${hasModel.model.label}") + logger.debug(s"Loading model ${hasModel.model.label}") hasModel.model } .toSeq diff --git a/thehive/app/org/thp/thehive/controllers/v1/AdminCtrl.scala b/thehive/app/org/thp/thehive/controllers/v1/AdminCtrl.scala index 8ab98e950e..35da89a352 100644 --- a/thehive/app/org/thp/thehive/controllers/v1/AdminCtrl.scala +++ b/thehive/app/org/thp/thehive/controllers/v1/AdminCtrl.scala @@ -143,9 +143,12 @@ class AdminCtrl @Inject() ( def rebuild(name: String): Action[AnyContent] = entrypoint("Rebuild index") .authPermitted(Permissions.managePlatform) { _ => - db - .removeIndex(name, IndexType.fulltext, Nil) - .flatMap(_ => schemas.toTry(db.addSchemaIndexes)) + val removalResult = + if (name == "all") db.removeAllIndex() + else db.removeIndex(name, IndexType.fulltext, Nil) + schemas + .toTry(db.addSchemaIndexes) + .flatMap(_ => removalResult) .map(_ => Results.NoContent) } @@ -188,8 +191,8 @@ class AdminCtrl @Inject() ( case (_: AddIndex, _) => filter.contains("AddIndex") || filter .contains("index") || (filters.contains("all") && !filter.contains("!index") && !filter.contains("!AddIndex")) - case (RebuildIndexes, _) => - filter.contains("RebuildIndexes") || filter + case (ReindexData, _) => + filter.contains("ReindexData") || filter .contains("index") || (filters.contains("all") && !filter.contains("!index") && !filter.contains("!RebuildIndexes")) case (NoOperation, _) => false case (_: RemoveIndex, _) => diff --git a/thehive/app/org/thp/thehive/models/TheHiveSchemaDefinition.scala b/thehive/app/org/thp/thehive/models/TheHiveSchemaDefinition.scala index 3b12ab85b1..6c069e1876 100644 --- a/thehive/app/org/thp/thehive/models/TheHiveSchemaDefinition.scala +++ b/thehive/app/org/thp/thehive/models/TheHiveSchemaDefinition.scala @@ -55,15 +55,6 @@ class TheHiveSchemaDefinition @Inject() extends Schema with UpdatableSchema { case error => logger.warn(s"Unable to remove lock on property $name: $error") } } - // TODO remove unused commented code ? - // def removeIndexLock(name: String): Try[Unit] = - // db.managementTransaction { mgmt => - // Try(mgmt.setConsistency(mgmt.getGraphIndex(name), ConsistencyModifier.DEFAULT)) - // .recover { - // case error => logger.warn(s"Unable to remove lock on index $name: $error") - // } - // } - // removeIndexLock("CaseNumber") removePropertyLock("number") // removeIndexLock("DataData") @@ -71,7 +62,7 @@ class TheHiveSchemaDefinition @Inject() extends Schema with UpdatableSchema { } .noop // .addIndex("Tag", IndexType.unique, "namespace", "predicate", "value") .noop // .addIndex("Audit", IndexType.basic, "requestId", "mainAction") - .rebuildIndexes + .noop // .reindexData //=====[release 4.0.0]===== .updateGraph("Remove cases with a Deleted status", "Case") { traversal => traversal.unsafeHas("status", "Deleted").remove() @@ -517,7 +508,7 @@ class TheHiveSchemaDefinition @Inject() extends Schema with UpdatableSchema { .filterNot(c => Modifier.isAbstract(c.getModifiers)) .map { modelClass => val hasModel = rm.reflectModule(rm.classSymbol(modelClass).companion.companion.asModule).instance.asInstanceOf[HasModel] - logger.info(s"Loading model ${hasModel.model.label}") + logger.debug(s"Loading model ${hasModel.model.label}") hasModel.model } .toSeq diff --git a/thehive/app/org/thp/thehive/services/AuditSrv.scala b/thehive/app/org/thp/thehive/services/AuditSrv.scala index 1666c05664..541a5e1c22 100644 --- a/thehive/app/org/thp/thehive/services/AuditSrv.scala +++ b/thehive/app/org/thp/thehive/services/AuditSrv.scala @@ -388,7 +388,7 @@ object AuditOps { .coalesceIdent[Vertex]( _.share.in[OrganisationShare], _.out[AlertOrganisation], - _.hasLabel("Organisation"), + _.unsafeHas("_label", "Organisation"), _.out[CaseTemplateOrganisation], _.in[OrganisationDashboard] )