tree b8b81e495978fd5d87617d5952575daffcee98be
parent 818cc9eedf7e8f7766fce6572a6439895c879456
author Gian Merlino <gianmerlino@gmail.com> 1710343659 -0700
committer GitHub <noreply@github.com> 1710343659 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJl8cXsCRC1aQ7uu5UhlAAA7iAQAKXvUMUaicNROw+yX5B0hi94
 WuAa49k0qY3tNn38nUXyBw+RiGBjj7YGZn71itwP2QAm+xi3R0z7KqCNKgPVUV8O
 7o1hoPiuGzY80lBnRnCIqKNPDoQXXKCmJNPrX0FTycftf79cNGURPmEkgUdmLWuK
 LJZs2M52XmG3qV54q0Bs8YHw97875vSisVPwIKtq+cJzzjB1TmDTqMbUYSl0xyd3
 E0MqkzATibkud5qBuVY5kz4E98N2TXgOFi4PDaJb7M6x5v/Kwh97cBoielF7YeB+
 WoYhS5yEliJ/45SLGtpzRXU1Ss4pIQLaHGGWKuYXoYrobSCOBb/t08amAV7RXbyx
 Gtid4rBHYxoKG7a8vrYr3wbqri5bEh160Bcv6QVmejR9XHTtDBVgg7JSeCKvHIO3
 G6QNo4HtP8KDaEqgYAC99jVlYjkAm0At6Vi3NO0Npbx8A2+gTzHRFgQtxPtpSuY1
 n1LEjo3JwQ7kxPfrbLvqMvsHe0Xb6Z2ps7RLaa12jKAEU53DstTWzB/1iHtRjzDe
 wdd71laBXy3/azl6x0Tu3qv2zwwUwIOsuBBLrStqURgIoQmnykc5xJEnP6bLQ5Vh
 6Ku5nBjn/rNXuaZVH8jFnAk2tdGMPK0E2QygTZJKpPI/sM8jT7chusP/8QsMazsg
 xef6C0sKE1/KU3vmNQi2
 =b3cd
 -----END PGP SIGNATURE-----
 

MSQ: Plan without implicit sorting. (#16073)

* MSQ: Plan without implicit sorting.

This patch adds an EngineFeature "GROUPBY_IMPLICITLY_SORTS" and sets
it true for native, false for MSQ. It's useful for two reasons:

1) In the future we'll likely want MSQ to hash-partition for GROUP BY
   instead of using a global sort, which would mean MSQ would not
   implicitly ORDER BY when there is a GROUP BY.

2) When doing REPLACE with MSQ, CLUSTERED BY is transformed to ORDER BY.
   We should retain that ORDER BY, as it may be a subset of the GROUP BY,
   and it is important to remember which fields the user wanted to include in
   range shard specs.

* Fix tests.

* Fix tests for real.

* Fix test.