Every schema.xml element that will not load, or behaves differently, on a current Solr version, with what replaces it.
Every cell below is something that will break if you carry it forward unchanged. PointFields are not a drop-in for TrieFields — the analyzer disappears, the term encoding is different, and docValues="true" is required if you want to facet, sort, or group.
Old (Solr 5.x — 7.x) → New (Solr 8.x / 9.x)
Side-by-side example of the most common conversions:
<!-- BEFORE: Solr 5.x / 6.x / 7.x schema.xml --> <fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap="0"/> <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/> <fieldType name="float" class="solr.TrieFloatField" precisionStep="0" positionIncrementGap="0"/> <fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" positionIncrementGap="0"/> <fieldType name="date" class="solr.TrieDateField" precisionStep="0" positionIncrementGap="0"/> <fieldType name="location" class="solr.LatLonType" subFieldSuffix="_coordinate"/> <!-- AFTER: Solr 8.x / 9.x schema.xml --> <fieldType name="pint" class="solr.IntPointField" docValues="true"/> <fieldType name="plong" class="solr.LongPointField" docValues="true"/> <fieldType name="pfloat" class="solr.FloatPointField" docValues="true"/> <fieldType name="pdouble" class="solr.DoublePointField" docValues="true"/> <fieldType name="pdate" class="solr.DatePointField" docValues="true"/> <fieldType name="location_rpt" class="solr.SpatialRecursivePrefixTreeFieldType" geo="true" distErrPct="0.025" maxDistErr="0.001" distanceUnits="kilometers"/>
Solr migration
schema.xml conversion table (this page)