API change: Have evaluator return only match ids #939
Labels
breaking api change
Breaking API change that may require migration for existing customers to update to new version.
Milestone
Overview
Instead of the evaluator returning a stream of matches, only return the ids of the matches it wants to form.
Motivation and Impact
Currently, the evaluator returns the entire protobuf of the matches it wishes to form. This means that the entire protobuf is re-serialized and sent back to the caller which sent the protobuf in the first place. (The same thing happens in the backend to synchronizer call, but that's internal, so can be changed without an externally visible breaking change.) It would be much more efficient to only return the id.
One downside is that the evaluator can't change the contents of any matches (eg, dropping a player seen in another match, but still making the match as a whole.) It's not clear that it's supported anyway (I don't know what the code does today.) Generally, I think it's better if things are treated as immutable.
Change Proto
From:
To:
The text was updated successfully, but these errors were encountered: