See #19788. (cherry picked from commit 6be1feb1) (cherry picked from commit b4ad8b41) (cherry picked from commit 20d84952)