+1 for xyz.[min|max] This is already mentioned in the Code Style Guideline [1].
Best, Jark [1]: https://flink.apache.org/contributing/code-style-and-quality-components.html#configuration-changes On Mon, 27 Apr 2020 at 21:33, Flavio Pompermaier <pomperma...@okkam.it> wrote: > +1 for Chesnay approach > > On Mon, Apr 27, 2020 at 2:31 PM Chesnay Schepler <ches...@apache.org> > wrote: > > > +1 for xyz.[min|max]; imo it becomes obvious if think of it like a yaml > > file: > > > > xyz: > > min: > > max: > > > > opposed to > > > > min-xyz: > > max-xyz: > > > > IIRC this would also be more in-line with the hierarchical scheme for > > config options we decided on months ago. > > > > On 27/04/2020 13:25, Xintong Song wrote: > > > +1 for Robert's idea about adding tests/tools checking the pattern of > new > > > configuration options, and migrate the old ones in release 2.0. > > > > > > Concerning the preferred pattern, I personally agree with Till's > > opinion. I > > > think 'xyz.[min|max]' somehow expresses that 'min' and 'max' are > > properties > > > of 'xyz', while 'xyz' may also have other properties. An example could > be > > > 'taskmanager.memory.network.[min|max|fraction]'. > > > > > > Thank you~ > > > > > > Xintong Song > > > > > > > > > > > > On Mon, Apr 27, 2020 at 6:00 PM Till Rohrmann <trohrm...@apache.org> > > wrote: > > > > > >> Hi everyone, > > >> > > >> as Robert said I think the problem is that we don't have strict > > guidelines > > >> and every committer follows his/her personal taste. I'm actually not > > sure > > >> whether we can define bullet-proof guidelines but we can definitely > > >> make them more concrete. > > >> > > >> In this case here, I have to admit that I have an opposing > > opinion/taste. I > > >> think it would be better to use xyz.min and xyz.max. The reason is > that > > we > > >> configure a property of xyz which consists of the minimum and maximum > > >> value. Differently said, min and max belong semantically together and > > hence > > >> should be defined together. You can think of it as if the type of the > > xyz > > >> config option would be a tuple of two integers instead of two > individual > > >> integers. > > >> > > >> A comment concerning the existing styles of config options: I think > > many of > > >> the config options which follow the max-xzy pattern are actually older > > >> configuration options. > > >> > > >> Cheers, > > >> Till > > >> > > >> On Mon, Apr 27, 2020 at 10:34 AM Robert Metzger <rmetz...@apache.org> > > >> wrote: > > >> > > >>> Thanks for starting this discussion. > > >>> I believe the different options are a lot about personal taste, there > > are > > >>> no objective arguments why one option is better than the other. > > >>> > > >>> I agree with your proposal to simply go with the "max-xyz" pattern, > as > > >> this > > >>> is the style of the majority of the current configuration options in > > >> Flink > > >>> (maybe this also means it is the taste of the majority of Flink > > >>> developers?). > > >>> > > >>> I would propose to add a test or some tooling that checks that all > new > > >>> configuration parameters follow this pattern, as well as tickets for > > >> Flink > > >>> 2.0 to migrate the "wrong" configuration options. > > >>> > > >>> > > >>> > > >>> On Wed, Apr 22, 2020 at 5:47 AM Yangze Guo <karma...@gmail.com> > wrote: > > >>> > > >>>> Hi, everyone, > > >>>> > > >>>> I'm working on FLINK-16605 Add max limitation to the total number of > > >>>> slots[1]. In the PR, I, Gary and Xintong has a discussion[2] about > the > > >>>> config option of this limit. > > >>>> The central question is whether the "max" should be part of the > > >>>> hierarchy or part of the property itself. > > >>>> > > >>>> It means there could be two patterns: > > >>>> - max-xyz > > >>>> - xyz.max > > >>>> > > >>>> Currently, there is no clear consensus on which style is better and > we > > >>>> could find both patterns in the current Flink. Here, I'd like to > first > > >>>> sort out[3]: > > >>>> > > >>>> Config options follow the "max-xyz" pattern: > > >>>> - restart-strategy.failure-rate.max-failures-per-interval > > >>>> - yarn.maximum-failed-containers > > >>>> - state.backend.rocksdb.compaction.level.max-size-level-base > > >>>> - cluster.registration.max-timeout > > >>>> - high-availability.zookeeper.client.max-retry-attempts > > >>>> - rest.client.max-content-length > > >>>> - rest.retry.max-attempts > > >>>> - rest.server.max-content-length > > >>>> - jobstore.max-capacity > > >>>> - taskmanager.registration.max-backoff > > >>>> - compiler.delimited-informat.max-line-samples > > >>>> - compiler.delimited-informat.min-line-samples > > >>>> - compiler.delimited-informat.max-sample-len > > >>>> - taskmanager.runtime.max-fan > > >>>> - pipeline.max-parallelism > > >>>> - execution.checkpointing.max-concurrent-checkpoint > > >>>> - execution.checkpointing.min-pause > > >>>> > > >>>> Config options follow the "xyz.max" pattern: > > >>>> - taskmanager.memory.jvm-overhead.max > > >>>> - taskmanager.memory.jvm-overhead.min > > >>>> - taskmanager.memory.network.max > > >>>> - taskmanager.memory.network.min > > >>>> - taskmanager.network.request-backoff.max > > >>>> - env.log.max > > >>>> > > >>>> Config options do not follow the above two patterns: > > >>>> - akka.client-socket-worker-pool.pool-size-max > > >>>> - akka.client-socket-worker-pool.pool-size-min > > >>>> - akka.fork-join-executor.parallelism-max > > >>>> - akka.fork-join-executor.parallelism-min > > >>>> - akka.server-socket-worker-pool.pool-size-max > > >>>> - akka.server-socket-worker-pool.pool-size-min > > >>>> - containerized.heap-cutoff-min > > >>>> - blob.offload.minsize > > >>>> > > >>>> It seems more config options follow the "max-xyz" pattern. From my > > >>>> side, I do not have a strong preference. But it probably make sense > to > > >>>> follow one of them in Flink. > > >>>> If we decide to make it a naming convention and align all config > > >>>> options to it, I prefer to follow the "max-xyz" pattern to minimize > > >>>> the infect to user. > > >>>> > > >>>> Looking forward to your feedback! > > >>>> > > >>>> [1] https://issues.apache.org/jira/browse/FLINK-16605 > > >>>> [2] > https://github.com/apache/flink/pull/11615#discussion_r412316648 > > >>>> [3] > > >>>> > > >> > > > https://ci.apache.org/projects/flink/flink-docs-release-1.10/ops/config.html > > >>>> Best, > > >>>> Yangze Guo > > >>>> > > >