[ 
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]

Reply via email to