tidb config 源码

2022-09-19 浏览 (620)

tidb config 代码

文件路径:/store/pdtypes/config.go

/ Copyright 2022 PingCAP, Inc.
/
/ Licensed under the Apache License, Version 2.0 (the "License");
/ you may not use this file except in compliance with the License.
/ You may obtain a copy of the License at
/
/     http://www.apache.org/licenses/LICENSE-2.0
/
/ Unless required by applicable law or agreed to in writing, software
/ distributed under the License is distributed on an "AS IS" BASIS,
/ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
/ See the License for the specific language governing permissions and
/ limitations under the License.

package pdtypes

/ ReplicationConfig is the replication configuration.
type ReplicationConfig struct {
	/ MaxReplicas is the number of replicas for each region.
	MaxReplicas uint64 `toml:"max-replicas" json:"max-replicas"`

	/ The label keys specified the location of a store.
	/ The placement priorities is implied by the order of label keys.
	/ For example, ["zone", "rack"] means that we should place replicas to
	/ different zones first, then to different racks if we don't have enough zones.
	LocationLabels StringSlice `toml:"location-labels" json:"location-labels"`
	/ StrictlyMatchLabel strictly checks if the label of TiKV is matched with LocationLabels.
	StrictlyMatchLabel bool `toml:"strictly-match-label" json:"strictly-match-label,string"`

	/ When PlacementRules feature is enabled. MaxReplicas, LocationLabels and IsolationLabels are not used any more.
	EnablePlacementRules bool `toml:"enable-placement-rules" json:"enable-placement-rules,string"`

	/ EnablePlacementRuleCache controls whether use cache during rule checker
	EnablePlacementRulesCache bool `toml:"enable-placement-rules-cache" json:"enable-placement-rules-cache,string"`

	/ IsolationLevel is used to isolate replicas explicitly and forcibly if it's not empty.
	/ Its value must be empty or one of LocationLabels.
	/ Example:
	/ location-labels = ["zone", "rack", "host"]
	/ isolation-level = "zone"
	/ With configuration like above, PD ensure that all replicas be placed in different zones.
	/ Even if a zone is down, PD will not try to make up replicas in other zone
	/ because other zones already have replicas on it.
	IsolationLevel string `toml:"isolation-level" json:"isolation-level"`
}

相关信息

tidb 源码目录

相关文章

tidb api 源码

tidb placement 源码

tidb region_tree 源码

tidb statistics 源码

tidb typeutil 源码

^