# Running benchmark-only error

**URL:** <https://discuss.elastic.co/t/running-benchmark-only-error/63290>\
**Category:** Elasticsearch\
**Tags:** rally\
**Created:** [October 18, 2016, 12:10pm UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290 "2016-10-18T12:10:48Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![duramen](https://avatars.discourse-cdn.com/v4/letter/d/e36b37/32.png) [@duramen](https://discuss.elastic.co/u/duramen)\
**Post date:** [October 18, 2016, 12:10pm UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/1 "2016-10-18T12:10:48Z")

</div>

I run "esrally --track=geonames --offline --pipeline=benchmark-only --target-hosts=[xxx.xxx.xxx.xxx:9200](http://xxx.xxx.xxx.xxx:9200)"  
have error:

```
2016-10-18 11:48:21,989 elasticsearch WARNING PUT /geonames/_mapping/type [status:400 request:1.315s]
2016-10-18 11:48:21,995 rally.telemetry INFO Benchmark stop
2016-10-18 11:48:21,995 rally.telemetry INFO Gathering nodes stats
2016-10-18 11:48:26,414 rally.telemetry INFO Gathering indices stats
2016-10-18 11:48:32,531 rally.telemetry WARNING Could not determine metric [segments_points_memory_in_bytes] at path [segments,points_memory_in_bytes].
2016-10-18 11:48:32,558 root ERROR Cannot run subcommand [race].
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 364, in run
    pipeline()
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 60, in __call__
    step()
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 29, in __call__
    self.command(self.ctx)
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 188, in benchmark_external
    raise exceptions.RallyError("Driver has returned no metrics but instead [%s]. Terminating race without result." % str(completed))
esrally.exceptions.RallyError: Driver has returned no metrics but instead [Poison<<esrally.driver.StartBenchmark object at 0x7fe3632d5b70>>]. Terminating race without result.

```

then, I use ”esrally --track=geonames --offline --pipeline=benchmark-only --distribution-version=2.3.2 --target-hosts=[xxx.xxx.xxx.xxx:9200](http://xxx.xxx.xxx.xxx:9200)”，  
but have error：

```
2016-10-18 12:20:29,450 rally.driver ERROR Cluster did not reach status [green]. Last reached status: [green]
2016-10-18 12:20:29,454 rally.telemetry INFO Benchmark stop
2016-10-18 12:20:29,454 rally.telemetry INFO Gathering nodes stats
2016-10-18 12:20:37,800 rally.telemetry INFO Gathering indices stats
2016-10-18 12:20:43,231 rally.telemetry WARNING Could not determine metric [segments_points_memory_in_bytes] at path [segments,points_memory_in_bytes].
2016-10-18 12:20:43,257 root ERROR Cannot run subcommand [race].
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 364, in run
    pipeline()
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 60, in __call__
    step()
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 29, in __call__
    self.command(self.ctx)
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 188, in benchmark_external
    raise exceptions.RallyError("Driver has returned no metrics but instead [%s]. Terminating race without result." % str(completed))
esrally.exceptions.RallyError: Driver has returned no metrics but instead [Poison<<esrally.driver.StartBenchmark object at 0x7f4669f1b240>>]. Terminating race without result.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/site-packages/esrally/rally.py", line 413, in dispatch_sub_command
    racecontrol.run(cfg)
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 367, in run
    raise exceptions.RallyError("This race ended early with a fatal crash. For details please see the logs.").with_traceback(tb)
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 364, in run
    pipeline()
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 60, in __call__
    step()
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 29, in __call__
    self.command(self.ctx)
  File "/usr/local/lib/python3.5/site-packages/esrally/racecontrol.py", line 188, in benchmark_external
    raise exceptions.RallyError("Driver has returned no metrics but instead [%s]. Terminating race without result." % str(completed))
esrally.exceptions.RallyError: This race ended early with a fatal crash. For details please see the logs.
```

---

<div class="post-metadata">

**Author:** ![danielmitterdorfer](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/danielmitterdorfer/32/110510_2.png) [@danielmitterdorfer](https://discuss.elastic.co/u/danielmitterdorfer)\
**Post date:** [October 18, 2016, 3:08pm UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/2 "2016-10-18T15:08:27Z")

</div>

Hi @duramen,

It seems you're running an older version of Rally. Can you please update to the latest version of Rally and retry? I don't expect that error is gone but the error reporting got better in these cases. There is also no need anymore to specify `--distribution-version` when you use `--pipeline=benchmark-only` as Rally will autodetect the version.

Also `--offline` shouldn't be necessary.

Daniel

---

<div class="post-metadata">

**Author:** ![duramen](https://avatars.discourse-cdn.com/v4/letter/d/e36b37/32.png) [@duramen](https://discuss.elastic.co/u/duramen)\
**Post date:** [October 19, 2016, 2:32am UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/3 "2016-10-19T02:32:35Z")

</div>

I have updated rally 0.4.3,but have the same error:  
2016-10-19 02:14:15,780 rally.driver ERROR Cluster did not reach status [green]. Last reached status: [green]

---

<div class="post-metadata">

**Author:** ![danielmitterdorfer](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/danielmitterdorfer/32/110510_2.png) [@danielmitterdorfer](https://discuss.elastic.co/u/danielmitterdorfer)\
**Post date:** [October 19, 2016, 6:01am UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/4 "2016-10-19T06:01:00Z")

</div>

Hi @duramen,

I checked the source code. Rally checks if the cluster health is green _and_ that there are no relocating shards. So I am quite sure that you have relocating shards. You can check that yourself with the [cat/\_shards API](https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-shards.html#relocation). E.g.:

```auto
curl http://YOUR_CLUSTER_IP:9200/_cat/shards | fgrep RELO

```

This should show your relocating shards.

You might wonder why Rally refuses to run a benchmark against your cluster in this case. The idea behind this check is that you should not run a benchmark if your cluster is busy, otherwise you will not get representative results. And if shards are relocating in this moment, it takes away I/O capacity for the benchmark.

I've created [https://github.com/elastic/rally/issues/171](https://github.com/elastic/rally/issues/171) to improve the error message in this case.

Daniel

---

<div class="post-metadata">

**Author:** ![duramen](https://avatars.discourse-cdn.com/v4/letter/d/e36b37/32.png) [@duramen](https://discuss.elastic.co/u/duramen)\
**Post date:** [October 19, 2016, 11:17am UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/5 "2016-10-19T11:17:11Z")

</div>

hi @danielmitterdorfer,

I have deleted the relocating shards and running ok .

but I don't see about disk(disk\_io\_write\_bytes...) in the report.

[https://esrally.readthedocs.io/en/latest/metrics.html#metric-keys](https://esrally.readthedocs.io/en/latest/metrics.html#metric-keys)

I need check disk IO。

and another question：how can print report in command-line by esrally command？

---

<div class="post-metadata">

**Author:** ![danielmitterdorfer](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/danielmitterdorfer/32/110510_2.png) [@danielmitterdorfer](https://discuss.elastic.co/u/danielmitterdorfer)\
**Post date:** [October 19, 2016, 11:50am UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/6 "2016-10-19T11:50:20Z")

</div>

Hi @duramen,

ok, great to hear that it works now.

> [@duramen](#):
>
> I need check disk IO。

In the report this value is shown as "Totally written". The metric key is just used internally and is mainly interesting if you have configured an Elasticsearch metrics store and want to understand how to visualize metrics in Kibana.

> [@duramen](#):
>
> how can print report in command-line by esrally command？

There is no separate command to show the report (again) on the command line. However, the report is also written to the log file that is stored in `~/.rally/benchmarks/races/$TIMESTAMP_OF_YOUR_BENCHMARK/logs/` (just unzip the logs and it's right there at the end of the `rally_out.log`).

If you want to safe the report as a file you can store it (with [`--report-file`](https://esrally.readthedocs.io/en/latest/command_line_reference.html#report-file)) either as Markdown or CSV (with [`--report-format`](https://esrally.readthedocs.io/en/latest/command_line_reference.html#report-format)).

Daniel

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 10:11pm UTC](https://discuss.elastic.co/t/running-benchmark-only-error/63290/7 "2017-07-05T22:11:17Z")

</div>


