Made config object that's specific to BatcherManager
This commit is contained in:
parent
3a04dad4bf
commit
45fad863d0
2 changed files with 17 additions and 5 deletions
|
|
@ -16,6 +16,12 @@ type tagMsgPair struct {
|
||||||
pair kcl.SequencePair
|
pair kcl.SequencePair
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type batcherManagerConfig struct {
|
||||||
|
BatchCount int
|
||||||
|
BatchSize int
|
||||||
|
BatchInterval time.Duration
|
||||||
|
}
|
||||||
|
|
||||||
type batcherManager struct {
|
type batcherManager struct {
|
||||||
log kv.KayveeLogger
|
log kv.KayveeLogger
|
||||||
sender Sender
|
sender Sender
|
||||||
|
|
@ -32,16 +38,16 @@ type batcherManager struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func newBatcherManager(
|
func newBatcherManager(
|
||||||
sender Sender, chkpntManager *checkpointManager, config Config, log kv.KayveeLogger,
|
sender Sender, chkpntManager *checkpointManager, cfg batcherManagerConfig, log kv.KayveeLogger,
|
||||||
) *batcherManager {
|
) *batcherManager {
|
||||||
bm := &batcherManager{
|
bm := &batcherManager{
|
||||||
log: log,
|
log: log,
|
||||||
sender: sender,
|
sender: sender,
|
||||||
chkpntManager: chkpntManager,
|
chkpntManager: chkpntManager,
|
||||||
|
|
||||||
batchCount: config.BatchCount,
|
batchCount: cfg.BatchCount,
|
||||||
batchSize: config.BatchSize,
|
batchSize: cfg.BatchSize,
|
||||||
batchInterval: config.BatchInterval,
|
batchInterval: cfg.BatchInterval,
|
||||||
|
|
||||||
batchMsg: make(chan tagMsgPair),
|
batchMsg: make(chan tagMsgPair),
|
||||||
lastIgnored: make(chan kcl.SequencePair),
|
lastIgnored: make(chan kcl.SequencePair),
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,14 @@ func NewBatchedWriter(config Config, sender Sender, log kv.KayveeLogger) *batche
|
||||||
func (b *batchedWriter) Initialize(shardID string, checkpointer kcl.Checkpointer) error {
|
func (b *batchedWriter) Initialize(shardID string, checkpointer kcl.Checkpointer) error {
|
||||||
b.shardID = shardID
|
b.shardID = shardID
|
||||||
|
|
||||||
|
bmConfig := batcherManagerConfig{
|
||||||
|
BatchCount: b.config.BatchCount,
|
||||||
|
BatchSize: b.config.BatchSize,
|
||||||
|
BatchInterval: b.config.BatchInterval,
|
||||||
|
}
|
||||||
|
|
||||||
b.chkpntManager = newCheckpointManager(checkpointer, b.config.CheckpointFreq, b.log)
|
b.chkpntManager = newCheckpointManager(checkpointer, b.config.CheckpointFreq, b.log)
|
||||||
b.batcherManager = newBatcherManager(b.sender, b.chkpntManager, b.config, b.log)
|
b.batcherManager = newBatcherManager(b.sender, b.chkpntManager, bmConfig, b.log)
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue