mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-23 02:48:26 +00:00
Refactor re-index task
This commit is contained in:
@ -12,7 +12,10 @@ final case class SolrMigration[F[_]](value: FtsMigration[F], dataChangeOnly: Boo
|
||||
object SolrMigration {
|
||||
private val solrEngine = Ident.unsafe("solr")
|
||||
|
||||
def deleteData[F[_]: Functor](version: Int, solrUpdate: SolrUpdate[F]): SolrMigration[F] =
|
||||
def deleteData[F[_]: Functor](
|
||||
version: Int,
|
||||
solrUpdate: SolrUpdate[F]
|
||||
): SolrMigration[F] =
|
||||
apply(version, "Delete all data", solrUpdate.delete("*:*", Option(0)))
|
||||
|
||||
def writeVersion[F[_]: Functor](
|
||||
|
@ -49,13 +49,14 @@ object SolrSetup {
|
||||
} yield migs
|
||||
|
||||
def setupSchema: List[SolrMigration[F]] = {
|
||||
val verDoc = VersionDoc(versionDocId, allMigrations.map(_.value.version).max)
|
||||
val solrUp = SolrUpdate(cfg, client)
|
||||
val verDoc = VersionDoc(versionDocId, allMigrations.map(_.value.version).max)
|
||||
val solrUp = SolrUpdate(cfg, client)
|
||||
val writeVersion = SolrMigration.writeVersion(solrUp, verDoc)
|
||||
val deleteAll = SolrMigration.deleteData(0, solrUp)
|
||||
val indexAll = SolrMigration.indexAll[F](Int.MaxValue, "Index all data")
|
||||
val deleteAll = SolrMigration.deleteData(0, solrUp)
|
||||
val indexAll = SolrMigration.indexAll[F](Int.MaxValue, "Index all data")
|
||||
|
||||
deleteAll :: (allMigrations.filter(_.isSchemaChange) ::: List(indexAll, writeVersion))
|
||||
deleteAll :: (allMigrations
|
||||
.filter(_.isSchemaChange) ::: List(indexAll, writeVersion))
|
||||
}
|
||||
|
||||
private def allMigrations: List[SolrMigration[F]] =
|
||||
|
Reference in New Issue
Block a user