You are correct @toneyalexander
I initially supposed there was some sorting done on _id, but actually the major contributors are FIELD_A and FIELD_B.
You have to clear the fields using fielddata (you can even call POST */_cache/clear?fielddata=true to clear all fields).
For sure there is some term aggregation or sorting done on FIELD_A and FIELD_B, which makes it build global_ordinals.