Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Have bulk parameter source provide the bulk size #260

Closed
danielmitterdorfer opened this issue Apr 5, 2017 · 1 comment
Closed

Have bulk parameter source provide the bulk size #260

danielmitterdorfer opened this issue Apr 5, 2017 · 1 comment
Labels
enhancement Improves the status quo :Load Driver Changes that affect the core of the load driver such as scheduling, the measurement approach etc. :misc Changes that don't affect users directly: linter fixes, test improvements, etc.
Milestone

Comments

@danielmitterdorfer
Copy link
Member

At the moment, Rally's bulk index runner determines the actual bulk size (which is normally equal to the bulk size that the user has defined except maybe for the last bulk that might contain less documents than the bulk size). However, the bulk parameter source usually has this information already. Hence, we should determine this information already in the bulk parameter source and provide it as parameter bulk-sizeto the runner.

This change is completely internal to Rally and will not affect users. However, it will affect anybody that has written a custom bulk parameter source. This change is forward-compatible, i.e. these users can already adjust their parameter sources to provide an additional parameter bulk-size and newer versions of Rally will just work.

@danielmitterdorfer danielmitterdorfer added :misc Changes that don't affect users directly: linter fixes, test improvements, etc. :Load Driver Changes that affect the core of the load driver such as scheduling, the measurement approach etc. enhancement Improves the status quo labels Apr 5, 2017
@danielmitterdorfer danielmitterdorfer added this to the 0.5.3 milestone Apr 5, 2017
@danielmitterdorfer
Copy link
Member Author

danielmitterdorfer commented Apr 5, 2017

Pinging @cdahlqvist: This will affect custom bulk parameter sources in your tracks.

Here is a specific example of what you need to change based on elasticlogs_bulk_source.py:

old:

response = { "body": bulk_array, "action_metadata_present": True }

new:

response = { "body": bulk_array, "action_metadata_present": True, "bulk-size": self._bulk_size }

You can make the change at any point in time you want. Older versions of Rally will ignore this parameter, newer versions will use the new parameter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improves the status quo :Load Driver Changes that affect the core of the load driver such as scheduling, the measurement approach etc. :misc Changes that don't affect users directly: linter fixes, test improvements, etc.
Projects
None yet
Development

No branches or pull requests

1 participant