When you have a wither in your world, and you exit and re-enter the game, the wither's x-position increments by 2. This also happens when you enter another dimension and return, bu not when you move away from the wither (so it is beyond simulation distance) and return.
How to reproduce
- Use /fill ~-10 ~2 ~-10 ~10 ~3~10 bedrock to create a 2-thick layer of bedrock.
- Use /summon wither ~~~.
- Break the bedrock at the wither's head. You should see the wither float upwards slightly.
- Exit and re-enter the game.
The wither remains in the upside-down hole that you created in step 3.
The wither appears 2 blocks east of the hole. If you exit and re-enter the game enough times, the wither reaches the edge of the bedrock and flies away.
This makes wither rose farms highly unreliable. I am not sure if it is even possible to create a permanent wither rose farm.
When spawning the wither (using soul sand or the /summon command) the wither appears 4 blocks east of where it should, which probably relates to this bug. In general, the wither's position in RAM is different from the wither's position in NBT.