[
https://issues.apache.org/jira/browse/SOLR-18553?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18132691#comment-18132691
]
Nick Shanin edited comment on SOLR-18553 at 10/27/26, 4:29 AM:
---------------------------------------------------------------
I went through the v2 endpoint interfaces and the v1 handler parameters at
apache/solr main {{e59ce3c97d}} for plurality and naming consistency. The v1
handlers were included because the "detail" family is spelled differently there
too.
Plurality and naming:
* The same role, "include more, toggled by a parameter", is named three ways.
v2 uses {{detailed}} on collection listing
([ListCollectionsApi.java:37|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/ListCollectionsApi.java#L37]).
v2 uses the {{xxxInfo}} suffix elsewhere: {{coreInfo}}, {{fieldInfo}},
{{sizeInfo}}, {{indexInfo}}
([SegmentsApi.java:57|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/SegmentsApi.java#L57],
[CoreApis.java:44|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/CoreApis.java#L44]).
v1 uses {{detail}} on the ZooKeeper info handler
([ZookeeperInfoHandler.java:76|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/core/src/java/org/apache/solr/handler/admin/ZookeeperInfoHandler.java#L76])
and {{command=details}} on replication
([ReplicationHandler.java:1713|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java#L1713]).
* The same concept has two path names: {{/schema-designer/configs}}
([SchemaDesignerApi.java:121|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/SchemaDesignerApi.java#L121])
and {{/configsets}}
([ConfigsetsApi.java:46|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/ConfigsetsApi.java#L46]).
Both list configSets.
* SOLR-16396 already pluralised the full-config section keys in commit
d5a17012b2 ([SOLR-16396](https://issues.apache.org/jira/browse/SOLR-16396)), so
some plural forms in config paths are decided there.
Consistency:
* The path parameter for a collection is {{collName}} on 10 sites in 5 files
and {{collectionName}} on 14 sites in 12 files
([CollectionPropertyApi.java:31|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/CollectionPropertyApi.java#L31]
against
[CollectionStatusApi.java:33|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/CollectionStatusApi.java#L33]).
SOLR-16396's desired-form table uses {{collName}} throughout, which goes
against the majority spelling here, so the two should be reconciled before any
rename.
* camelCase segment {{/purgeUnused}}
([DeleteCollectionBackupApi.java:66|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/DeleteCollectionBackupApi.java#L66]),
where the other multi-word segments are lowercase or hyphenated.
* Removed from the list: {{/requestHandlers}}. The code marks it as
intentional: request-handler names contain {{/}}, so they cannot be a path
parameter
([ConfigApi.java:73-74|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/ConfigApi.java#L73-L74]),
and SOLR-16396 specifies that path in its table.
SOLR-16396 also lists v2 paths that are not on main yet, such as
{{/searchcomponents}}, {{/queryresponsewriters}} and {{/userproperties}}. Any
rename of those belongs to SOLR-16396, not this ticket.
Not flagged: the {{/node/...}} singular paths against {{/cluster/nodes}}, which
read as singleton against collection.
Eric, you co-authored the SOLR-16396 config work. Which name should the
collection path parameter use, {{collName}} as in SOLR-16396's table, or
{{collectionName}} as the majority here? The two v1 spellings ({{detail}} and
{{command=details}}) are new in this version. Should they be in scope for this
ticket, or handled separately?
Possible states for the ticket: close it once the v2 renames outside SOLR-16396
land; close it once the v1 names are in scope too; or keep it open for a wider
v1 and v2 naming decision. The recommendation is the first: the v2 items
outside SOLR-16396 are mechanical, and the v1 names are public and need their
own decision.
🤖 _AI text above_ 🤖 _(reviewed by Nick Shanin)_
was (Author: JIRAUSER314749):
I went through the v2 endpoint interfaces and the v1 handler parameters at
apache/solr main {{e59ce3c97d}} for plurality and naming consistency. The v1
handlers were included because the "detail" family is spelled differently there
too.
Plurality and naming:
* The same role, "include more, toggled by a parameter", is named three ways.
v2 uses {{detailed}} on collection listing
([ListCollectionsApi.java:37|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/ListCollectionsApi.java#L37]).
v2 uses the {{xxxInfo}} suffix elsewhere: {{coreInfo}}, {{fieldInfo}},
{{sizeInfo}}, {{indexInfo}}
([SegmentsApi.java:57|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/SegmentsApi.java#L57],
[CoreApis.java:44|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/CoreApis.java#L44]).
v1 uses {{detail}} on the ZooKeeper info handler
([ZookeeperInfoHandler.java:76|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/core/src/java/org/apache/solr/handler/admin/ZookeeperInfoHandler.java#L76])
and {{command=details}} on replication
([ReplicationHandler.java:1713|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java#L1713]).
* The same concept has two path names: {{/schema-designer/configs}}
([SchemaDesignerApi.java:121|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/SchemaDesignerApi.java#L121])
and {{/configsets}}
([ConfigsetsApi.java:46|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/ConfigsetsApi.java#L46]).
Both list configSets.
Consistency:
* The path parameter for a collection is {{collName}} on 10 sites in 5 files
and {{collectionName}} on 14 sites in 12 files
([CollectionPropertyApi.java:31|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/CollectionPropertyApi.java#L31]
against
[CollectionStatusApi.java:33|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/CollectionStatusApi.java#L33]).
* camelCase segments {{/purgeUnused}}
([DeleteCollectionBackupApi.java:66|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/DeleteCollectionBackupApi.java#L66])
and {{/requestHandlers}}
([ConfigApi.java:76|https://github.com/apache/solr/blob/e59ce3c97ddbe030eafadf0623fdcd80c4529c31/solr/api/src/java/org/apache/solr/client/api/endpoint/ConfigApi.java#L76]),
where the other multi-word segments are lowercase or hyphenated.
Not flagged: the {{/node/...}} singular paths against {{/cluster/nodes}}, which
read as singleton against collection.
Eric, does this list meet the bar you had in mind for the ticket? The two v1
spellings ({{detail}} and {{command=details}}) are new in this version. Should
they be in scope for this ticket, or handled separately?
Possible states for the ticket: close it once the two renames for the v2 names
land; close it once the v1 names are in scope too; or keep it open for a wider
v1 and v2 naming decision. The recommendation is the first: the v2 items are
mechanical, and the v1 names are public and need their own decision.
🤖 _AI text above_ 🤖 _(reviewed by Nick Shanin)_
> Review params and path segments for plurality and consistency
> -------------------------------------------------------------
>
> Key: SOLR-18553
> URL: https://issues.apache.org/jira/browse/SOLR-18553
> Project: Solr
> Issue Type: Sub-task
> Components: v2 API
> Reporter: Eric Pugh
> Priority: Major
>
> There has been discussion about naming, such as "detailed" and "details". We
> have places that maybe should be plural.
> Â
> See what David put together:
> https://github.com/apache/solr/pull/5064#discussion_r4230690636
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]