This should also be `private[spark]`