Skip to content

Commit fb969ad

Browse files
committed
use levelqueue instead of ledis
1 parent 9a63ecb commit fb969ad

File tree

122 files changed

+262
-18854
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

122 files changed

+262
-18854
lines changed

Gopkg.lock

Lines changed: 9 additions & 82 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,4 +112,4 @@ ignored = ["google.golang.org/appengine*"]
112112

113113
[[constraint]]
114114
name = "github.com/prometheus/client_golang"
115-
version = "0.9.0"
115+
version = "0.9.0"

models/issue_indexer.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,10 @@ func InitIssueIndexer() error {
3737

3838
var err error
3939
switch setting.Indexer.IssueIndexerQueueType {
40-
case setting.LedisLocalQueueType:
41-
issueIndexerUpdateQueue, err = issues.NewLedisLocalQueue(
40+
case setting.LevelQueueType:
41+
issueIndexerUpdateQueue, err = issues.NewLevelQueue(
4242
issueIndexer,
4343
setting.Indexer.IssueIndexerQueueDir,
44-
setting.Indexer.IssueIndexerQueueDBIndex,
4544
setting.Indexer.IssueIndexerQueueBatchNumber)
4645
if err != nil {
4746
return err

modules/indexer/issues/queue_ledis_local.go renamed to modules/indexer/issues/queue_disk.go

Lines changed: 15 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2018 The Gitea Authors. All rights reserved.
1+
// Copyright 2019 The Gitea Authors. All rights reserved.
22
// Use of this source code is governed by a MIT-style
33
// license that can be found in the LICENSE file.
44

@@ -9,52 +9,40 @@ import (
99
"time"
1010

1111
"code.gitea.io/gitea/modules/log"
12-
"github.com/siddontang/ledisdb/config"
13-
"github.com/siddontang/ledisdb/ledis"
12+
"github.com/lunny/levelqueue"
1413
)
1514

1615
var (
17-
_ Queue = &LedisLocalQueue{}
18-
19-
ledisLocalKey = []byte("ledis_local_key")
16+
_ Queue = &LevelQueue{}
2017
)
2118

22-
// LedisLocalQueue implements a ledis as a disk library queue
23-
type LedisLocalQueue struct {
19+
// LevelQueue implements a disk library queue
20+
type LevelQueue struct {
2421
indexer Indexer
25-
ledis *ledis.Ledis
26-
db *ledis.DB
22+
queue *levelqueue.Queue
2723
batchNumber int
2824
}
2925

30-
// NewLedisLocalQueue creates a ledis local queue
31-
func NewLedisLocalQueue(indexer Indexer, dataDir string, dbIdx, batchNumber int) (*LedisLocalQueue, error) {
32-
ledis, err := ledis.Open(&config.Config{
33-
DataDir: dataDir,
34-
})
35-
if err != nil {
36-
return nil, err
37-
}
38-
39-
db, err := ledis.Select(dbIdx)
26+
// NewLevelQueue creates a ledis local queue
27+
func NewLevelQueue(indexer Indexer, dataDir string, batchNumber int) (*LevelQueue, error) {
28+
queue, err := levelqueue.Open(dataDir)
4029
if err != nil {
4130
return nil, err
4231
}
4332

44-
return &LedisLocalQueue{
33+
return &LevelQueue{
4534
indexer: indexer,
46-
ledis: ledis,
47-
db: db,
35+
queue: queue,
4836
batchNumber: batchNumber,
4937
}, nil
5038
}
5139

5240
// Run starts to run the queue
53-
func (l *LedisLocalQueue) Run() error {
41+
func (l *LevelQueue) Run() error {
5442
var i int
5543
var datas = make([]*IndexerData, 0, l.batchNumber)
5644
for {
57-
bs, err := l.db.RPop(ledisLocalKey)
45+
bs, err := l.queue.RPop()
5846
if err != nil {
5947
log.Error(4, "RPop: %v", err)
6048
time.Sleep(time.Millisecond * 100)
@@ -103,13 +91,13 @@ func (l *LedisLocalQueue) Run() error {
10391
}
10492

10593
// Push will push the indexer data to queue
106-
func (l *LedisLocalQueue) Push(data *IndexerData) {
94+
func (l *LevelQueue) Push(data *IndexerData) {
10795
bs, err := json.Marshal(data)
10896
if err != nil {
10997
log.Error(4, "Marshal: %v", err)
11098
return
11199
}
112-
_, err = l.db.LPush(ledisLocalKey, bs)
100+
err = l.queue.LPush(bs)
113101
if err != nil {
114102
log.Error(4, "LPush: %v", err)
115103
}

modules/setting/setting.go

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,8 @@ const (
8585

8686
// enumerates all the indexer queue types
8787
const (
88-
LedisLocalQueueType = "ledis_local"
89-
ChannelQueueType = "channel"
88+
LevelQueueType = "levelqueue"
89+
ChannelQueueType = "channel"
9090
)
9191

9292
// settings
@@ -195,15 +195,13 @@ var (
195195
MaxIndexerFileSize int64
196196
IssueIndexerQueueType string
197197
IssueIndexerQueueDir string
198-
IssueIndexerQueueDBIndex int
199198
IssueIndexerQueueBatchNumber int
200199
}{
201200
IssueType: "bleve",
202201
IssuePath: "indexers/issues.bleve",
203-
IssueIndexerQueueType: LedisLocalQueueType,
202+
IssueIndexerQueueType: LevelQueueType,
204203
IssueIndexerQueueDir: "indexers/issues.queue",
205204
IssueIndexerQueueBatchNumber: 20,
206-
IssueIndexerQueueDBIndex: 0,
207205
}
208206

209207
// Repository settings
@@ -1247,11 +1245,9 @@ func NewContext() {
12471245
}
12481246
Indexer.UpdateQueueLength = sec.Key("UPDATE_BUFFER_LEN").MustInt(20)
12491247
Indexer.MaxIndexerFileSize = sec.Key("MAX_FILE_SIZE").MustInt64(1024 * 1024)
1250-
Indexer.IssueIndexerQueueType = sec.Key("ISSUE_INDEXER_QUEUE_TYPE").MustString(LedisLocalQueueType)
1248+
Indexer.IssueIndexerQueueType = sec.Key("ISSUE_INDEXER_QUEUE_TYPE").MustString(LevelQueueType)
12511249
Indexer.IssueIndexerQueueDir = sec.Key("ISSUE_INDEXER_QUEUE_DIR").MustString(path.Join(AppDataPath, "indexers/issues.queue"))
12521250
Indexer.IssueIndexerQueueBatchNumber = sec.Key("ISSUE_INDEXER_QUEUE_BATCH_NUMBER").MustInt(20)
1253-
Indexer.IssueIndexerQueueDBIndex = sec.Key("ISSUE_INDEXER_QUEUE_DB_INDEX").MustInt(0)
1254-
12551251
}
12561252

12571253
// NewServices initializes the services

vendor/github.com/cupcake/rdb/LICENCE

Lines changed: 0 additions & 21 deletions
This file was deleted.

vendor/github.com/cupcake/rdb/crc64/crc64.go

Lines changed: 0 additions & 64 deletions
This file was deleted.

0 commit comments

Comments
 (0)