Description
Noticed while working on SOLR-10472, This is currently in CurrencyField ...
private void createDynamicCurrencyField(String suffix, FieldType type) { String name = "*" + POLY_FIELD_SEPARATOR + suffix; Map<String, String> props = new HashMap<>(); props.put("indexed", "true"); props.put("stored", "false"); props.put("multiValued", "false"); props.put("omitNorms", "true"); int p = SchemaField.calcProps(name, type, props); schema.registerDynamicFields(SchemaField.create(name, type, p, null)); } // ... @Override public void inform(IndexSchema schema) { this.schema = schema; createDynamicCurrencyField(FIELD_SUFFIX_CURRENCY, fieldTypeCurrency); createDynamicCurrencyField(FIELD_SUFFIX_AMOUNT_RAW, fieldTypeAmountRaw); }
...this code should probably be changed to use docValues by default – or at the very least use the indexed/docValues options from the original (user configured) CurrencyField when creating the underlying poly-fields. (although in this case we'll want to be careful to ensure that if it's docValues=true we should only end up with 2 sets of docValues – suffix_raw & suffix_currency – and not 3, including the original)
Attachments
Issue Links
- is related to
-
SOLR-10503 CurrencyField should be changed from TrieLongField to LongPointField for underlying raw-polyfield
- Resolved
-
SOLR-15358 CurrencyFieldType doesn't support docValues
- Open