[
https://issues.apache.org/jira/browse/SOLR-17047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris M. Hostetter updated SOLR-17047:
--------------------------------------
Description:
{{{}SolrCore{}}}'s logic for initializing a {{CodecFactory}} includes some
validation that (in psuedo-code) looks like:
{noformat}
if factory is not instanceof SolrCoreAware:
loop over all FieldTypes in schema:
if fieldtype has configured postings format: throw error
if fieldtype has configured docValues format: throw error
{noformat}
..essentially: "If the codec can't do it's own validation of how the fieldtypes
are configured, sanity check what we know can be configured."
But this validation does not include the configurability of
{{KnnVectorsFormat}} options in {{DenseVectorField}} – these are only validated
by {{SchemaCodecFactory}} {_}if it's configured{_}.
Even within {{{}SchemaCodecFactory{}}}, these per-fieldtype KNN options are
only validated "on use" – not on initialization.
----
One way or another, attempting to configure {{DenseVectorField}} w/options that
require {{SchemaCodecFactory}} should fail (on SolrCore init) unless
{{SchemaCodecFactory}} is in use and those options are valid.
was:
{{SolrCore}}'s logic for initializing a {{CodecFactory}} includes some
validation that (in psuedo-code) looks like:
{noformat}
if factory is not instanceof SolrCoreAware:
loop over all FieldTypes in schema:
if fieldtype has configured postings format: throw error
if fieldtype has configured docValues format: throw error
{noformat}
..essentially: "If the codec can't do it's own validation of how the fieldtypes
are configured, sanity check what we know can be configured."
But this validation does not include the configurability of
{{KnnVectorsFormat}} options in {{DenseVectorField}} -- these are only
validated by {{SchemaCodecFactory}} _if it's configured_.
Even within {{SchemaCodecFactory}}, these per-fieldtype KNN options are only
validated "on use" -- not on initialization.
----
One way or another, attempting to configure {{DenseVectorField}} w/options that
require {{SchemaCodecFactory}} should fail unless {{SchemaCodecFactory}} is in
use.
> (SolrCore's) CodecFactory validation ignores schema based KnnVectorsFormat
> options on init
> ------------------------------------------------------------------------------------------
>
> Key: SOLR-17047
> URL: https://issues.apache.org/jira/browse/SOLR-17047
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Reporter: Chris M. Hostetter
> Priority: Major
>
> {{{}SolrCore{}}}'s logic for initializing a {{CodecFactory}} includes some
> validation that (in psuedo-code) looks like:
> {noformat}
> if factory is not instanceof SolrCoreAware:
> loop over all FieldTypes in schema:
> if fieldtype has configured postings format: throw error
> if fieldtype has configured docValues format: throw error
> {noformat}
> ..essentially: "If the codec can't do it's own validation of how the
> fieldtypes are configured, sanity check what we know can be configured."
> But this validation does not include the configurability of
> {{KnnVectorsFormat}} options in {{DenseVectorField}} – these are only
> validated by {{SchemaCodecFactory}} {_}if it's configured{_}.
> Even within {{{}SchemaCodecFactory{}}}, these per-fieldtype KNN options are
> only validated "on use" – not on initialization.
> ----
> One way or another, attempting to configure {{DenseVectorField}} w/options
> that require {{SchemaCodecFactory}} should fail (on SolrCore init) unless
> {{SchemaCodecFactory}} is in use and those options are valid.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]