#  Licensed to the Apache Software Foundation (ASF) under one
#  or more contributor license agreements.  See the NOTICE file
#  distributed with this work for additional information
#  regarding copyright ownership.  The ASF licenses this file
#  to you 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.

configfiles:
- file: client
  configs:
  - name: heron.package.core.uri
    description: Location of the core Heron package
    default: file:///vagrant/.herondata/dist/heron-core-release.tar.gz
  - name: heron.config.is.role.required
    description: Whether a role is required to submit a topology
    default: "False"
  - name: heron.config.is.env.required
    description: Whether an environment is required to submit a topology
    default: "False"
- file: heron_internals
  configs:
  - name: heron.logging.directory
    description: The relative path to the logging directory
    default: log-files
  - name: heron.logging.maximum.size.mb
    description: The maximum log file size (in MB)
    default: 100
  - name: heron.logging.maximum.files
    description: The maximum number of log files
    default: 5
  - name: heron.check.tmaster.location.interval.sec
    description: The interval, in seconds, after which to check if the topology master location has been fetched or not
    default: 120
  - name: heron.logging.prune.interval.sec
    description: The interval, in seconds, at which to prune C++ log files
    default: 300
  - name: heron.logging.flush.interval.sec
    description: The interval, in seconds, at which to flush C++ log files
    default: 10
  - name: heron.logging.err.threshold
    description: The threshold level at which to log errors
    default: 3
  - name: heron.metrics.export.interval.sec
    description: The interval, in seconds, at which different components export metrics to the metrics manager
    default: 60
  - name: heron.metrics.max.exceptions.per.message.count
    description: The maximum count of exceptions in one `MetricPublisherPublishMessage` protobuf message
    default: 1024
  - name: heron.streammgr.cache.drain.frequency.ms
    description: The frequency, in milliseconds, at which to drain the tuple cache in the stream manager
    default: 10
  - name: heron.streammgr.stateful.buffer.size.mb
    description: The sized-based threshold (in MB) for buffering data tuples waiting for checkpoint markers before giving up
    default: 100
  - name: heron.streammgr.cache.drain.size.mb
    description: The sized-based threshold (in MB) for draining the tuple cache
    default: 100
  - name: heron.streammgr.xormgr.rotatingmap.nbuckets
    description: For efficient acknowledgements
    default: 3
  - name: heron.streammgr.mempool.max.message.number
    description: The max number of messages in the memory pool for each message type
    default: 512
  - name: heron.streammgr.client.reconnect.interval.sec
    description: The reconnect interval to other stream managers (in seconds) for the stream manager client
    default: 1
  - name: heron.streammgr.client.reconnect.tmaster.interval.sec
    description: The reconnect interval to the topology master (in seconds) for the stream manager client
    default: 10
  - name: heron.streammgr.client.reconnect.tmaster.max.attempts
    description: The max reconnect attempts to tmaster for stream manager client
    default: 30
  - name: heron.streammgr.network.options.maximum.packet.mb
    description: The maximum packet size (in MB) of the stream manager's network options
    default: 10
  - name: heron.streammgr.tmaster.heartbeat.interval.sec
    description: The interval (in seconds) at which to send heartbeats
    default: 10
  - name: heron.streammgr.connection.read.batch.size.mb
    description: The maximum batch size (in MB) for the stream manager to read from socket
    default: 1
  - name: heron.streammgr.connection.write.batch.size.mb
    description: Maximum batch size (in MB) for the stream manager to write to socket
    default: 1
  - name: heron.streammgr.network.backpressure.threshold
    description: The number of times Heron should wait to see a buffer full while enqueueing data before declaring the start of backpressure
    default: 3
  - name: heron.streammgr.network.backpressure.highwatermark.mb
    description: The high-water mark on the number (in MB) that can be left outstanding on a connection
    default: 100
  - name: heron.streammgr.network.backpressure.lowwatermark.mb
    description: The low-water mark on the number (in MB) that can be left outstanding on a connection
    default: 
  - name: heron.tmaster.metrics.collector.maximum.interval.min
    description: The maximum interval (in minutes) for metrics to be kept in the topology master
    default: 180
  - name: heron.tmaster.establish.retry.times
    description: The maximum number of times to retry establishing connection with the topology master
    default: 30
  - name: heron.tmaster.establish.retry.interval.sec
    description: The interval at which to retry establishing connection with the topology master
    default: 1
  - name: heron.tmaster.network.master.options.maximum.packet.mb
    description: Maximum packet size (in MB) of topology master's network options to connect to stream managers
    default: 16
  - name: heron.tmaster.network.controller.options.maximum.packet.mb
    description: Maximum packet size (in MB) of the topology master's network options to connect to scheduler
    default: 1
  - name: heron.tmaster.network.stats.options.maximum.packet.mb
    description: Maximum packet size (in MB) of the topology master's network options for stat queries
    default: 1
  - name: heron.tmaster.metrics.collector.purge.interval.sec
    description: The interval (in seconds) at which the topology master purges metrics from socket
    default: 60
  - name: heron.tmaster.metrics.collector.maximum.exception
    description: The maximum number of exceptions to be stored in the topology metrics collector, to prevent out-of-memory errors
    default: 256
  - name: heron.tmaster.metrics.network.bindallinterfaces
    description: Whether the metrics reporter should bind on all interfaces
    default: "False"
  - name: heron.tmaster.stmgr.state.timeout.sec
    description: The timeout (in seconds) for the stream manager, compared with (current time - last heartbeat time)
    default: 60
  - name: heron.metricsmgr.network.read.batch.time.ms
    description: The maximum batch time (in milliseconds) for the metrics manager to read from socket
    default: 16
  - name: heron.metricsmgr.network.read.batch.size.bytes
    description: The maximum batch size (in bytes) to read from socket
    default: 32768
  - name: heron.metricsmgr.network.write.batch.time.ms
    description: The maximum batch time (in milliseconds) for the metrics manager to write to socket
    default: 32768
  - name: heron.metricsmgr.network.options.socket.send.buffer.size.bytes
    description: The maximum socket send buffer size (in bytes)
    default: 6553600
  - name: heron.metricsmgr.network.options.socket.received.buffer.size.bytes
    description: The maximum socket received buffer size (in bytes) for the metrics manager's network options
    default: 8738000
  - name: heron.metricsmgr.network.options.maximum.packetsize.bytes
    description: The maximum packet size that the metrics manager can read
    default: 1048576
  - name: heron.instance.network.options.maximum.packetsize.bytes
    description: The maximum size of packets that Heron instances can read
    default: 10485760
  - name: heron.instance.internal.bolt.read.queue.capacity
    description: The queue capacity (num of items) in bolt for buffer packets to read from stream manager
    default: 128
  - name: heron.instance.internal.bolt.write.queue.capacity
    description: The queue capacity (num of items) in bolt for buffer packets to write to stream manager
    default: 128
  - name: heron.instance.internal.spout.read.queue.capacity
    description: The queue capacity (num of items) in spout for buffer packets to read from stream manager
    default: 1024
  - name: heron.instance.internal.spout.write.queue.capacity
    description: The queue capacity (num of items) in spout for buffer packets to write to stream manager
    default: 128
  - name: heron.instance.internal.metrics.write.queue.capacity
    description: The queue capacity (num of items) for metrics packets to write to metrics manager
    default: 128
  - name: heron.instance.network.read.batch.time.ms
    description: Time based, the maximum batch time in ms for instance to read from stream manager per attempt
    default: 16
  - name: heron.instance.network.read.batch.size.bytes
    description: Size based, the maximum batch size in bytes to read from stream manager
    default: 32768
  - name: heron.instance.network.write.batch.time.ms
    description: Time based, the maximum batch time (in milliseconds) for the instance to write to the stream manager per attempt
    default: 16
  - name: heron.instance.network.write.batch.size.bytes
    description: Size based, the maximum batch size in bytes to write to stream manager
    default: 32768
  - name: heron.instance.network.options.socket.send.buffer.size.bytes
    description: The maximum socket's send buffer size in bytes
    default: 6553600
  - name: heron.instance.network.options.socket.received.buffer.size.bytes
    description: The maximum socket's received buffer size in bytes of instance's network options
    default: 8738000
  - name: heron.instance.set.data.tuple.capacity
    description: The maximum number of data tuple to batch in a HeronDataTupleSet protobuf
    default: 1024
  - name: heron.instance.set.data.tuple.size.bytes
    description: The maximum size in bytes of data tuple to batch in a HeronDataTupleSet protobuf
    default: 8388608
  - name: heron.instance.set.control.tuple.capacity
    description: The maximum number of control tuple to batch in a HeronControlTupleSet protobuf
    default: 1024
  - name: heron.instance.ack.batch.time.ms
    description: The maximum time in ms for a spout to do acknowledgement per attempt, the ack batch could also break if there are no more ack tuples to process
    default: 128
  - name: heron.instance.emit.batch.time.ms
    description: The maximum time in ms for an spout instance to emit tuples per attempt
    default: 16
  - name: heron.instance.emit.batch.size.bytes
    description: The maximum batch size in bytes for an spout to emit tuples per attempt
    default: 32768
  - name: heron.instance.execute.batch.time.ms
    description: The maximum time in ms for an bolt instance to execute tuples per attempt
    default: 16
  - name: heron.instance.execute.batch.size.bytes
    description: The maximum batch size in bytes for an bolt instance to execute tuples per attempt
    default: 32768
  - name: heron.instance.state.check.interval.sec
    description: The time interval for an instance to check the state change, for example, the interval a spout uses to check whether activate/deactivate is invoked
    default: 5
  - name: heron.instance.force.exit.timeout.ms
    description: The time to wait before the instance exits forcibly when uncaught exception happens
    default: 2000
  - name: heron.instance.reconnect.streammgr.interval.sec
    description: Interval in seconds to reconnect to the stream manager, including the request timeout in connecting
    default: 5
  - name: heron.instance.reconnect.streammgr.interval.sec
    description: Interval in seconds to reconnect to the stream manager, including the request timeout in connecting
    default: 60
  - name: heron.instance.reconnect.metricsmgr.interval.sec
    description: Interval in seconds to reconnect to the metrics manager, including the request timeout in connecting
    default: 5
  - name: heron.instance.reconnect.metricsmgr.times
    description: Interval in seconds to reconnect to the metrics manager, including the request timeout in connecting
    default: 60
  - name: heron.instance.metrics.system.sample.interval.sec
    description: The interval in second for an instance to sample its system metrics, for instance, CPU load.
    default: 10
  - name: heron.instance.slave.fetch.pplan.interval.sec
    description: The time interval (in seconds) at which Heron instances fetch the physical plan from slaves
    default: 1
  - name: heron.instance.acknowledgement.nbuckets
    description: For efficient acknowledgement
    default: 10
  - name: heron.instance.tuning.expected.bolt.read.queue.size
    description: The expected size on read queue in bolt
    default: 8
  - name: heron.instance.tuning.expected.bolt.write.queue.size
    description: The expected size on write queue in bolt
    default: 8
  - name: heron.instance.tuning.expected.spout.read.queue.size
    description: The expected size on read queue in spout
    default: 512
  - name: heron.instance.tuning.expected.spout.write.queue.size
    description: The exepected size on write queue in spout
    default: 8
  - name: heron.instance.tuning.expected.metrics.write.queue.size
    description: The expected size on metrics write queue
    default: 8
  - name: heron.instance.tuning.current.sample.weight
    description:
    default: 0.8
  - name: heron.instance.tuning.interval.ms
    description: Interval in ms to tune the size of in & out data queue in instance
    default: 100
- file: packing
  configs:
  - name: heron.class.packing.algorithm
    description: Packing algorithm for packing instances into containers
    default: org.apache.heron.packing.roundrobin.RoundRobinPacking
- file: scheduler
  configs:
  - name: heron.class.scheduler
    description: scheduler class for distributing the topology for execution
    default: org.apache.heron.scheduler.kubernetes.KubernetesScheduler
  - name: heron.class.launcher
    description: launcher class for submitting and launching the topology
    default: org.apache.heron.scheduler.kubernetes.KubernetesLauncher
  - name: heron.directory.sandbox.java.home
    description: location of java - pick it up from shell environment
    default: $JAVA_HOME
  - name: heron.kubernetes.scheduler.uri
    description: The URI of the Kubernetes API
  - name: heron.scheduler.is.service
    description: Invoke the IScheduler as a library directly
    default: False
  - name: heron.executor.docker.image
    description: docker repo for executor
    default: heron/heron:latest
- file: stateful
  configs:
  - name: heron.statefulstorage.classname
    description: The type of storage to be used for state checkpointing
    default: org.apache.heron.statefulstorage.localfs.LocalFileSystemStorage
- file: statemgr
  configs:
  - name: heron.class.state.manager
    description: local state manager class for managing state in a persistent fashion
    default: org.apache.heron.statemgr.zookeeper.curator.CuratorStateManager
  - name: heron.statemgr.connection.string
    description: local state manager connection string
  - name: heron.statemgr.root.path
    description: path of the root address to store the state in a local file system
    default: /heron
  - name: heron.statemgr.zookeeper.is.initialize.tree
    description: create the zookeeper nodes, if they do not exist
    default: "True"
  - name: heron.statemgr.zookeeper.session.timeout.ms
    description: timeout in ms to wait before considering zookeeper session is dead
    default: 30000
  - name: heron.statemgr.zookeeper.connection.timeout.ms
    description: timeout in ms to wait before considering zookeeper connection is dead
    default: 30000
  - name: heron.statemgr.zookeeper.retry.count
    description: timeout in ms to wait before considering zookeeper connection is dead
    default: 10
  - name: heron.statemgr.zookeeper.retry.interval.ms
    description: duration of time to wait until the next retry
    default: 10000
- file: uploader
  configs:
  - name: heron.class.uploader
    description: uploader class for transferring the topology files (jars, tars, PEXes, etc.) to storage
    default: org.apache.heron.uploader.s3.S3Uploader
  - name: heron.uploader.s3.bucket
    description: S3 bucket in which topology assets will be stored (if AWS S3 is being used)
  - name: heron.uploader.s3.access_key
    description: AWS access key (if AWS S3 is being used)
  - name: heron.uploader.s3.secret_key
    description: AWS secret access key (if AWS S3 is being used)