Tested again in 20w07a first. Tried to use the first described method I shared above above.
I'm using JVM args: -Xmx8G -Xms8G -Xmn768m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -Dfml.ignorePatchDiscrepancies=true -Dfml.ignoreInvalidMinecraftCertificates=true -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=10000 -XX:ParallelGCThreads=10
I know they might have a few not usable anymore, and such, I just stuck to that for ages.
The preset for just sand doesnt seem to work (i.e. cant currently get "3;12:1;1;" to work as preset for sand layer only, tried "3;1*minecraft:sand;2;village" which didnt work as well, so just used default super flat)
Idles on 4% to max 12% on new world without moving. Moving roughly 15000 blocks away generating land as I go when I finally stop it now sites at 9% to 17% constantly. Reloading the first time gives an average of 11% to 18%, so reloaded again, it moved to 12% to 19%, it keeps going up with reloading the world, though I have no idea if its directly linked since this was just the grass superflat versus the sand dropping before.
Video showing what I described viewable here: https://youtu.be/VQX5FYF0RAI
In 1.15.2 second test.
Same JVM args, new world, superflat wont use the sand described in first post, it also wont do the same I mentioned above "3;1*minecraft:sand;2;village".
Idles on 4% to 11% as well, after 15,000 blocks movement it is sitting at 5% to 12%. First restart 6% to 13%, second restart 7% to 14%, much like the 20w07a video above.
Thoughts.
It seems it would definitely be slower to produce a "sort of" replica of what happens with memory in 1.15.2, the snapshot 20w07a brings it much quicker with the movement on a normal grass superflat.
Main Thought: My survival single player world is currently in 20w06a for my youtube series. It sits at a rough constant 6% to 12% currently, which leads me to believe it could potentially be through world gen currently and might be fixed to an extent already and fine, in that world I used to idle around 45% to 55% odd, no matter what. Though I closed minecraft and opened the 1.15.2 test world (used above) in 20w06a just to look, it sits at 7% to 14%.
I can potentially create the sand based test world in 1.12.2 and update it to both the 1.15.2 and 20w07a if you want the exact same test, it may be needed?
And don't drown anymore?
Thanks Redstonehelper.
As of now it would seem that it was fixed in an update from 1.12.2 until now (snapshot 20w07a), doing the full exact test it goes up a little for the generation now and idles towards that amount for the generation (which is perfect for it being fixed). It doesnt constantly go up to lock towards 100% now, so it was clearly fixed since that version at some point, we could close this issue.
I left it running to take a further look, while waiting it went up to roughly 24% max when I start the test then stabilised there, when I reload minecraft when it moves out the render distance it sits at the 6% to 12% again. It would seem it doesnt replicate what we had trouble with in 1.12.2 anymore. (I dont have those worlds it happened in anymore, so the simplest thing is we can mark it as fixed/cancelled)