From 50da9f7daed4fe3e8f0c76f23eeb987e97de4962 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Tue, 10 Dec 2019 21:29:40 +0800 Subject: [PATCH] Move modules/indexer to modules/indexer/code (#9301) --- modules/indexer/code/bleve.go | 23 +++++++++++------------ modules/indexer/{ => code}/indexer.go | 2 +- modules/indexer/{ => code}/repo.go | 10 +++++----- modules/search/search.go | 6 +++--- 4 files changed, 20 insertions(+), 21 deletions(-) rename modules/indexer/{ => code}/indexer.go (99%) rename modules/indexer/{ => code}/repo.go (96%) diff --git a/modules/indexer/code/bleve.go b/modules/indexer/code/bleve.go index 4e7eaa21b7..c2d1ed902f 100644 --- a/modules/indexer/code/bleve.go +++ b/modules/indexer/code/bleve.go @@ -15,7 +15,6 @@ import ( "code.gitea.io/gitea/modules/charset" "code.gitea.io/gitea/modules/git" "code.gitea.io/gitea/modules/graceful" - "code.gitea.io/gitea/modules/indexer" "code.gitea.io/gitea/modules/log" "code.gitea.io/gitea/modules/setting" "github.com/ethantkoenig/rupture" @@ -39,7 +38,7 @@ func InitRepoIndexer() { go func() { start := time.Now() log.Info("Initializing Repository Indexer") - indexer.InitRepoIndexer(populateRepoIndexerAsynchronously) + initRepoIndexer(populateRepoIndexerAsynchronously) go processRepoIndexerOperationQueue() waitChannel <- time.Since(start) }() @@ -130,7 +129,7 @@ func updateRepoIndexer(repoID int64) error { return nil } - batch := indexer.RepoIndexerBatch() + batch := RepoIndexerBatch() for _, update := range changes.Updates { if err := addUpdate(update, repo, batch); err != nil { return err @@ -198,10 +197,10 @@ func addUpdate(update fileUpdate, repo *models.Repository, batch rupture.Flushin // FIXME: UTF-16 files will probably fail here return nil } - indexerUpdate := indexer.RepoIndexerUpdate{ + indexerUpdate := RepoIndexerUpdate{ Filepath: update.Filename, - Op: indexer.RepoIndexerOpUpdate, - Data: &indexer.RepoIndexerData{ + Op: RepoIndexerOpUpdate, + Data: &RepoIndexerData{ RepoID: repo.ID, Content: string(charset.ToUTF8DropErrors(fileContents)), }, @@ -210,10 +209,10 @@ func addUpdate(update fileUpdate, repo *models.Repository, batch rupture.Flushin } func addDelete(filename string, repo *models.Repository, batch rupture.FlushingBatch) error { - indexerUpdate := indexer.RepoIndexerUpdate{ + indexerUpdate := RepoIndexerUpdate{ Filepath: filename, - Op: indexer.RepoIndexerOpDelete, - Data: &indexer.RepoIndexerData{ + Op: RepoIndexerOpDelete, + Data: &RepoIndexerData{ RepoID: repo.ID, }, } @@ -279,7 +278,7 @@ func nonGenesisChanges(repo *models.Repository, revision string) (*repoChanges, // previous commit sha may have been removed by a force push, so // try rebuilding from scratch log.Warn("git diff: %v", err) - if err = indexer.DeleteRepoFromIndexer(repo.ID); err != nil { + if err = deleteRepoFromIndexer(repo.ID); err != nil { return nil, err } return genesisChanges(repo, revision) @@ -326,8 +325,8 @@ func processRepoIndexerOperationQueue() { op := <-repoIndexerOperationQueue var err error if op.deleted { - if err = indexer.DeleteRepoFromIndexer(op.repoID); err != nil { - log.Error("DeleteRepoFromIndexer: %v", err) + if err = deleteRepoFromIndexer(op.repoID); err != nil { + log.Error("deleteRepoFromIndexer: %v", err) } } else { if err = updateRepoIndexer(op.repoID); err != nil { diff --git a/modules/indexer/indexer.go b/modules/indexer/code/indexer.go similarity index 99% rename from modules/indexer/indexer.go rename to modules/indexer/code/indexer.go index 29261c693b..3907a7b57d 100644 --- a/modules/indexer/indexer.go +++ b/modules/indexer/code/indexer.go @@ -2,7 +2,7 @@ // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. -package indexer +package code import ( "os" diff --git a/modules/indexer/repo.go b/modules/indexer/code/repo.go similarity index 96% rename from modules/indexer/repo.go rename to modules/indexer/code/repo.go index 841f29acd7..31f0fa7f3d 100644 --- a/modules/indexer/repo.go +++ b/modules/indexer/code/repo.go @@ -2,7 +2,7 @@ // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. -package indexer +package code import ( "strings" @@ -100,8 +100,8 @@ func (update RepoIndexerUpdate) AddToFlushingBatch(batch rupture.FlushingBatch) return nil } -// InitRepoIndexer initialize repo indexer -func InitRepoIndexer(populateIndexer func() error) { +// initRepoIndexer initialize repo indexer +func initRepoIndexer(populateIndexer func() error) { indexer, err := openIndexer(setting.Indexer.RepoPath, repoIndexerLatestVersion) if err != nil { log.Fatal("InitRepoIndexer: %v", err) @@ -173,8 +173,8 @@ func RepoIndexerBatch() rupture.FlushingBatch { return rupture.NewFlushingBatch(indexerHolder.get(), maxBatchSize) } -// DeleteRepoFromIndexer delete all of a repo's files from indexer -func DeleteRepoFromIndexer(repoID int64) error { +// deleteRepoFromIndexer delete all of a repo's files from indexer +func deleteRepoFromIndexer(repoID int64) error { query := numericEqualityQuery(repoID, "RepoID") searchRequest := bleve.NewSearchRequestOptions(query, 2147483647, 0, false) result, err := indexerHolder.get().Search(searchRequest) diff --git a/modules/search/search.go b/modules/search/search.go index 9b93fe58fb..531d95b187 100644 --- a/modules/search/search.go +++ b/modules/search/search.go @@ -11,7 +11,7 @@ import ( "strings" "code.gitea.io/gitea/modules/highlight" - "code.gitea.io/gitea/modules/indexer" + code_indexer "code.gitea.io/gitea/modules/indexer/code" "code.gitea.io/gitea/modules/util" ) @@ -60,7 +60,7 @@ func writeStrings(buf *bytes.Buffer, strs ...string) error { return nil } -func searchResult(result *indexer.RepoSearchResult, startIndex, endIndex int) (*Result, error) { +func searchResult(result *code_indexer.RepoSearchResult, startIndex, endIndex int) (*Result, error) { startLineNum := 1 + strings.Count(result.Content[:startIndex], "\n") var formattedLinesBuffer bytes.Buffer @@ -113,7 +113,7 @@ func PerformSearch(repoIDs []int64, keyword string, page, pageSize int) (int, [] return 0, nil, nil } - total, results, err := indexer.SearchRepoByKeyword(repoIDs, keyword, page, pageSize) + total, results, err := code_indexer.SearchRepoByKeyword(repoIDs, keyword, page, pageSize) if err != nil { return 0, nil, err }