mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	* fix issue indexer bug reindex when restart gitea * also fix code indexer reindex when gitea restart
This commit is contained in:
		
				
					committed by
					
						
						techknowlogick
					
				
			
			
				
	
			
			
			
						parent
						
							200b974e19
						
					
				
				
					commit
					b45d58805a
				
			@@ -60,7 +60,7 @@ func InitIssueIndexer(populateIndexer func() error) {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err = createIssueIndexer(); err != nil {
 | 
			
		||||
	if err = createIssueIndexer(setting.Indexer.IssuePath, issueIndexerLatestVersion); err != nil {
 | 
			
		||||
		log.Fatal(4, "InitIssuesIndexer: create index, %v", err)
 | 
			
		||||
	}
 | 
			
		||||
	if err = populateIndexer(); err != nil {
 | 
			
		||||
@@ -69,7 +69,7 @@ func InitIssueIndexer(populateIndexer func() error) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// createIssueIndexer create an issue indexer if one does not already exist
 | 
			
		||||
func createIssueIndexer() error {
 | 
			
		||||
func createIssueIndexer(path string, latestVersion int) error {
 | 
			
		||||
	mapping := bleve.NewIndexMapping()
 | 
			
		||||
	docMapping := bleve.NewDocumentMapping()
 | 
			
		||||
 | 
			
		||||
@@ -100,10 +100,16 @@ func createIssueIndexer() error {
 | 
			
		||||
	mapping.AddDocumentMapping("_all", bleve.NewDocumentDisabledMapping())
 | 
			
		||||
 | 
			
		||||
	var err error
 | 
			
		||||
	issueIndexer, err = bleve.New(setting.Indexer.IssuePath, mapping)
 | 
			
		||||
	issueIndexer, err = bleve.New(path, mapping)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return rupture.WriteIndexMetadata(path, &rupture.IndexMetadata{
 | 
			
		||||
		Version: latestVersion,
 | 
			
		||||
	})
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IssueIndexerBatch batch to add updates to
 | 
			
		||||
func IssueIndexerBatch() rupture.FlushingBatch {
 | 
			
		||||
	return rupture.NewFlushingBatch(issueIndexer, maxBatchSize)
 | 
			
		||||
 
 | 
			
		||||
@@ -84,7 +84,7 @@ func InitRepoIndexer(populateIndexer func() error) {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err = createRepoIndexer(); err != nil {
 | 
			
		||||
	if err = createRepoIndexer(setting.Indexer.RepoPath, repoIndexerLatestVersion); err != nil {
 | 
			
		||||
		log.Fatal(4, "CreateRepoIndexer: %v", err)
 | 
			
		||||
	}
 | 
			
		||||
	if err = populateIndexer(); err != nil {
 | 
			
		||||
@@ -93,7 +93,7 @@ func InitRepoIndexer(populateIndexer func() error) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// createRepoIndexer create a repo indexer if one does not already exist
 | 
			
		||||
func createRepoIndexer() error {
 | 
			
		||||
func createRepoIndexer(path string, latestVersion int) error {
 | 
			
		||||
	var err error
 | 
			
		||||
	docMapping := bleve.NewDocumentMapping()
 | 
			
		||||
	numericFieldMapping := bleve.NewNumericFieldMapping()
 | 
			
		||||
@@ -119,9 +119,14 @@ func createRepoIndexer() error {
 | 
			
		||||
	mapping.AddDocumentMapping(repoIndexerDocType, docMapping)
 | 
			
		||||
	mapping.AddDocumentMapping("_all", bleve.NewDocumentDisabledMapping())
 | 
			
		||||
 | 
			
		||||
	repoIndexer, err = bleve.New(setting.Indexer.RepoPath, mapping)
 | 
			
		||||
	repoIndexer, err = bleve.New(path, mapping)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return rupture.WriteIndexMetadata(path, &rupture.IndexMetadata{
 | 
			
		||||
		Version: latestVersion,
 | 
			
		||||
	})
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func filenameIndexerID(repoID int64, filename string) string {
 | 
			
		||||
	return indexerID(repoID) + "_" + filename
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user