ES 8.6 - High contention over Global Ordingals Field Data for terms aggregation under load

Hello
Under a moderate load (mostly filtering and massive terms aggregation) I see "benign" hot_threads ie

..8.6..index.fielddata.ordinals.GlobalOrdinalMapping.lookupOrd(GlobalOrdinalMapping.java:71)
..8.6..index.mapper.flattened.KeyedFlattenedLeafFieldData.findMinOrd(KeyedFlattenedLeafFieldData.java:102)
..8.6..index.mapper.flattened.KeyedFlattenedLeafFieldData.getOrdinalsValues(KeyedFlattenedLeafFieldData.java:64)
..8.6..search.aggregations.support.ValuesSource$Bytes$WithOrdinals$FieldData.globalOrdinalsValues(ValuesSource.java:287)
..8.6..search.aggregations.bucket.terms.GlobalOrdinalsStringTermsAggregator.getLeafCollector(GlobalOrdinalsStringTermsAggregator.java:111)

However under a certain rate threads stuck at the same lock :

java.base@19.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@19.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:221)
java.base@19.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:715)
java.base@19.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:938)
java.base@19.0.1/java.util.concurrent.locks.ReentrantLock$Sync.lock(ReentrantLock.java:153)
java.base@19.0.1/java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:322)
..8.6....common.util.concurrent.ReleasableLock.acquire(ReleasableLock.java:43)
..8.6....common.cache.Cache.promote(Cache.java:739)
..8.6....common.cache.Cache.get(Cache.java:354)
..8.6....common.cache.Cache.computeIfAbsent(Cache.java:376)
..8.6....indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.load(IndicesFieldDataCache.java:162)
..8.6....index.fielddata.plain.AbstractIndexOrdinalsFieldData.loadGlobalInternal(AbstractIndexOrdinalsFieldData.java:127)
..8.6....index.fielddata.plain.AbstractIndexOrdinalsFieldData.loadGlobal(AbstractIndexOrdinalsFieldData.java:93)
..8.6....index.mapper.flattened.FlattenedFieldMapper$KeyedFlattenedFieldData.loadGlobal(FlattenedFieldMapper.java:532)
..8.6....search.aggregations.support.ValuesSource$Bytes$WithOrdinals$FieldData.globalOrdinalsValues(ValuesSource.java:285)
..8.6....search.aggregations.bucket.terms.GlobalOrdinalsStringTermsAggregator.getLeafCollector(GlobalOrdinalsStringTermsAggregator.java:111)

Am I right that it check global ordinals field data for eviction?
if so, how I can bypass that, since I don't need ever evict global ordinals.
I'm aware about map hint. Isn't there fixes in the recent version?
Thanks

early evidence of the similar problem High CPU load, many hot threads with the same stack