Hi Lance, On 12/11/09 9:08 PM, "Lance Norskog" <goks...@gmail.com> wrote:
> There are already components (ExtractingRequestHandler, Deduplication) > that secretly add fields which violate the schema. Personally I would > nuke this ability; I've had major problems with junk in the indexed > data and discovering secret fields would have made my head explode > that much louder. Yep, I agree. I originally felt that dynamic fields weren't the way to go, but I came around and ended up thinking they are the way to go for this. However, even though I think dynamic fields should be used for poly fields, I _also_ think they should be pre-declared in the schema -- and not secretly (as you put it) added at runtime (hence my mentioning of "drift"). It seems that Hoss was for this as well: http://www.lucidimagination.com/search/document/7f8ed6212481aca6/solr_1131_m ultiple_fields_per_field_type and I think he's right, though I remember going back and forth with him (and others) about it in the beginning. The thing people have to realize here is that there are 2 notions: 1. schema.xml -- edited by a user, offline before SOLR has started up, loaded at runtime and turned into... 2. an IndexSchema instance, a Java object instance used to access the schema.xml file loaded into a JVM. IndexSchema acts as a runtime model to the underlying SOLR field typing system. If #1 and #2 fall out of sync (which creating _any_ type of field in #2 does, without informing #1), then you have "drift". Cheers, Chris ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Chris Mattmann, Ph.D. Senior Computer Scientist NASA Jet Propulsion Laboratory Pasadena, CA 91109 USA Office: 171-266B, Mailstop: 171-246 Email: chris.mattm...@jpl.nasa.gov WWW: http://sunset.usc.edu/~mattmann/ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Adjunct Assistant Professor, Computer Science Department University of Southern California, Los Angeles, CA 90089 USA ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++