Delete obsolete cache entries during backfill
The backfill does not delete all the cache entries it should.

I found this looking at the `split-is-valid` entries: a lot of cache entries don't have the last version (4), eg: 

```
{ _id: ObjectId("64d2bb292727fd84d43f6777"),
  config: 'default',
  dataset: 'chenyuxuan/wikigold',
  kind: 'split-is-valid',
  split: 'train',
  content: { viewer: false, preview: true, search: true },
  dataset_git_revision: '535f41fa437ea5730554b368b8df71eb7d38bd7c',
  details: null,
  error_code: null,
  http_status: 200,
  job_runner_version: 1,
  progress: 1,
  updated_at: 2023-09-05T00:53:48.718Z,
  failed_runs: 0 }
```

or

```
{ _id: ObjectId("64d2c0702727fd84d45a6577"),
  config: 'hover',
  dataset: 'copenlu/sufficient_facts',
  kind: 'split-is-valid',
  split: 'test',
  content: { viewer: false, preview: true, search: true },
  dataset_git_revision: '58d5b361e47265cf85f2334800c66d9bb485029e',
  details: null,
  error_code: null,
  http_status: 200,
  job_runner_version: 1,
  progress: 1,
  updated_at: 2023-09-05T00:57:57.308Z,
  failed_runs: 0 }
```

It turns out that, for some reason, the list of splits for the corresponding config could not be obtained.

In this case, we should delete these "unlinked" entries.
Delete obsolete cache entries during backfill: The backfill does not delete all the cache entries it should.

I found this looking at the `split-is-valid` entries: a lot of cache entries don't have the last version (4), eg: 

```
{ _id: ObjectId("64d2bb292727fd84d43f6777"),
  config: 'default',
  dataset: 'chenyuxuan/wikigold',
  kind: 'split-is-valid',
  split: 'train',
  content: { viewer: false, preview: true, search: true },
  dataset_git_revision: '535f41fa437ea5730554b368b8df71eb7d38bd7c',
  details: null,
  error_code: null,
  http_status: 200,
  job_runner_version: 1,
  progress: 1,
  updated_at: 2023-09-05T00:53:48.718Z,
  failed_runs: 0 }
```

or

```
{ _id: ObjectId("64d2c0702727fd84d45a6577"),
  config: 'hover',
  dataset: 'copenlu/sufficient_facts',
  kind: 'split-is-valid',
  split: 'test',
  content: { viewer: false, preview: true, search: true },
  dataset_git_revision: '58d5b361e47265cf85f2334800c66d9bb485029e',
  details: null,
  error_code: null,
  http_status: 200,
  job_runner_version: 1,
  progress: 1,
  updated_at: 2023-09-05T00:57:57.308Z,
  failed_runs: 0 }
```

It turns out that, for some reason, the list of splits for the corresponding config could not be obtained.

In this case, we should delete these "unlinked" entries.