I opened https://issues.apache.org/jira/browse/SOLR-7385

On Mon, Apr 13, 2015 at 8:08 PM, Shai Erera <[email protected]> wrote:

> Thanks Shalin, don't know how did I miss it :). I see that besides just
> reading the configuration name, it also checks that it exists which is nice.
>
> We should add this information to the cluster status API
>>
>
> +1!
>
> Shai
>
> On Mon, Apr 13, 2015 at 5:08 PM, Shalin Shekhar Mangar <
> [email protected]> wrote:
>
>> You can use the oddly named ZkStateReader.readConfigName(String
>> Collection) to get this information. We should add this information to the
>> cluster status API.
>>
>> On Mon, Apr 13, 2015 at 6:58 PM, Shai Erera <[email protected]> wrote:
>>
>>> Hi
>>>
>>> I was looking for some API (Java or REST) for retrieving the
>>> configuration name with which a collection was created. It doesn't appear
>>> as part of the cluster status information, nor is part of the DocCollection
>>> class.
>>>
>>> I eventually wrote this code:
>>>
>>>   /** Returns a collection's configuration name, or {@code null} if the
>>> collection doesn't exist. */
>>>   public static String getCollectionConfigName(ZkStateReader
>>> zkStateReader, String collection) {
>>>     try {
>>>       final String collectionZkNode = ZkStateReader.COLLECTIONS_ZKNODE +
>>> "/" + collection;
>>>       final byte[] data =
>>> zkStateReader.getZkClient().getData(collectionZkNode, null, null, true);
>>>       final ZkNodeProps nodeProps = ZkNodeProps.load(data);
>>>       final String collectionConfigName =
>>> nodeProps.getStr(ZkStateReader.CONFIGNAME_PROP);
>>>       return collectionConfigName;
>>>     } catch (NoNodeException e) {
>>>       return null;
>>>     } catch (KeeperException | InterruptedException e) {
>>>       throw Throwables.propagate(e);
>>>     }
>>>   }
>>>
>>> This works but feels "hacky" as none of this is documented anywhere. So
>>> if anyone is aware of an existing class/method which does that, even if
>>> it's not truly "public API", I'd appreciate a pointer.
>>>
>>> Also, would it make sense to add this information to DocCollection, e.g.
>>> docCollection.getConfigName()?
>>>
>>> Shai
>>>
>>
>>
>>
>> --
>> Regards,
>> Shalin Shekhar Mangar.
>>
>
>


-- 
Regards,
Shalin Shekhar Mangar.

Reply via email to