diff options
Diffstat (limited to 'modules/indexer')
-rw-r--r-- | modules/indexer/code/bleve.go | 6 | ||||
-rw-r--r-- | modules/indexer/code/elastic_search.go | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/modules/indexer/code/bleve.go b/modules/indexer/code/bleve.go index 1affdf73b0..25cb8bf5c9 100644 --- a/modules/indexer/code/bleve.go +++ b/modules/indexer/code/bleve.go @@ -275,6 +275,12 @@ func (b *BleveIndexer) Index(repo *repo_model.Repository, sha string, changes *r batch := gitea_bleve.NewFlushingBatch(b.indexer, maxBatchSize) if len(changes.Updates) > 0 { + // Now because of some insanity with git cat-file not immediately failing if not run in a valid git directory we need to run git rev-parse first! + if err := git.EnsureValidGitRepository(git.DefaultContext, repo.RepoPath()); err != nil { + log.Error("Unable to open git repo: %s for %-v: %v", repo.RepoPath(), repo, err) + return err + } + batchWriter, batchReader, cancel := git.CatFileBatch(git.DefaultContext, repo.RepoPath()) defer cancel() diff --git a/modules/indexer/code/elastic_search.go b/modules/indexer/code/elastic_search.go index bd5faf3b04..169dffd78b 100644 --- a/modules/indexer/code/elastic_search.go +++ b/modules/indexer/code/elastic_search.go @@ -247,6 +247,11 @@ func (b *ElasticSearchIndexer) addDelete(filename string, repo *repo_model.Repos func (b *ElasticSearchIndexer) Index(repo *repo_model.Repository, sha string, changes *repoChanges) error { reqs := make([]elastic.BulkableRequest, 0) if len(changes.Updates) > 0 { + // Now because of some insanity with git cat-file not immediately failing if not run in a valid git directory we need to run git rev-parse first! + if err := git.EnsureValidGitRepository(git.DefaultContext, repo.RepoPath()); err != nil { + log.Error("Unable to open git repo: %s for %-v: %v", repo.RepoPath(), repo, err) + return err + } batchWriter, batchReader, cancel := git.CatFileBatch(git.DefaultContext, repo.RepoPath()) defer cancel() |