2020-10-28 07:38:24 +00:00
|
|
|
package master
|
|
|
|
|
2020-11-20 07:02:26 +00:00
|
|
|
import (
|
|
|
|
"github.com/zilliztech/milvus-distributed/internal/master/id"
|
|
|
|
)
|
|
|
|
|
2020-10-28 07:38:24 +00:00
|
|
|
type ddRequestScheduler struct {
|
2020-11-12 03:18:23 +00:00
|
|
|
reqQueue chan task
|
2020-10-29 04:39:41 +00:00
|
|
|
scheduleTimeStamp Timestamp
|
2020-10-28 07:38:24 +00:00
|
|
|
}
|
|
|
|
|
2020-11-20 07:02:26 +00:00
|
|
|
func NewDDRequestScheduler() *ddRequestScheduler {
|
2020-10-28 07:38:24 +00:00
|
|
|
const channelSize = 1024
|
|
|
|
|
|
|
|
rs := ddRequestScheduler{
|
2020-11-20 07:02:26 +00:00
|
|
|
reqQueue: make(chan task, channelSize),
|
2020-10-28 07:38:24 +00:00
|
|
|
}
|
|
|
|
return &rs
|
|
|
|
}
|
|
|
|
|
2020-11-12 03:18:23 +00:00
|
|
|
func (rs *ddRequestScheduler) Enqueue(task task) error {
|
2020-10-28 07:38:24 +00:00
|
|
|
rs.reqQueue <- task
|
2020-10-29 04:39:41 +00:00
|
|
|
return nil
|
2020-10-28 07:38:24 +00:00
|
|
|
}
|
2020-11-20 07:02:26 +00:00
|
|
|
|
|
|
|
func allocGlobalID() (UniqueID, error) {
|
|
|
|
return id.AllocOne()
|
|
|
|
}
|