### CI Link

https://gradle-enterprise.elastic.co/s/xws6gmgwdwnmm/tests/overview?outcome=failed

### Repro line

./gradlew ':x-pack:plugin:esql:test' --tests "org.elasticsearch.xpack.esql.CsvTests" -Dtests.method="test {rename.RenameProjectEval}" -Dtests.seed=F32BCA1B870438F -Dtests.locale=ar-LY -Dtests.timezone=UTC -Druntime.java=21	

### Does it reproduce?

Yes

### Applicable branches

main

### Failure history

_No response_

### Failure excerpt

```
java.lang.AssertionError: java.lang.IllegalStateException: can't release already released block [IntVectorBlock[vector=IntArrayVector[positions=3, values=[2, 5, 4]]]]
```
x-pack/plugin/esql/src/internalClusterTest/java/org/elasticsearch/xpack/esql/action/EsqlActionIT.java
if (indexService != null) {
                        for (IndexShard shard : indexService) {
                            if (shard.hasRefreshPending()) {
                                pendingRefreshes++;
                            }
                        }
                    }
                }
                assertThat("shards don't have any pending refresh", pendingRefreshes, equalTo(numShards));
            }, 30, TimeUnit.SECONDS);
        } finally {
            stopped.set(true);
            indexingThread.join();
        }
        try (EsqlQueryResponse results = run("from test_refresh | stats s = sum(value)")) {
            logger.info(results);
            assertThat(getValuesList(results).get(0), equalTo(List.of(totalValues.get())));
        }
    }
    public void testESFilter() throws Exception {
        String indexName = "test_filter";
        assertAcked(
            client().admin()
                .indices()
                .prepareCreate(indexName)
                .setSettings(Settings.builder().put(IndexMetadata.SETTING_NUMBER_OF_SHARDS, between(1, 5)))
                .get()
        );
        ensureYellow(indexName);
        int numDocs = randomIntBetween(1, 5000);