### Description

![image](https://github.com/elastic/elasticsearch/assets/76245/d0443170-0419-4759-b505-7620ff3d6594)

The execution time of grouping stats by multiple keywords has increased: 1.2 to 1.6 seconds (with doc_partitioning), 4.3 to 6.7 seconds (with shard_partitioning). The equivalent query with the _search API takes 1.8 seconds.

`from nyc_taxis | ... | stats c = count(dropoff_datetime) by trip_type, payment_type, vendor_id`

This regression occurred since July 2, 2023, and I suspect it may be due to the PR: [Support multivalued fields on arbitrary grouping](https://github.com/elastic/elasticsearch-internal/pull/1340).

/cc @nik9000
x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/operator/MultivalueDedupeTests.java
? nullValue()
                : containsInAnyOrder(v.stream().collect(Collectors.toSet()).stream().sorted().toArray());
            BlockTestUtils.assertPositionValues(deduped.block(), p, matcher);
        }
    }
    public void testHash() {
        BasicBlockTests.RandomBlock b = randomBlock();
        switch (b.block().elementType()) {
            case BOOLEAN -> assertBooleanHash(Set.of(), b);
            case BYTES_REF -> assertBytesRefHash(Set.of(), b);
            case INT -> assertIntHash(Set.of(), b);
            case LONG -> assertLongHash(Set.of(), b);
            case DOUBLE -> assertDoubleHash(Set.of(), b);
            default -> throw new IllegalArgumentException();
        }
    }
    public void testHashWithPreviousValues() {
        BasicBlockTests.RandomBlock b = randomBlock();
        switch (b.block().elementType()) {
            case BOOLEAN -> {
                Set<Boolean> previousValues = switch (between(0, 2)) {
                    case 0 -> Set.of(false);
                    case 1 -> Set.of(true);
                    case 2 -> Set.of(false, true);
                    default -> throw new IllegalArgumentException();
                };
                assertBooleanHash(previousValues, b);
            }
            case BYTES_REF -> {
                int prevSize = between(1, 10000);