[EMAIL PROTECTED] wrote:
Quoting Ryan McKinley <[EMAIL PROTECTED]>:


The way we plan to use Solr together with a Content Management System is that the authors/editors can create new article/document types when needed, without any need to restart anything.

Do you really need to change the schema?  Your CMS will transform from
blog software to invoice tracking to forum without restarting?

Well, it will not transform in that way :)
But new article/document types gets created every once in a while. And the CMS in itself has no restart-requirements before they can be used. The only limitation we have is that new or updated presentation jsp pages needs to be transfered to the live server, and this is done by the build (and that involves a tomcat restart). But sometimes we have no need to add/update jsp files, but we still want to input content based on new or updated article types, and index them, without restarting. And we also want to be able to modify existing article types, so that the fields gets indexed in a different way maybe, and reindex all articles/documents while people still can do searches on the site.

With
clever use of dynamic fields this should be possible too.

Is that true also for changes made on how a specific field should be indexed? The wiki example is:
 <dynamicField name="*_i"  type="integer"  indexed="true"  stored="true"/>

What if we want to change this from stored="true" to stored="false" or something similar, without renaming the field?

But I must say, that in general I consider type information in the name to be ugly design. What if we have a number field myNumber that we first define as an int (or sint, to use solr semantics), and we call that myNumber_i in solr? If we later feel that we should change this to be a slong, then we need to change the name of the field to nyNumber_f.


In general, you need to be very careful when you change the schema without reindexing. Many changes will break all search, some may be just fine.

for example, if you change sint to slong anything already indexed as an "sint" will be incompatible with the current settings. Likewise, if you change the "stored" settings, it will only change thing for the incoming documents.

I'm not saying its impossible -- it is just something you need to be very careful with because a seemingly simple change can break a lot of things (until you reinidex)

That said -- with the MultiCore stuff and SOLR-139, it is possible to build a system that can be dynamically updated and managed.

ryan

Reply via email to