[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14992063#comment-14992063 ] ASF GitHub Bot commented on KAFKA-2702: --- Github user granthenke closed the pull request at: https://github.com/apache/kafka/pull/379 > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14992064#comment-14992064 ] ASF GitHub Bot commented on KAFKA-2702: --- GitHub user granthenke reopened a pull request: https://github.com/apache/kafka/pull/379 KAFKA-2702: ConfigDef toHtmlTable() sorts in a way that is a bit conf… …using You can merge this pull request into a Git repository by running: $ git pull https://github.com/granthenke/kafka config-html Alternatively you can review and apply these changes as the patch at: https://github.com/apache/kafka/pull/379.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #379 commit bc17f6b923f63891c1c36c531b525783df834e42 Author: Grant HenkeDate: 2015-10-29T03:49:24Z KAFKA-2702: ConfigDef toHtmlTable() sorts in a way that is a bit confusing > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14992387#comment-14992387 ] Grant Henke commented on KAFKA-2702: I have updated the pull request based on all discussion above. Your reviews and feedback are greatly appreciated. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14992957#comment-14992957 ] ASF GitHub Bot commented on KAFKA-2702: --- Github user asfgit closed the pull request at: https://github.com/apache/kafka/pull/379 > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14988504#comment-14988504 ] Grant Henke commented on KAFKA-2702: Thanks for all the input [~jkreps][~gwenshap][~abiletskyi][~ijuma][~junrao] I have updated the PR removing the required field and changing all instances of non-required field to default to null. I also uploaded a v2 sample output to this jira. Most notably defaults of "" and null are now output and I added a "valid values" column. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14988635#comment-14988635 ] Jason Gustafson commented on KAFKA-2702: I think it's only required if the user is using group management. We throw a runtime error if you try to join a group with an empty groupId. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14988628#comment-14988628 ] Gwen Shapira commented on KAFKA-2702: - Not 100% related to this patch, but I thought group.id is required (for consumer). Looks like the default is "" now? [~hachikuji]? > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14989036#comment-14989036 ] Grant Henke commented on KAFKA-2702: [~gwenshap] There was no default for group.id in KAFKA-1328. It was changed to "" in KAFKA-1760. It looks like it was required in the old consumer. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After-v2.html, ConsumerConfig-After.html, > ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14986744#comment-14986744 ] Jun Rao commented on KAFKA-2702: [~granthenke], we can probably do the following. 1. Remove the required field. 2. Change all instances of non-required field to default to null. 3. Allow null as a default value. 4. Print the null default value properly in html output. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14986371#comment-14986371 ] Grant Henke commented on KAFKA-2702: [~ijuma] I agree. This would be fairly simple in Scala, as Option is a commonly used concept and transparently handles null/empty-string/empty-list well. However, In java its not so common. There are going to be a lot of null defaults with this change (Its not new, it just was less obvious before with the required parameter) and thats not great either. A default of null is not currently allowed. See ConfigDefTest.testNullDefault. At first look that seams like the best approach. Especially to avoid NPEs. But without null or some sort of Option type, how do I represent a default of "unset" for types like Integer or Long? I suspect this is why required was added. Should I allow null defaults with this change? > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14982679#comment-14982679 ] Andrii Biletskyi commented on KAFKA-2702: - It's been a while, but, yes, as far as I remember I added required field because not all configs had default values and we couldn't instantiate Config unless all settings have their value - the default one, or the one came from the user (config file). > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14982636#comment-14982636 ] Grant Henke commented on KAFKA-2702: [~gwenshap] Yeah, there is definitely some config cleanup needed. This is for similar reason to what [~jkreps] was saying: {quote} Originally the presence or absence of a default indicated whether something was required {quote} Before doing that I want to be sure we agree on the approach. Should we: A. Keep the required field, adjust the sort, and cleanup configs. B. Remove the required field, and cleanup configs adding defaults where needed. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14983248#comment-14983248 ] Ismael Juma commented on KAFKA-2702: For SSL and SASL configs, a default of null can be used for all optional configs to fit within the original design of the library. Personally, I'd prefer if the library supported optional types in a way where one could leverage the type system (ie Option and Optional), but that's a bigger change and needs to be carefully considered. Relying on each config to follow a convention in order to choose the right default for the optional value for a given type is error-prone and leads to inconsistencies (-1, null, empty list, false, etc.). > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14983215#comment-14983215 ] Gwen Shapira commented on KAFKA-2702: - I'd prefer B, and I think that both Jay and you mentioned the same - the "required" field is not needed and just adds confusion. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14980817#comment-14980817 ] Grant Henke commented on KAFKA-2702: [~jkreps] You are right, that _required_ was added in [KAFKA-1845|https://issues.apache.org/jira/browse/KAFKA-1845]. The addition was not discussed in the jira or [patch reviews|https://reviews.apache.org/r/30126/]. [~abiletskyi] do you have an insight? I do like the idea of explicitly providing a good default for any optional argument in the configuration definition. But I don't have too strong of a feeling either way. If we do revert the addition of _required_, the newly added SSL and Kerberos configs look like they might need to be reviewed/updated. They leverage _required=false_ quite a bit. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14981631#comment-14981631 ] Gwen Shapira commented on KAFKA-2702: - This needs some cleanup - because required=true is the default, there are tons of stuff where required=true that make no sense (either because they have defaults or are not required). > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979782#comment-14979782 ] Jay Kreps commented on KAFKA-2702: -- Originally the presence or absence of a default indicated whether something was required--i.e. *all* fields are required to have a value but you can provide a default. Looks like later someone wanted to make a separate variable for whether it was required (not sure why) and they decided that if there was no default they would just fill in null as the default. But this change doesn't seem to have been fully carried out. The original approach was actually done that way on purpose. In the new approach setting a config to non-required field seems to be a duplicative way of saying a config with a default value of null, which you could already do. But null is actually not always a very good default value to set so having people explicitly give the default for non-required fields is probably good. For example what happens if I have a non-required int config with no default and I do something like int myValue = config.getInt(MYCONFIGNAME); I think I will get a null pointer. I think this happened in KAFKA-1845 so it might be good to figure out what the intention was in the change, probably there was some issue this fixed... > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979786#comment-14979786 ] Jay Kreps commented on KAFKA-2702: -- Also note that the check against NO_DEFAULT_VALUE isn't a check against the empty string it is a check against being the object named NO_DEFAULT_VALUE (i.e. reference equality vs object equality). That object happens to be an empty string so it prints out as nothing but that doesn't make it equal to other empty strings for the purpose of determining if there is a default or not. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979754#comment-14979754 ] ASF GitHub Bot commented on KAFKA-2702: --- GitHub user granthenke opened a pull request: https://github.com/apache/kafka/pull/379 KAFKA-2702: ConfigDef toHtmlTable() sorts in a way that is a bit conf… …using You can merge this pull request into a Git repository by running: $ git pull https://github.com/granthenke/kafka config-html Alternatively you can review and apply these changes as the patch at: https://github.com/apache/kafka/pull/379.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #379 commit 257655b3b5a6f0a374332c6d403bbcc117844117 Author: Grant HenkeDate: 2015-10-29T03:49:24Z KAFKA-2702: ConfigDef toHtmlTable() sorts in a way that is a bit confusing > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979753#comment-14979753 ] Grant Henke commented on KAFKA-2702: Looking into this a bit more... {quote} Try printing ConsumerConfig parameters and see the mandatory group.id show up as #15. {quote} There is an issue in ConfigDef where _NO_DEFAULT_VALUE = new String("")_, however an empty string is actually a valid default value. Later on in the html output, there is also an issue where null is interpreted as NO_DEFAULT_VALUE. Null could also be a valid default. This may also be an html output issue. If there is a default, its just empty string (""), maybe we should print that. Many of the string parameters have a default of "". {quote} or perhaps adding a "REQUIRED" category that gets printed first no matter {quote} There is a "required" field in ConfigKey. Adding that as a column to the table is a good idea. {quote} Aren't things without default required? {quote} There are many optional parameters that don't have a default, but are not required. Especially with the addition of many of the SSL parameters. I think what we are looking for it prioritizing parameters that are required and have no default. I will submit a patch, fixing the issues mentioned above and adjusting the sort with that change, and we can discuss if its actually an improvement over what exists. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979802#comment-14979802 ] Grant Henke commented on KAFKA-2702: [~jkreps] Good point. I was in Scala mode. I reverted the NO_DEFAULT_VALUE change. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira >Assignee: Grant Henke > Attachments: ConsumerConfig-After.html, ConsumerConfig-Before.html > > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979461#comment-14979461 ] Grant Henke commented on KAFKA-2702: I can take this one if you are not planning to work on it Gwen. > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (KAFKA-2702) ConfigDef toHtmlTable() sorts in a way that is a bit confusing
[ https://issues.apache.org/jira/browse/KAFKA-2702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14979554#comment-14979554 ] Jay Kreps commented on KAFKA-2702: -- Aren't things without default required? That rationale for that order was that effectively any required parameter is kind of it's own "essential" level of importance > ConfigDef toHtmlTable() sorts in a way that is a bit confusing > -- > > Key: KAFKA-2702 > URL: https://issues.apache.org/jira/browse/KAFKA-2702 > Project: Kafka > Issue Type: Bug >Reporter: Gwen Shapira > > Because we put everything without default first (without prioritizing), > critical parameters get placed below low priority ones when they both have > no defaults. Some parameters are without default and optional (SASL server in > ConsumerConfig for instance). > Try printing ConsumerConfig parameters and see the mandatory group.id show up > as #15. > I suggest sorting the no-default parameters by priority as well, or perhaps > adding a "REQUIRED" category that gets printed first no matter what. -- This message was sent by Atlassian JIRA (v6.3.4#6332)