@@ -58,7 +58,7 @@ func (repo *Repository) updateIndexerStatus(sha string) error {
58
58
}
59
59
60
60
type repoIndexerOperation struct {
61
- repo * Repository
61
+ repoID int64
62
62
deleted bool
63
63
watchers []chan <- error
64
64
}
@@ -122,7 +122,7 @@ func populateRepoIndexer(maxRepoID int64) {
122
122
}
123
123
for _ , repo := range repos {
124
124
repoIndexerOperationQueue <- repoIndexerOperation {
125
- repo : repo ,
125
+ repoID : repo . ID ,
126
126
deleted : false ,
127
127
}
128
128
maxRepoID = repo .ID - 1
@@ -131,7 +131,12 @@ func populateRepoIndexer(maxRepoID int64) {
131
131
log .Info ("Done populating the repo indexer with existing repositories" )
132
132
}
133
133
134
- func updateRepoIndexer (repo * Repository ) error {
134
+ func updateRepoIndexer (repoID int64 ) error {
135
+ repo , err := getRepositoryByID (x , repoID )
136
+ if err != nil {
137
+ return err
138
+ }
139
+
135
140
sha , err := getDefaultBranchSha (repo )
136
141
if err != nil {
137
142
return err
@@ -339,11 +344,11 @@ func processRepoIndexerOperationQueue() {
339
344
op := <- repoIndexerOperationQueue
340
345
var err error
341
346
if op .deleted {
342
- if err = indexer .DeleteRepoFromIndexer (op .repo . ID ); err != nil {
347
+ if err = indexer .DeleteRepoFromIndexer (op .repoID ); err != nil {
343
348
log .Error ("DeleteRepoFromIndexer: %v" , err )
344
349
}
345
350
} else {
346
- if err = updateRepoIndexer (op .repo ); err != nil {
351
+ if err = updateRepoIndexer (op .repoID ); err != nil {
347
352
log .Error ("updateRepoIndexer: %v" , err )
348
353
}
349
354
}
@@ -355,12 +360,12 @@ func processRepoIndexerOperationQueue() {
355
360
356
361
// DeleteRepoFromIndexer remove all of a repository's entries from the indexer
357
362
func DeleteRepoFromIndexer (repo * Repository , watchers ... chan <- error ) {
358
- addOperationToQueue (repoIndexerOperation {repo : repo , deleted : true , watchers : watchers })
363
+ addOperationToQueue (repoIndexerOperation {repoID : repo . ID , deleted : true , watchers : watchers })
359
364
}
360
365
361
366
// UpdateRepoIndexer update a repository's entries in the indexer
362
367
func UpdateRepoIndexer (repo * Repository , watchers ... chan <- error ) {
363
- addOperationToQueue (repoIndexerOperation {repo : repo , deleted : false , watchers : watchers })
368
+ addOperationToQueue (repoIndexerOperation {repoID : repo . ID , deleted : false , watchers : watchers })
364
369
}
365
370
366
371
func addOperationToQueue (op repoIndexerOperation ) {
0 commit comments