@@ -60,7 +60,7 @@ func (repo *Repository) updateIndexerStatus(sha string) error {
60
60
}
61
61
62
62
type repoIndexerOperation struct {
63
- repo * Repository
63
+ repoID int64
64
64
deleted bool
65
65
watchers []chan <- error
66
66
}
@@ -145,7 +145,7 @@ func populateRepoIndexer(maxRepoID int64) {
145
145
}
146
146
for _ , repo := range repos {
147
147
repoIndexerOperationQueue <- repoIndexerOperation {
148
- repo : repo ,
148
+ repoID : repo . ID ,
149
149
deleted : false ,
150
150
}
151
151
maxRepoID = repo .ID - 1
@@ -154,7 +154,12 @@ func populateRepoIndexer(maxRepoID int64) {
154
154
log .Info ("Done populating the repo indexer with existing repositories" )
155
155
}
156
156
157
- func updateRepoIndexer (repo * Repository ) error {
157
+ func updateRepoIndexer (repoID int64 ) error {
158
+ repo , err := getRepositoryByID (x , repoID )
159
+ if err != nil {
160
+ return err
161
+ }
162
+
158
163
sha , err := getDefaultBranchSha (repo )
159
164
if err != nil {
160
165
return err
@@ -362,11 +367,11 @@ func processRepoIndexerOperationQueue() {
362
367
op := <- repoIndexerOperationQueue
363
368
var err error
364
369
if op .deleted {
365
- if err = indexer .DeleteRepoFromIndexer (op .repo . ID ); err != nil {
370
+ if err = indexer .DeleteRepoFromIndexer (op .repoID ); err != nil {
366
371
log .Error ("DeleteRepoFromIndexer: %v" , err )
367
372
}
368
373
} else {
369
- if err = updateRepoIndexer (op .repo ); err != nil {
374
+ if err = updateRepoIndexer (op .repoID ); err != nil {
370
375
log .Error ("updateRepoIndexer: %v" , err )
371
376
}
372
377
}
@@ -378,12 +383,12 @@ func processRepoIndexerOperationQueue() {
378
383
379
384
// DeleteRepoFromIndexer remove all of a repository's entries from the indexer
380
385
func DeleteRepoFromIndexer (repo * Repository , watchers ... chan <- error ) {
381
- addOperationToQueue (repoIndexerOperation {repo : repo , deleted : true , watchers : watchers })
386
+ addOperationToQueue (repoIndexerOperation {repoID : repo . ID , deleted : true , watchers : watchers })
382
387
}
383
388
384
389
// UpdateRepoIndexer update a repository's entries in the indexer
385
390
func UpdateRepoIndexer (repo * Repository , watchers ... chan <- error ) {
386
- addOperationToQueue (repoIndexerOperation {repo : repo , deleted : false , watchers : watchers })
391
+ addOperationToQueue (repoIndexerOperation {repoID : repo . ID , deleted : false , watchers : watchers })
387
392
}
388
393
389
394
func addOperationToQueue (op repoIndexerOperation ) {
0 commit comments