Currently, there are no restrictions on hand-editing config files,
mutable or not.

The rub is that any of the APIs that modify configs operate on their
in-memory copy and write that out (both Cloud and stand-alone modes).

So if I start Solr, the nodes have image of the configs at time T.
Now I hand-edit the file(s) and push then to ZooKeeper say at time T1
Now I use the API to update them at T2
At this point, my changes pushed at T1 are lost since the T2 changes
used the in-memory copies read at time T as a basis for mods.

If I change this even slightly by:
Start Solr at T
hand-edit and push at T1 _and reload my collection_
use the API at T2
At this point my configs have all the changes T1 and T2 in them since
the reload re-read the configs.

Ditto if I restart all my Solr instances after T1 but before T2.

That said, how this will change in the future I have no idea. I
usually hand-edit them but that's a personal problem.

IIRC, at one point, there was one restriction: A mutable schema could
_not_ be named schema.xml. But whether that's an accurate memory and
if so whether it's still current I'm not sure about.

And all of _that_ said, hand-editing mutable configs does, indeed,
violate all sorts of contracts and support may change in the future,
it's "at your own risk and you better know what you're doing". The
same could be said for hand-editing the configs in the first place
though I suppose ;)

Best,
Erick

On Sat, Jun 16, 2018 at 1:34 PM, Doug Turnbull
<dturnb...@opensourceconnections.com> wrote:
> I'm not sure changing something from mutable -> unmutable means it suddenly
> becomes hand-editable.
>
> I don't know the details here, but I can imagine a case that unmutable
> implies some level of consistency, where the file is hashed, and later
> might be confirmed to still be the same 'unmutable' state. Hand editing
> would violate that contract.
>
> One might also imagine a future where 'managed-schema' isn't a config file,
> and is just an API you use to configure a Solr. In this case 'mutable'
> doesn't imply anything about files, just the state of the Solr config.
>
> -Doug
>
> On Sat, Jun 16, 2018 at 12:24 AM S G <sg.online.em...@gmail.com> wrote:
>
>> Hi,
>>
>> As per
>>
>> https://lucene.apache.org/solr/guide/7_2/schema-factory-definition-in-solrconfig.html#SchemaFactoryDefinitioninSolrConfig-Classicschema.xml
>> ,
>> the only difference between schema.xml and managed-schema is that one
>> accepts schema-changes through an API while the other one does not.
>>
>> However, there is a flag "mutable" which can be used with managed-schema
>> too to turn dynamic-changes ON or OFF
>>
>> If that is true, then it means schema.xml does not offer anything which
>> managed-schema does not.
>>
>> Is that a valid statement to make?
>>
>> Infact, I see that schema.xml is not shipped anymore with Solr ?
>>
>> Thanks
>> SG
>>
> --
> CTO, OpenSource Connections
> Author, Relevant Search
> http://o19s.com/doug

Reply via email to