Hi all, I have an enumField called severity. these are its relevant definitions in schema.xml: <field name="severity" type="severityType" indexed="true" stored="true" docValues="true" default="0"/> <fieldType name="severityType" class="solr.EnumField" enumsConfig="enumsConfig.xml" enumName="severity"/> <copyField source="severity" dest="text"/>
And in enumsConfig.xml: <enum name="severity"> <value>Not Available</value> <value>Low</value> <value>Medium</value> <value>High</value> <value>Critical</value> </enum> The default field for free text search is text. An enum field can be sent with its integer value or with its string value, and the value will stored and indexed as integer and displayed as string. When severity is sent with "Not Available", there will be matches for the free text search of "Not Available". When severity is sent with "0" (the integer equivalent of " Not Available"), there will be no matches for the free text search of "Not Available". In order to enable it, the following change should be made in DocumentBuilder: Instead of: // Perhaps trim the length of a copy field Object val = v; The code will be: // Perhaps trim the length of a copy field Object val = sfield.getType().toExternal(sfield.createField(v, 1.0f)); Am I right? It seems to work. I think this change is suitable for all field types. What do you think? But when no value is sent with severity, and the default of 0 is used, the fix doesn't seem to work. How can I make it work also for default values? Thanks.