github.com/lzy4123/fabric@v2.1.1+incompatible/sampleconfig/core.yaml (about) 1 # Copyright IBM Corp. All Rights Reserved. 2 # 3 # SPDX-License-Identifier: Apache-2.0 4 # 5 6 ############################################################################### 7 # 8 # Peer section 9 # 10 ############################################################################### 11 peer: 12 13 # The peer id provides a name for this peer instance and is used when 14 # naming docker resources. 15 id: jdoe 16 17 # The networkId allows for logical separation of networks and is used when 18 # naming docker resources. 19 networkId: dev 20 21 # The Address at local network interface this Peer will listen on. 22 # By default, it will listen on all network interfaces 23 listenAddress: 0.0.0.0:7051 24 25 # The endpoint this peer uses to listen for inbound chaincode connections. 26 # If this is commented-out, the listen address is selected to be 27 # the peer's address (see below) with port 7052 28 # chaincodeListenAddress: 0.0.0.0:7052 29 30 # The endpoint the chaincode for this peer uses to connect to the peer. 31 # If this is not specified, the chaincodeListenAddress address is selected. 32 # And if chaincodeListenAddress is not specified, address is selected from 33 # peer listenAddress. 34 # chaincodeAddress: 0.0.0.0:7052 35 36 # When used as peer config, this represents the endpoint to other peers 37 # in the same organization. For peers in other organization, see 38 # gossip.externalEndpoint for more info. 39 # When used as CLI config, this means the peer's endpoint to interact with 40 address: 0.0.0.0:7051 41 42 # Whether the Peer should programmatically determine its address 43 # This case is useful for docker containers. 44 addressAutoDetect: false 45 46 # Keepalive settings for peer server and clients 47 keepalive: 48 # Interval is the duration after which if the server does not see 49 # any activity from the client it pings the client to see if it's alive 50 interval: 7200s 51 # Timeout is the duration the server waits for a response 52 # from the client after sending a ping before closing the connection 53 timeout: 20s 54 # MinInterval is the minimum permitted time between client pings. 55 # If clients send pings more frequently, the peer server will 56 # disconnect them 57 minInterval: 60s 58 # Client keepalive settings for communicating with other peer nodes 59 client: 60 # Interval is the time between pings to peer nodes. This must 61 # greater than or equal to the minInterval specified by peer 62 # nodes 63 interval: 60s 64 # Timeout is the duration the client waits for a response from 65 # peer nodes before closing the connection 66 timeout: 20s 67 # DeliveryClient keepalive settings for communication with ordering 68 # nodes. 69 deliveryClient: 70 # Interval is the time between pings to ordering nodes. This must 71 # greater than or equal to the minInterval specified by ordering 72 # nodes. 73 interval: 60s 74 # Timeout is the duration the client waits for a response from 75 # ordering nodes before closing the connection 76 timeout: 20s 77 78 79 # Gossip related configuration 80 gossip: 81 # Bootstrap set to initialize gossip with. 82 # This is a list of other peers that this peer reaches out to at startup. 83 # Important: The endpoints here have to be endpoints of peers in the same 84 # organization, because the peer would refuse connecting to these endpoints 85 # unless they are in the same organization as the peer. 86 bootstrap: 127.0.0.1:7051 87 88 # NOTE: orgLeader and useLeaderElection parameters are mutual exclusive. 89 # Setting both to true would result in the termination of the peer 90 # since this is undefined state. If the peers are configured with 91 # useLeaderElection=false, make sure there is at least 1 peer in the 92 # organization that its orgLeader is set to true. 93 94 # Defines whenever peer will initialize dynamic algorithm for 95 # "leader" selection, where leader is the peer to establish 96 # connection with ordering service and use delivery protocol 97 # to pull ledger blocks from ordering service. It is recommended to 98 # use leader election for large networks of peers. 99 useLeaderElection: true 100 # Statically defines peer to be an organization "leader", 101 # where this means that current peer will maintain connection 102 # with ordering service and disseminate block across peers in 103 # its own organization 104 orgLeader: false 105 106 # Interval for membershipTracker polling 107 membershipTrackerInterval: 5s 108 109 # Overrides the endpoint that the peer publishes to peers 110 # in its organization. For peers in foreign organizations 111 # see 'externalEndpoint' 112 endpoint: 113 # Maximum count of blocks stored in memory 114 maxBlockCountToStore: 100 115 # Max time between consecutive message pushes(unit: millisecond) 116 maxPropagationBurstLatency: 10ms 117 # Max number of messages stored until a push is triggered to remote peers 118 maxPropagationBurstSize: 10 119 # Number of times a message is pushed to remote peers 120 propagateIterations: 1 121 # Number of peers selected to push messages to 122 propagatePeerNum: 3 123 # Determines frequency of pull phases(unit: second) 124 # Must be greater than digestWaitTime + responseWaitTime 125 pullInterval: 4s 126 # Number of peers to pull from 127 pullPeerNum: 3 128 # Determines frequency of pulling state info messages from peers(unit: second) 129 requestStateInfoInterval: 4s 130 # Determines frequency of pushing state info messages to peers(unit: second) 131 publishStateInfoInterval: 4s 132 # Maximum time a stateInfo message is kept until expired 133 stateInfoRetentionInterval: 134 # Time from startup certificates are included in Alive messages(unit: second) 135 publishCertPeriod: 10s 136 # Should we skip verifying block messages or not (currently not in use) 137 skipBlockVerification: false 138 # Dial timeout(unit: second) 139 dialTimeout: 3s 140 # Connection timeout(unit: second) 141 connTimeout: 2s 142 # Buffer size of received messages 143 recvBuffSize: 20 144 # Buffer size of sending messages 145 sendBuffSize: 200 146 # Time to wait before pull engine processes incoming digests (unit: second) 147 # Should be slightly smaller than requestWaitTime 148 digestWaitTime: 1s 149 # Time to wait before pull engine removes incoming nonce (unit: milliseconds) 150 # Should be slightly bigger than digestWaitTime 151 requestWaitTime: 1500ms 152 # Time to wait before pull engine ends pull (unit: second) 153 responseWaitTime: 2s 154 # Alive check interval(unit: second) 155 aliveTimeInterval: 5s 156 # Alive expiration timeout(unit: second) 157 aliveExpirationTimeout: 25s 158 # Reconnect interval(unit: second) 159 reconnectInterval: 25s 160 # This is an endpoint that is published to peers outside of the organization. 161 # If this isn't set, the peer will not be known to other organizations. 162 externalEndpoint: 163 # Leader election service configuration 164 election: 165 # Longest time peer waits for stable membership during leader election startup (unit: second) 166 startupGracePeriod: 15s 167 # Interval gossip membership samples to check its stability (unit: second) 168 membershipSampleInterval: 1s 169 # Time passes since last declaration message before peer decides to perform leader election (unit: second) 170 leaderAliveThreshold: 10s 171 # Time between peer sends propose message and declares itself as a leader (sends declaration message) (unit: second) 172 leaderElectionDuration: 5s 173 174 pvtData: 175 # pullRetryThreshold determines the maximum duration of time private data corresponding for a given block 176 # would be attempted to be pulled from peers until the block would be committed without the private data 177 pullRetryThreshold: 60s 178 # As private data enters the transient store, it is associated with the peer's ledger's height at that time. 179 # transientstoreMaxBlockRetention defines the maximum difference between the current ledger's height upon commit, 180 # and the private data residing inside the transient store that is guaranteed not to be purged. 181 # Private data is purged from the transient store when blocks with sequences that are multiples 182 # of transientstoreMaxBlockRetention are committed. 183 transientstoreMaxBlockRetention: 1000 184 # pushAckTimeout is the maximum time to wait for an acknowledgement from each peer 185 # at private data push at endorsement time. 186 pushAckTimeout: 3s 187 # Block to live pulling margin, used as a buffer 188 # to prevent peer from trying to pull private data 189 # from peers that is soon to be purged in next N blocks. 190 # This helps a newly joined peer catch up to current 191 # blockchain height quicker. 192 btlPullMargin: 10 193 # the process of reconciliation is done in an endless loop, while in each iteration reconciler tries to 194 # pull from the other peers the most recent missing blocks with a maximum batch size limitation. 195 # reconcileBatchSize determines the maximum batch size of missing private data that will be reconciled in a 196 # single iteration. 197 reconcileBatchSize: 10 198 # reconcileSleepInterval determines the time reconciler sleeps from end of an iteration until the beginning 199 # of the next reconciliation iteration. 200 reconcileSleepInterval: 1m 201 # reconciliationEnabled is a flag that indicates whether private data reconciliation is enable or not. 202 reconciliationEnabled: true 203 # skipPullingInvalidTransactionsDuringCommit is a flag that indicates whether pulling of invalid 204 # transaction's private data from other peers need to be skipped during the commit time and pulled 205 # only through reconciler. 206 skipPullingInvalidTransactionsDuringCommit: false 207 # implicitCollectionDisseminationPolicy specifies the dissemination policy for the peer's own implicit collection. 208 # When a peer endorses a proposal that writes to its own implicit collection, below values override the default values 209 # for disseminating private data. 210 # Note that it is applicable to all channels the peer has joined. The implication is that requiredPeerCount has to 211 # be smaller than the number of peers in a channel that has the lowest numbers of peers from the organization. 212 implicitCollectionDisseminationPolicy: 213 # requiredPeerCount defines the minimum number of eligible peers to which the peer must successfully 214 # disseminate private data for its own implicit collection during endorsement. Default value is 0. 215 requiredPeerCount: 0 216 # maxPeerCount defines the maximum number of eligible peers to which the peer will attempt to 217 # disseminate private data for its own implicit collection during endorsement. Default value is 1. 218 maxPeerCount: 1 219 220 # Gossip state transfer related configuration 221 state: 222 # indicates whenever state transfer is enabled or not 223 # default value is true, i.e. state transfer is active 224 # and takes care to sync up missing blocks allowing 225 # lagging peer to catch up to speed with rest network 226 enabled: true 227 # checkInterval interval to check whether peer is lagging behind enough to 228 # request blocks via state transfer from another peer. 229 checkInterval: 10s 230 # responseTimeout amount of time to wait for state transfer response from 231 # other peers 232 responseTimeout: 3s 233 # batchSize the number of blocks to request via state transfer from another peer 234 batchSize: 10 235 # blockBufferSize reflects the size of the re-ordering buffer 236 # which captures blocks and takes care to deliver them in order 237 # down to the ledger layer. The actually buffer size is bounded between 238 # 0 and 2*blockBufferSize, each channel maintains its own buffer 239 blockBufferSize: 100 240 # maxRetries maximum number of re-tries to ask 241 # for single state transfer request 242 maxRetries: 3 243 244 # TLS Settings 245 tls: 246 # Require server-side TLS 247 enabled: false 248 # Require client certificates / mutual TLS. 249 # Note that clients that are not configured to use a certificate will 250 # fail to connect to the peer. 251 clientAuthRequired: false 252 # X.509 certificate used for TLS server 253 cert: 254 file: tls/server.crt 255 # Private key used for TLS server (and client if clientAuthEnabled 256 # is set to true 257 key: 258 file: tls/server.key 259 # Trusted root certificate chain for tls.cert 260 rootcert: 261 file: tls/ca.crt 262 # Set of root certificate authorities used to verify client certificates 263 clientRootCAs: 264 files: 265 - tls/ca.crt 266 # Private key used for TLS when making client connections. If 267 # not set, peer.tls.key.file will be used instead 268 clientKey: 269 file: 270 # X.509 certificate used for TLS when making client connections. 271 # If not set, peer.tls.cert.file will be used instead 272 clientCert: 273 file: 274 275 # Authentication contains configuration parameters related to authenticating 276 # client messages 277 authentication: 278 # the acceptable difference between the current server time and the 279 # client's time as specified in a client request message 280 timewindow: 15m 281 282 # Path on the file system where peer will store data (eg ledger). This 283 # location must be access control protected to prevent unintended 284 # modification that might corrupt the peer operations. 285 fileSystemPath: /var/hyperledger/production 286 287 # BCCSP (Blockchain crypto provider): Select which crypto implementation or 288 # library to use 289 BCCSP: 290 Default: SW 291 # Settings for the SW crypto provider (i.e. when DEFAULT: SW) 292 SW: 293 # TODO: The default Hash and Security level needs refactoring to be 294 # fully configurable. Changing these defaults requires coordination 295 # SHA2 is hardcoded in several places, not only BCCSP 296 Hash: SHA2 297 Security: 256 298 # Location of Key Store 299 FileKeyStore: 300 # If "", defaults to 'mspConfigPath'/keystore 301 KeyStore: 302 # Settings for the PKCS#11 crypto provider (i.e. when DEFAULT: PKCS11) 303 PKCS11: 304 # Location of the PKCS11 module library 305 Library: 306 # Token Label 307 Label: 308 # User PIN 309 Pin: 310 Hash: 311 Security: 312 313 # Path on the file system where peer will find MSP local configurations 314 mspConfigPath: msp 315 316 # Identifier of the local MSP 317 # ----!!!!IMPORTANT!!!-!!!IMPORTANT!!!-!!!IMPORTANT!!!!---- 318 # Deployers need to change the value of the localMspId string. 319 # In particular, the name of the local MSP ID of a peer needs 320 # to match the name of one of the MSPs in each of the channel 321 # that this peer is a member of. Otherwise this peer's messages 322 # will not be identified as valid by other nodes. 323 localMspId: SampleOrg 324 325 # CLI common client config options 326 client: 327 # connection timeout 328 connTimeout: 3s 329 330 # Delivery service related config 331 deliveryclient: 332 # It sets the total time the delivery service may spend in reconnection 333 # attempts until its retry logic gives up and returns an error 334 reconnectTotalTimeThreshold: 3600s 335 336 # It sets the delivery service <-> ordering service node connection timeout 337 connTimeout: 3s 338 339 # It sets the delivery service maximal delay between consecutive retries 340 reConnectBackoffThreshold: 3600s 341 342 # A list of orderer endpoint addresses which should be overridden 343 # when found in channel configurations. 344 addressOverrides: 345 # - from: 346 # to: 347 # caCertsFile: 348 # - from: 349 # to: 350 # caCertsFile: 351 352 # Type for the local MSP - by default it's of type bccsp 353 localMspType: bccsp 354 355 # Used with Go profiling tools only in none production environment. In 356 # production, it should be disabled (eg enabled: false) 357 profile: 358 enabled: false 359 listenAddress: 0.0.0.0:6060 360 361 # Handlers defines custom handlers that can filter and mutate 362 # objects passing within the peer, such as: 363 # Auth filter - reject or forward proposals from clients 364 # Decorators - append or mutate the chaincode input passed to the chaincode 365 # Endorsers - Custom signing over proposal response payload and its mutation 366 # Valid handler definition contains: 367 # - A name which is a factory method name defined in 368 # core/handlers/library/library.go for statically compiled handlers 369 # - library path to shared object binary for pluggable filters 370 # Auth filters and decorators are chained and executed in the order that 371 # they are defined. For example: 372 # authFilters: 373 # - 374 # name: FilterOne 375 # library: /opt/lib/filter.so 376 # - 377 # name: FilterTwo 378 # decorators: 379 # - 380 # name: DecoratorOne 381 # - 382 # name: DecoratorTwo 383 # library: /opt/lib/decorator.so 384 # Endorsers are configured as a map that its keys are the endorsement system chaincodes that are being overridden. 385 # Below is an example that overrides the default ESCC and uses an endorsement plugin that has the same functionality 386 # as the default ESCC. 387 # If the 'library' property is missing, the name is used as the constructor method in the builtin library similar 388 # to auth filters and decorators. 389 # endorsers: 390 # escc: 391 # name: DefaultESCC 392 # library: /etc/hyperledger/fabric/plugin/escc.so 393 handlers: 394 authFilters: 395 - 396 name: DefaultAuth 397 - 398 name: ExpirationCheck # This filter checks identity x509 certificate expiration 399 decorators: 400 - 401 name: DefaultDecorator 402 endorsers: 403 escc: 404 name: DefaultEndorsement 405 library: 406 validators: 407 vscc: 408 name: DefaultValidation 409 library: 410 411 # library: /etc/hyperledger/fabric/plugin/escc.so 412 # Number of goroutines that will execute transaction validation in parallel. 413 # By default, the peer chooses the number of CPUs on the machine. Set this 414 # variable to override that choice. 415 # NOTE: overriding this value might negatively influence the performance of 416 # the peer so please change this value only if you know what you're doing 417 validatorPoolSize: 418 419 # The discovery service is used by clients to query information about peers, 420 # such as - which peers have joined a certain channel, what is the latest 421 # channel config, and most importantly - given a chaincode and a channel, 422 # what possible sets of peers satisfy the endorsement policy. 423 discovery: 424 enabled: true 425 # Whether the authentication cache is enabled or not. 426 authCacheEnabled: true 427 # The maximum size of the cache, after which a purge takes place 428 authCacheMaxSize: 1000 429 # The proportion (0 to 1) of entries that remain in the cache after the cache is purged due to overpopulation 430 authCachePurgeRetentionRatio: 0.75 431 # Whether to allow non-admins to perform non channel scoped queries. 432 # When this is false, it means that only peer admins can perform non channel scoped queries. 433 orgMembersAllowedAccess: false 434 435 # Limits is used to configure some internal resource limits. 436 limits: 437 # Concurrency limits the number of concurrently running requests to a service on each peer. 438 # Currently this option is only applied to endorser service and deliver service. 439 # When the property is missing or the value is 0, the concurrency limit is disabled for the service. 440 concurrency: 441 # endorserService limits concurrent requests to endorser service that handles chaincode deployment, query and invocation, 442 # including both user chaincodes and system chaincodes. 443 endorserService: 2500 444 # deliverService limits concurrent event listeners registered to deliver service for blocks and transaction events. 445 deliverService: 2500 446 447 ############################################################################### 448 # 449 # VM section 450 # 451 ############################################################################### 452 vm: 453 454 # Endpoint of the vm management system. For docker can be one of the following in general 455 # unix:///var/run/docker.sock 456 # http://localhost:2375 457 # https://localhost:2376 458 endpoint: unix:///var/run/docker.sock 459 460 # settings for docker vms 461 docker: 462 tls: 463 enabled: false 464 ca: 465 file: docker/ca.crt 466 cert: 467 file: docker/tls.crt 468 key: 469 file: docker/tls.key 470 471 # Enables/disables the standard out/err from chaincode containers for 472 # debugging purposes 473 attachStdout: false 474 475 # Parameters on creating docker container. 476 # Container may be efficiently created using ipam & dns-server for cluster 477 # NetworkMode - sets the networking mode for the container. Supported 478 # standard values are: `host`(default),`bridge`,`ipvlan`,`none`. 479 # Dns - a list of DNS servers for the container to use. 480 # Note: `Privileged` `Binds` `Links` and `PortBindings` properties of 481 # Docker Host Config are not supported and will not be used if set. 482 # LogConfig - sets the logging driver (Type) and related options 483 # (Config) for Docker. For more info, 484 # https://docs.docker.com/engine/admin/logging/overview/ 485 # Note: Set LogConfig using Environment Variables is not supported. 486 hostConfig: 487 NetworkMode: host 488 Dns: 489 # - 192.168.0.1 490 LogConfig: 491 Type: json-file 492 Config: 493 max-size: "50m" 494 max-file: "5" 495 Memory: 2147483648 496 497 ############################################################################### 498 # 499 # Chaincode section 500 # 501 ############################################################################### 502 chaincode: 503 504 # The id is used by the Chaincode stub to register the executing Chaincode 505 # ID with the Peer and is generally supplied through ENV variables 506 # the `path` form of ID is provided when installing the chaincode. 507 # The `name` is used for all other requests and can be any string. 508 id: 509 path: 510 name: 511 512 # Generic builder environment, suitable for most chaincode types 513 builder: $(DOCKER_NS)/fabric-ccenv:$(TWO_DIGIT_VERSION) 514 515 # Enables/disables force pulling of the base docker images (listed below) 516 # during user chaincode instantiation. 517 # Useful when using moving image tags (such as :latest) 518 pull: false 519 520 golang: 521 # golang will never need more than baseos 522 runtime: $(DOCKER_NS)/fabric-baseos:$(TWO_DIGIT_VERSION) 523 524 # whether or not golang chaincode should be linked dynamically 525 dynamicLink: false 526 527 java: 528 # This is an image based on java:openjdk-8 with addition compiler 529 # tools added for java shim layer packaging. 530 # This image is packed with shim layer libraries that are necessary 531 # for Java chaincode runtime. 532 runtime: $(DOCKER_NS)/fabric-javaenv:$(TWO_DIGIT_VERSION) 533 534 node: 535 # This is an image based on node:$(NODE_VER)-alpine 536 runtime: $(DOCKER_NS)/fabric-nodeenv:$(TWO_DIGIT_VERSION) 537 538 # List of directories to treat as external builders and launchers for 539 # chaincode. The external builder detection processing will iterate over the 540 # builders in the order specified below. 541 externalBuilders: [] 542 # - path: /path/to/directory 543 # name: descriptive-builder-name 544 # environmentWhitelist: 545 # - ENVVAR_NAME_TO_PROPAGATE_FROM_PEER 546 # - GOPROXY 547 548 # The maximum duration to wait for the chaincode build and install process 549 # to complete. 550 installTimeout: 300s 551 552 # Timeout duration for starting up a container and waiting for Register 553 # to come through. 554 startuptimeout: 300s 555 556 # Timeout duration for Invoke and Init calls to prevent runaway. 557 # This timeout is used by all chaincodes in all the channels, including 558 # system chaincodes. 559 # Note that during Invoke, if the image is not available (e.g. being 560 # cleaned up when in development environment), the peer will automatically 561 # build the image, which might take more time. In production environment, 562 # the chaincode image is unlikely to be deleted, so the timeout could be 563 # reduced accordingly. 564 executetimeout: 30s 565 566 # There are 2 modes: "dev" and "net". 567 # In dev mode, user runs the chaincode after starting peer from 568 # command line on local machine. 569 # In net mode, peer will run chaincode in a docker container. 570 mode: net 571 572 # keepalive in seconds. In situations where the communication goes through a 573 # proxy that does not support keep-alive, this parameter will maintain connection 574 # between peer and chaincode. 575 # A value <= 0 turns keepalive off 576 keepalive: 0 577 578 # system chaincodes whitelist. To add system chaincode "myscc" to the 579 # whitelist, add "myscc: enable" to the list below, and register in 580 # chaincode/importsysccs.go 581 system: 582 _lifecycle: enable 583 cscc: enable 584 lscc: enable 585 escc: enable 586 vscc: enable 587 qscc: enable 588 589 # Logging section for the chaincode container 590 logging: 591 # Default level for all loggers within the chaincode container 592 level: info 593 # Override default level for the 'shim' logger 594 shim: warning 595 # Format for the chaincode container logs 596 format: '%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}' 597 598 ############################################################################### 599 # 600 # Ledger section - ledger configuration encompasses both the blockchain 601 # and the state 602 # 603 ############################################################################### 604 ledger: 605 606 blockchain: 607 608 state: 609 # stateDatabase - options are "goleveldb", "CouchDB" 610 # goleveldb - default state database stored in goleveldb. 611 # CouchDB - store state database in CouchDB 612 stateDatabase: goleveldb 613 # Limit on the number of records to return per query 614 totalQueryLimit: 100000 615 couchDBConfig: 616 # It is recommended to run CouchDB on the same server as the peer, and 617 # not map the CouchDB container port to a server port in docker-compose. 618 # Otherwise proper security must be provided on the connection between 619 # CouchDB client (on the peer) and server. 620 couchDBAddress: 127.0.0.1:5984 621 # This username must have read and write authority on CouchDB 622 username: 623 # The password is recommended to pass as an environment variable 624 # during start up (eg CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD). 625 # If it is stored here, the file must be access control protected 626 # to prevent unintended users from discovering the password. 627 password: 628 # Number of retries for CouchDB errors 629 maxRetries: 3 630 # Number of retries for CouchDB errors during peer startup 631 maxRetriesOnStartup: 12 632 # CouchDB request timeout (unit: duration, e.g. 20s) 633 requestTimeout: 35s 634 # Limit on the number of records per each CouchDB query 635 # Note that chaincode queries are only bound by totalQueryLimit. 636 # Internally the chaincode may execute multiple CouchDB queries, 637 # each of size internalQueryLimit. 638 internalQueryLimit: 1000 639 # Limit on the number of records per CouchDB bulk update batch 640 maxBatchUpdateSize: 1000 641 # Warm indexes after every N blocks. 642 # This option warms any indexes that have been 643 # deployed to CouchDB after every N blocks. 644 # A value of 1 will warm indexes after every block commit, 645 # to ensure fast selector queries. 646 # Increasing the value may improve write efficiency of peer and CouchDB, 647 # but may degrade query response time. 648 warmIndexesAfterNBlocks: 1 649 # Create the _global_changes system database 650 # This is optional. Creating the global changes database will require 651 # additional system resources to track changes and maintain the database 652 createGlobalChangesDB: false 653 # CacheSize denotes the maximum mega bytes (MB) to be allocated for the in-memory state 654 # cache. Note that CacheSize needs to be a multiple of 32 MB. If it is not a multiple 655 # of 32 MB, the peer would round the size to the next multiple of 32 MB. 656 # To disable the cache, 0 MB needs to be assigned to the cacheSize. 657 cacheSize: 64 658 659 history: 660 # enableHistoryDatabase - options are true or false 661 # Indicates if the history of key updates should be stored. 662 # All history 'index' will be stored in goleveldb, regardless if using 663 # CouchDB or alternate database for the state. 664 enableHistoryDatabase: true 665 666 pvtdataStore: 667 # the maximum db batch size for converting 668 # the ineligible missing data entries to eligible missing data entries 669 collElgProcMaxDbBatchSize: 5000 670 # the minimum duration (in milliseconds) between writing 671 # two consecutive db batches for converting the ineligible missing data entries to eligible missing data entries 672 collElgProcDbBatchesInterval: 1000 673 674 ############################################################################### 675 # 676 # Operations section 677 # 678 ############################################################################### 679 operations: 680 # host and port for the operations server 681 listenAddress: 127.0.0.1:9443 682 683 # TLS configuration for the operations endpoint 684 tls: 685 # TLS enabled 686 enabled: false 687 688 # path to PEM encoded server certificate for the operations server 689 cert: 690 file: 691 692 # path to PEM encoded server key for the operations server 693 key: 694 file: 695 696 # most operations service endpoints require client authentication when TLS 697 # is enabled. clientAuthRequired requires client certificate authentication 698 # at the TLS layer to access all resources. 699 clientAuthRequired: false 700 701 # paths to PEM encoded ca certificates to trust for client authentication 702 clientRootCAs: 703 files: [] 704 705 ############################################################################### 706 # 707 # Metrics section 708 # 709 ############################################################################### 710 metrics: 711 # metrics provider is one of statsd, prometheus, or disabled 712 provider: disabled 713 714 # statsd configuration 715 statsd: 716 # network type: tcp or udp 717 network: udp 718 719 # statsd server address 720 address: 127.0.0.1:8125 721 722 # the interval at which locally cached counters and gauges are pushed 723 # to statsd; timings are pushed immediately 724 writeInterval: 10s 725 726 # prefix is prepended to all emitted statsd metrics 727 prefix: