Yes exactly -- would be really cool!

For example, imagine if the V2 API for this was
here: /api/c/collection-name/config/files and you could HTTP PUT
config/files/synonyms.txt
And furthermore GET of files or listings would present the overlaid view.

This is all wishful thinking of course; it's some serious work to totally
complete the vision.  If you (or your colleagues, etc.) are interested in
pursuing this, I could help define the work.

On Wed, Jan 8, 2025 at 9:12 AM Colvin Cowie <colvin.cowie....@gmail.com>
wrote:

>  I'm not entirely familiar with that "auto-created" configSet, but I think
> I see what you mean. If your configuration is all within a collection
> specific overlay you wouldn't even need to delete a config set, you would
> just delete the collection (or possibly the overlay), so would entirely
> avoid the loop in
>
> https://github.com/apache/solr/blob/388101fc84140c0bdc50706637bcc5df11908ca6/solr/core/src/java/org/apache/solr/cloud/ConfigSetCmds.java#L186-L197
>
> I can see an overlay being a useful general solution that adds value within
> Solr and externally too
>
>    - stored under the collection
>       - included in backup and restore
>       - deleted when you delete the collection
>       - allows you to make collection specific modifications to override
>    common config - within reason - while still receiving updates to the
> common
>    parts.
>       - changing the entire content of a znode would be okay
>       - "hiding/deleting" a znode (or its children) from the common config
>       would be more complicated / harder to reason about, and probably
> isn't
>       generally necessary?
>       - an API that looks something like the existing configset API (with
>    read operations)
>
>
> On Tue, 7 Jan 2025 at 17:20, David Smiley <dsmi...@apache.org> wrote:
>
> > If we were to pursue my proposal, it'd mean that the auto-created
> configSet
> > thing (creating a mutable configSet from an immutable template) could go
> > away, which is a source of some complexity and scale concerns (loops all
> > collections when certain configSets get deleted).
> >
> > On Tue, Jan 7, 2025 at 10:33 AM David Smiley <dsmi...@apache.org> wrote:
> >
> > > Where I work, we've used collection properties (collectionprops.json)
> to
> > > store collection specific synonyms & query-elevation configuration.  We
> > > have custom plugins for those features to read/expire this information
> in
> > > addition to implementing other custom requirements.  It's somewhat of a
> > > hack but it works while being rather lean implementation-wise as it
> uses
> > an
> > > existing mechanism.
> > >
> > > It'd be interesting if a collection could have a configset overlay as a
> > > general feature and for modifying anything.  It'd be stored inside a
> > > collection's ZK node tree.  SolrResourceLoader would overlay this with
> > the
> > > backing (ConfigSet) source.
> > >
> >
>

Reply via email to