This docu page https://docs.spring.io/spring-boot/appendix/application-properties/index.html#application-properties.server.server.tomcat.max-connections states: "Maximum number of connections that the server accepts and processes at any given time. Once the limit has been reached, the operating system may still accept connections based on the "acceptCount" property."
But if you search for "acceptCount" you will find nothing. I assume https://docs.spring.io/spring-boot/appendix/application-properties/index.html#application-properties.server.server.tomcat.accept-count server.tomcat.accept-count is meant with it. so I wanted to add a proper link to this property, however, it looks the adoc https://github.com/spring-projects/spring-boot/blob/v3.3.4/spring-boot-project/spring-boot-docs/src/docs/antora/modules/appendix/pages/application-properties/index.adoc is broken, at least I cannot find the sources where those properties are documented.
Comment From: snicoll
This section of the doc is auto-generated from the configuration properties metadata and there is no way to link one property with another. The best we could do is change the case of "acceptCount" to be "accept-count" to reduce the confusion.
Comment From: wilkinsona
Thanks for the suggestion. I'm not sure that we can cross-link due to the way that the documentation is generated. However, we may be able to improve things by, for example, using the full property name or using accept-count rather than acceptCount.
We have a few places where we reference other properties. If we decide to change the description of max-connections, the others should probably be changed too. They are:
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/ServerProperties.java#L433-L439
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/influx/InfluxProperties.java#L108-L112
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/task/TaskExecutionProperties.java#L85-L90
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/orm/jpa/JpaProperties.java#L50-L54
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/orm/jpa/JpaProperties.java#L56-L60
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/flyway/FlywayProperties.java#L94-L98
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/kafka/KafkaProperties.java#L257-L261
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/kafka/KafkaProperties.java#L485-L489
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/kafka/KafkaProperties.java#L775-L779
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicProperties.java#L37-L43
https://github.com/spring-projects/spring-boot/blob/689bce88d2832c730eb75ceeeb2adb8270e983a4/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/newrelic/NewRelicProperties.java#L45-L49
Comment From: wilkinsona
There are more places where we reference other properties that my previous search didn't find. For example, we have several where we use the fully-qualified name of the property when referencing it. The following are some of these:
https://github.com/spring-projects/spring-boot/blob/6aa5ed705a6b9e5bc4b08908024ff94a6615ff58/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/metrics/export/atlas/AtlasProperties.java#L81-L87
https://github.com/spring-projects/spring-boot/blob/6aa5ed705a6b9e5bc4b08908024ff94a6615ff58/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/endpoint/jmx/JmxEndpointProperties.java#L36-L39
https://github.com/spring-projects/spring-boot/blob/6aa5ed705a6b9e5bc4b08908024ff94a6615ff58/spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/web/server/ManagementServerProperties.java#L51-L55
Comment From: wilkinsona
We'd like to make them all consistent using the fully-qualified property name in each case. We also think it would be a good idea to wrap each property name in quotes, probably single quotes like 'management.server.port'.
Comment From: wilkinsona
This is impossible to do in its entirety without support in the annotation processor. For example, org.springframework.boot.autoconfigure.data.redis.RedisProperties.Pool is used by both org.springframework.boot.autoconfigure.data.redis.RedisProperties.Jedis and org.springframework.boot.autoconfigure.data.redis.RedisProperties.Lettuce and the fully-qualified name of the time-between-eviction-runs property that it references varies depending on the user.
I'm going to defer this until we can enhance the annotation processor to support automatically generating such cross-references. Such cross-references will allow us to support the case above while also hopefully allowing us to verify that the referenced property exists. I've opened https://github.com/spring-projects/spring-boot/issues/42981 which I now consider to be a prerequisite for this issue.