From b49436b138676143df80c37961c6c1e2733f8690 Mon Sep 17 00:00:00 2001 From: Derek Riley Date: Fri, 18 Oct 2024 10:06:49 -0400 Subject: [PATCH 1/3] Add services configuration md Signed-off-by: Derek Riley --- .../design/services/service-configuration.md | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 hedera-node/docs/design/services/service-configuration.md diff --git a/hedera-node/docs/design/services/service-configuration.md b/hedera-node/docs/design/services/service-configuration.md new file mode 100644 index 000000000000..0b93e06b2243 --- /dev/null +++ b/hedera-node/docs/design/services/service-configuration.md @@ -0,0 +1,47 @@ +# Service Configuration + +The bulleted list below provides a comprehensive overview of the various configuration settings used in the Hedera Services. These settings are defined in various Config classes, +each managing a specific aspect of the system. For instance, +`AccountsConfig.java` controls account-related properties, while +`ContractsConfig.java` manages smart contract settings. +This document serves as a valuable resource for understanding how +Hedera Services can be customized and configured to meet specific requirements. +For more detailed information on other types of configuration, please refer to the +hedera-node/docs/design/services/service-configuration.md +[Service Configuration](hedera-node/docs/services-configuration.md) file. + +- **AccountsConfig.java**: Provides configuration settings for various account-related properties, including admin roles and treasury accounts. +- **ApiPermissionConfig.java**: Manages permissions for different API functionalities, specifying which accounts are allowed to execute certain operations. +- **AutoCreationConfig.java**: Configures settings related to the automatic creation of accounts. +- **AutoRenew2Config.java**: Contains settings for automatic renewal processes, specifying scan and renewal parameters. +- **AutoRenewConfig.java**: Defines configurations for the auto-renewal feature, including target types for auto-renewal. +- **BalancesConfig.java**: Manages the export and handling of account balance information, including export directory and compression settings. +- **BlockRecordStreamConfig.java**: Configures the parameters for recording and streaming block records, including file directories and compression options. +- **BlockStreamConfig.java**: Manages settings for the block stream, including stream mode and file compression. +- **BootstrapConfig.java**: Contains initial configuration settings for bootstrapping the system, including fee schedules, public keys, and rate settings. +- **CacheConfig.java**: Manages settings related to caching, including record TTL and the number of warm-up threads. +- **ConsensusConfig.java**: Configures various consensus-related settings, including message size limits and handling parameters for preceding and following records. +- **ContractsConfig.java**: Manages configurations for smart contracts, including storage fees, delegate caller permissions, and gas usage limits. +- **CryptoCreateWithAliasConfig.java**: Enables or disables the feature for creating crypto accounts with an alias. +- **DevConfig.java**: Contains development-related configuration settings, including node listening behavior and default node account. +- **EntitiesConfig.java**: Manages settings related to entities, including maximum lifetime and token association limits. +- **ExpiryConfig.java**: Configures expiration-related settings, including throttle resources. +- **FeesConfig.java**: Manages fee-related configurations, including congestion multipliers and token transfer usage multipliers. +- **FilesConfig.java**: Configures file-related settings, including file IDs for various system files and maximum file sizes. +- **GrpcConfig.java**: Manages gRPC configuration settings, including port numbers, message size limits, and node operator port settings. +- **HederaConfig.java**: Contains general Hedera network settings, including user entity IDs, transaction parameters, and active profiles. +- **LazyCreationConfig.java**: Enables or disables the lazy creation feature for accounts. +- **LedgerConfig.java**: Manages ledger-related settings including system accounts, auto-renew periods, and token transfer limits. +- **NettyConfig.java**: Contains settings for Netty-based gRPC server configurations, including connection limits, retry intervals, and TLS paths. +- **NetworkAdminConfig.java**: Configures the network administration service, including paths for upgrade artifacts and system file locations. +- **NodesConfig.java**: Manages node-related settings such as maximum number of nodes, gossip configurations, and service endpoints. +- **RatesConfig.java**: Contains settings for rate configurations including intraday change limits and midnight check intervals. +- **SchedulingConfig.java**: Manages scheduling-related settings, including transaction per second limits and expiration times. +- **StakingConfig.java**: Configures staking settings including reward percentages, period durations, and enabled states. +- **StatsConfig.java**: Manages settings related to statistics collection, including throttle sampling and update intervals. +- **TokensConfig.java**: Contains token-related settings such as maximum number of tokens, metadata sizes, and NFT configurations. +- **TopicsConfig.java**: Configures topic-related settings including the maximum number of topics. +- **TraceabilityConfig.java**: Manages traceability settings including export limits and gas throttle ratios. +- **TssConfig.java**: Configures the Threshold Signature Scheme (TSS) service, including retry settings and ledger ID enabling. +- **UtilPrngConfig.java**: Contains settings related to the pseudo-random number generator utility. +- **VersionConfig.java**: Manages version-related settings including software version numbers and configuration versions. \ No newline at end of file From 838354f8f47d52298a9c43677fd3524f1bae9d73 Mon Sep 17 00:00:00 2001 From: Derek Riley Date: Wed, 23 Oct 2024 16:33:56 -0400 Subject: [PATCH 2/3] spotless Signed-off-by: Derek Riley --- .../docs/design/services/service-configuration.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/hedera-node/docs/design/services/service-configuration.md b/hedera-node/docs/design/services/service-configuration.md index 0b93e06b2243..0de6829d4fda 100644 --- a/hedera-node/docs/design/services/service-configuration.md +++ b/hedera-node/docs/design/services/service-configuration.md @@ -1,11 +1,11 @@ # Service Configuration -The bulleted list below provides a comprehensive overview of the various configuration settings used in the Hedera Services. These settings are defined in various Config classes, -each managing a specific aspect of the system. For instance, -`AccountsConfig.java` controls account-related properties, while -`ContractsConfig.java` manages smart contract settings. -This document serves as a valuable resource for understanding how -Hedera Services can be customized and configured to meet specific requirements. +The bulleted list below provides a comprehensive overview of the various configuration settings used in the Hedera Services. These settings are defined in various Config classes, +each managing a specific aspect of the system. For instance, +`AccountsConfig.java` controls account-related properties, while +`ContractsConfig.java` manages smart contract settings. +This document serves as a valuable resource for understanding how +Hedera Services can be customized and configured to meet specific requirements. For more detailed information on other types of configuration, please refer to the hedera-node/docs/design/services/service-configuration.md [Service Configuration](hedera-node/docs/services-configuration.md) file. @@ -44,4 +44,4 @@ hedera-node/docs/design/services/service-configuration.md - **TraceabilityConfig.java**: Manages traceability settings including export limits and gas throttle ratios. - **TssConfig.java**: Configures the Threshold Signature Scheme (TSS) service, including retry settings and ledger ID enabling. - **UtilPrngConfig.java**: Contains settings related to the pseudo-random number generator utility. -- **VersionConfig.java**: Manages version-related settings including software version numbers and configuration versions. \ No newline at end of file +- **VersionConfig.java**: Manages version-related settings including software version numbers and configuration versions. From ef6a159a881f8304294d40882bab29b355275f33 Mon Sep 17 00:00:00 2001 From: Derek Riley Date: Thu, 7 Nov 2024 07:59:22 -0500 Subject: [PATCH 3/3] doc fix Signed-off-by: Derek Riley --- hedera-node/docs/design/services/service-configuration.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/hedera-node/docs/design/services/service-configuration.md b/hedera-node/docs/design/services/service-configuration.md index 0de6829d4fda..40fb56498d34 100644 --- a/hedera-node/docs/design/services/service-configuration.md +++ b/hedera-node/docs/design/services/service-configuration.md @@ -7,8 +7,7 @@ each managing a specific aspect of the system. For instance, This document serves as a valuable resource for understanding how Hedera Services can be customized and configured to meet specific requirements. For more detailed information on other types of configuration, please refer to the -hedera-node/docs/design/services/service-configuration.md -[Service Configuration](hedera-node/docs/services-configuration.md) file. +[Service Configuration](hedera-node/docs/services-configuration.md). - **AccountsConfig.java**: Provides configuration settings for various account-related properties, including admin roles and treasury accounts. - **ApiPermissionConfig.java**: Manages permissions for different API functionalities, specifying which accounts are allowed to execute certain operations.