This is a “bug” due to the arrow checking for its owner if it hits something or it gets deflected. If the Owner is offline, while the arrow is deflected e.g. by a player holding a shield, or the arrow is hitting the slime block (and afterwards getting bumped up again), minecraft checks for .getOwner(). But as the Owner is offline, the Owner of the arrow gets .setOwner(null)
This bug is new in 1.21.6… in the versions before, it was only present in other servertypes like papermc/purpur