[
https://issues.apache.org/jira/browse/SOLR-5580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13859828#comment-13859828
]
Noble Paul commented on SOLR-5580:
----------------------------------
I think, the core of the issue is whether to have an option of removing a core
from the cluster without touching to the node itself?
If that option can be provided can it be implemented without introducing
backward compatibility issues?
I believe , in a reasonably big cluster, nobody would want to deal with
individual nodes to manage the cluster . So , they would like to go through the
API to achieve almost everything. Do we wish to introduce a new mode for these
things? Or do we want it to be the default mode?
If we can implement the new mode without breaking existing features , do we
need to introduce a new mode? the reason I'm asking these questions is because
users tend to use the default mode assuming that is the best. a new mode is
always a problem because that is kind of forking the system. That will be a
support nightmare
Before getting into Implementation details , we need to build consensus on
these things first .
> SOLR-5311 was done without full understanding of the system and must be
> reverted.
> ---------------------------------------------------------------------------------
>
> Key: SOLR-5580
> URL: https://issues.apache.org/jira/browse/SOLR-5580
> Project: Solr
> Issue Type: Bug
> Affects Versions: 4.6
> Environment: OS:Red Hat Enterprise Linux Server release 6.4 (Santiago)
> Software:solr 4.6,
> jdk:OpenJDK Runtime Environment (rhel-2.3.4.1.el6_3-x86_64)
> OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode)
> Reporter: YouPeng Yang
> Assignee: Mark Miller
> Labels: core
> Fix For: 5.0, 4.7, 4.6.1
>
> Original Estimate: 0.5h
> Remaining Estimate: 0.5h
>
> In class org.apache.solr.cloud.Overseer the Line 360:
> ---------------------------------------------------------------------
> if (sliceName !=null && collectionExists &&
> !"true".equals(state.getCollection(collection).getStr("autoCreated"))) {
> Slice slice = state.getSlice(collection, sliceName);
> if (slice.getReplica(coreNodeName) == null) {
> log.info("core_deleted . Just return");
> return state;
> }
> }
> ---------------------------------------------------------------------
> the slice needs to be checked null .because when create a new core with both
> explicite shard and coreNodeName, the state.getSlice(collection, sliceName)
> may return a null.So it needs to be checked ,or there will be an
> NullpointException
> ---------------------------------------------------------------------
> if (sliceName !=null && collectionExists &&
> !"true".equals(state.getCollection(collection).getStr("autoCreated"))) {
> Slice slice = state.getSlice(collection, sliceName);
> if (slice != null && slice.getReplica(coreNodeName) == null) {
> log.info("core_deleted . Just return");
> return state;
> }
> }
> ---------------------------------------------------------------------
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]