-
Notifications
You must be signed in to change notification settings - Fork 68
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make sure the Compact schema is replicated on all known cluster membe…
…rs [API-1564] (#615) * Make sure the Compact schema is replicated on all known cluster members This was the last task necessary to ensure the correctness of the client-side implementation under the split brain. The client might be connected to both halves of the split brain without knowing it. Eventually, a member list update will come and it will close connections to one half. But, until then, the client might replicate the schema in one half, and put the data to other, breaking our promise that no data will be received by members before the schema. To solve this, we have decided to use UUIDs of the members that the schema is replicated on the client side. If there is at least one member that is available in the member list on the client-side, but not part of the schema replication response, we retry a couple of times, after waiting for a while. This PR also updates some names of the fields used in protocol, to comply with their definitions in the protocol repo. * fix mypy error * ignore imports added for type checking from the coverage report * add newline * add a test about the invocation failure * address review comments
- Loading branch information
Showing
11 changed files
with
315 additions
and
48 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
[report] | ||
exclude_lines = | ||
pragma: no cover | ||
if TYPE_CHECKING: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.