Error running example track

Hi ,

I am trying to follow rally track example mentioned at http://esrally.readthedocs.io/en/stable/adding_tracks.html .I just copy -pasted track.json and faced one comma error at line 30 . After fixing that i am getting below error :

[ERROR] Cannot list. ('Track 'rally_tracks' is invalid.\n\nError details: {'operation-type': 'bulk', 'bulk-size': 5000} is not of type 'string'\nInstance: {\n "bulk-size": 5000,\n "operation-type": "bulk"\n}\nPath: deque(['challenges', 0, 'schedule', 0, 'operation'])\nSchema path: deque(['properties', 'challenges', 'items', 'properties', 'schedule', 'items', 'properties', 'operation', 'type'])', None)

It seems bulk operation has some type error. Any pointers ?

Hi @Ankit3,

I just copy -pasted track.json and faced one comma error at line 30 .

thanks, it's fixed now.

The error message sounds to me as if you are on an older Rally version. Can you please issue esrally --version? If it shows anything less than 0.8.1, then you should upgrade Rally and retry.

Note that the docs are versioned. You are looking at the docs for the (current) stable version, which is 0.8.1 at the moment. You can however, also switch to another version on Readthedocs. In the bottom left corner, there is a green link that says "v: stable". When you click on it you can choose a version of the docs that matches your Rally version.

Daniel

Thanks .. Just checked i am using older version 0.7.4 . I copied track.json from 0.7.4 and facing below python error :
Expecting property name enclosed in double quotes: line 3 column 5 (char 18).

JSON seems to be valid and double quotes are being used everywhere.

The problem is that JSON expects a double quotation mark (i.e. Unicode U+0022) and you probably have left / right double quotation marks in your file (i.e. U+201C and U+201D). Optically, the difference is very subtle.

Can you try to copy & paste the contents from the raw source file? See https://raw.githubusercontent.com/elastic/rally/0.7.4/docs/adding_tracks.rst

This should ensure that your browser does not try to be smart with quotes.

Daniel

Thanks .. Actually double quote was missing in mappings.json. It worked after fixing that :slight_smile:

Perfect! Glad to hear it's working now. :slight_smile:

do we need to install rally on elastic nodes to be benchmarked ? I am trying to run rally from one ec2 instance on target host and i get this error

esrally --track=pmc --target-hosts=IP_address:9300

Error in Elasticsearch cluster coordinator', To benchmark remote hosts (e.g. 10........) you need to start the Rally daemon on each machine including this one

In general it is better if you open one topic per question so other people searching for a specific problem have an easier time finding the correct thread.

You have basically two options:

  1. You set up the cluster yourself and just point Rally to it. You can do this with --pipeline=benchmark-only. In that case you are using Rally just as a load generator and then there is no need to install it on every machine involved. In the tips and tricks section of the docs, we call this "benchmarking an existing cluster".
  • You have Rally set up the cluster for you. In that case you need to install Rally on every machine and start a little daemon process before-hand. The reason is that Rally needs to be able to download stuff and start Elasticsearch on these machines. In the tips and tricks section of the docs, we call this "benchmarking a remote cluster".

Please see the tips and tricks section in the Rally docs for more details.

1 Like

Apologies .. I went through the Tips and tricks and it didn't work. I will open a new question and we can discuss over that..

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.