Skip to content

Commit

Permalink
Merge remote-tracking branch 'couchbase/unstable' into HEAD
Browse files Browse the repository at this point in the history
http://ci-eventing.northscale.in/eventing-05.11.2019-20.07.pass.html

Change-Id: I9c23160162544319d243d0a7db77aa5fc5b013ff
  • Loading branch information
jeelanp2003 committed Nov 6, 2019
2 parents 3f72f71 + 123aaec commit f8065dd
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 43 deletions.
2 changes: 1 addition & 1 deletion service_manager/http_handlers.go
Expand Up @@ -1258,7 +1258,7 @@ func (m *ServiceMgr) setSettings(appName string, data []byte) (info *runtimeInfo
return
}

if info = m.validateSettings(settings); info.Code != m.statusCodes.ok.Code {
if info = m.validateSettings(appName, settings); info.Code != m.statusCodes.ok.Code {
logging.Errorf("%s %s", logPrefix, info.Info)
return
}
Expand Down
83 changes: 45 additions & 38 deletions service_manager/utils.go
Expand Up @@ -84,58 +84,65 @@ func encodeRev(rev uint64) service.Revision {
return ext
}

func fillMissingWithDefaults(settings map[string]interface{}) {
func (m *ServiceMgr) fillMissingWithDefaults(appName string, settings map[string]interface{}) {
// Fill from temp store if available
app, _ := m.getTempStore(appName)

// Handler related configurations
fillMissingDefault(settings, "checkpoint_interval", float64(60000))
fillMissingDefault(settings, "cleanup_timers", false)
fillMissingDefault(settings, "cpp_worker_thread_count", float64(2))
fillMissingDefault(settings, "deadline_timeout", float64(62))
fillMissingDefault(settings, "execution_timeout", float64(60))
fillMissingDefault(settings, "feedback_batch_size", float64(100))
fillMissingDefault(settings, "feedback_read_buffer_size", float64(65536))
fillMissingDefault(settings, "idle_checkpoint_interval", float64(30000))
fillMissingDefault(settings, "lcb_inst_capacity", float64(5))
fillMissingDefault(settings, "log_level", "INFO")
fillMissingDefault(settings, "poll_bucket_interval", float64(10))
fillMissingDefault(settings, "sock_batch_size", float64(100))
fillMissingDefault(settings, "tick_duration", float64(60000))
fillMissingDefault(settings, "timer_context_size", float64(1024))
fillMissingDefault(settings, "undeploy_routine_count", float64(6))
fillMissingDefault(settings, "worker_count", float64(3))
fillMissingDefault(settings, "worker_feedback_queue_cap", float64(500))
fillMissingDefault(settings, "worker_queue_cap", float64(100*1000))
fillMissingDefault(settings, "worker_queue_mem_cap", float64(1024))
fillMissingDefault(settings, "worker_response_timeout", float64(3600))
fillMissingDefault(app, settings, "checkpoint_interval", float64(60000))
fillMissingDefault(app, settings, "cleanup_timers", false)
fillMissingDefault(app, settings, "cpp_worker_thread_count", float64(2))
fillMissingDefault(app, settings, "deadline_timeout", float64(62))
fillMissingDefault(app, settings, "execution_timeout", float64(60))
fillMissingDefault(app, settings, "feedback_batch_size", float64(100))
fillMissingDefault(app, settings, "feedback_read_buffer_size", float64(65536))
fillMissingDefault(app, settings, "idle_checkpoint_interval", float64(30000))
fillMissingDefault(app, settings, "lcb_inst_capacity", float64(5))
fillMissingDefault(app, settings, "log_level", "INFO")
fillMissingDefault(app, settings, "poll_bucket_interval", float64(10))
fillMissingDefault(app, settings, "sock_batch_size", float64(100))
fillMissingDefault(app, settings, "tick_duration", float64(60000))
fillMissingDefault(app, settings, "timer_context_size", float64(1024))
fillMissingDefault(app, settings, "undeploy_routine_count", float64(6))
fillMissingDefault(app, settings, "worker_count", float64(3))
fillMissingDefault(app, settings, "worker_feedback_queue_cap", float64(500))
fillMissingDefault(app, settings, "worker_queue_cap", float64(100*1000))
fillMissingDefault(app, settings, "worker_queue_mem_cap", float64(1024))
fillMissingDefault(app, settings, "worker_response_timeout", float64(3600))

// metastore related configuration
fillMissingDefault(settings, "execute_timer_routine_count", float64(3))
fillMissingDefault(settings, "timer_storage_routine_count", float64(3))
fillMissingDefault(settings, "timer_storage_chan_size", float64(10*1000))
fillMissingDefault(settings, "timer_queue_mem_cap", float64(50))
fillMissingDefault(settings, "timer_queue_size", float64(10000))
fillMissingDefault(app, settings, "execute_timer_routine_count", float64(3))
fillMissingDefault(app, settings, "timer_storage_routine_count", float64(3))
fillMissingDefault(app, settings, "timer_storage_chan_size", float64(10*1000))
fillMissingDefault(app, settings, "timer_queue_mem_cap", float64(50))
fillMissingDefault(app, settings, "timer_queue_size", float64(10000))

// Process related configuration
fillMissingDefault(settings, "breakpad_on", true)
fillMissingDefault(app, settings, "breakpad_on", true)

// Rebalance related configurations
fillMissingDefault(settings, "vb_ownership_giveup_routine_count", float64(3))
fillMissingDefault(settings, "vb_ownership_takeover_routine_count", float64(3))
fillMissingDefault(app, settings, "vb_ownership_giveup_routine_count", float64(3))
fillMissingDefault(app, settings, "vb_ownership_takeover_routine_count", float64(3))

// Application logging related configurations
fillMissingDefault(settings, "app_log_max_size", float64(1024*1024*40))
fillMissingDefault(settings, "app_log_max_files", float64(10))
fillMissingDefault(settings, "enable_applog_rotation", true)
fillMissingDefault(app, settings, "app_log_max_size", float64(1024*1024*40))
fillMissingDefault(app, settings, "app_log_max_files", float64(10))
fillMissingDefault(app, settings, "enable_applog_rotation", true)

// DCP connection related configurations
fillMissingDefault(settings, "agg_dcp_feed_mem_cap", float64(1024))
fillMissingDefault(settings, "data_chan_size", float64(50))
fillMissingDefault(settings, "dcp_gen_chan_size", float64(10000))
fillMissingDefault(settings, "dcp_num_connections", float64(1))
fillMissingDefault(app, settings, "agg_dcp_feed_mem_cap", float64(1024))
fillMissingDefault(app, settings, "data_chan_size", float64(50))
fillMissingDefault(app, settings, "dcp_gen_chan_size", float64(10000))
fillMissingDefault(app, settings, "dcp_num_connections", float64(1))
}

func fillMissingDefault(settings map[string]interface{}, field string, defaultValue interface{}) {
func fillMissingDefault(app application, settings map[string]interface{}, field string, defaultValue interface{}) {
if _, ok := settings[field]; !ok {
settings[field] = defaultValue
if _, tOk := app.Settings[field]; !tOk {
settings[field] = defaultValue
return
}
settings[field] = app.Settings[field]
}
}

Expand Down
6 changes: 3 additions & 3 deletions service_manager/validation.go
Expand Up @@ -51,7 +51,7 @@ func (m *ServiceMgr) validateApplication(app *application) (info *runtimeInfo) {
return
}

if info = m.validateSettings(util.DeepCopy(app.Settings)); info.Code != m.statusCodes.ok.Code {
if info = m.validateSettings(app.Name, util.DeepCopy(app.Settings)); info.Code != m.statusCodes.ok.Code {
return
}

Expand Down Expand Up @@ -689,11 +689,11 @@ func (m *ServiceMgr) validatePossibleValues(field string, settings map[string]in
return
}

func (m *ServiceMgr) validateSettings(settings map[string]interface{}) (info *runtimeInfo) {
func (m *ServiceMgr) validateSettings(appName string, settings map[string]interface{}) (info *runtimeInfo) {
info = &runtimeInfo{}
info.Code = m.statusCodes.errInvalidConfig.Code

fillMissingWithDefaults(settings)
m.fillMissingWithDefaults(appName, settings)

// Handler related configurations
if info = m.validateStringMustExist("user_prefix", maxPrefixLength, settings); info.Code != m.statusCodes.ok.Code {
Expand Down
2 changes: 1 addition & 1 deletion v8_consumer/src/v8worker.cc
Expand Up @@ -487,7 +487,7 @@ void V8Worker::RouteMessage() {
case oScanTimer: {
auto iter = timer_store_->GetIterator();
timer::TimerEvent evt;
while (iter.GetNext(evt) && !stop_timer_scan_.load()) {
while (!stop_timer_scan_.load() && iter.GetNext(evt)) {
std::unique_lock<std::mutex> lck(pause_lock_);
++timer_msg_counter;
this->SendTimer(evt.callback, evt.context);
Expand Down

0 comments on commit f8065dd

Please sign in to comment.