Skip to content

Add support for server election ID, fix channels in client, add chk library.#10

Merged
robshakir merged 23 commits intomainfrom
fluent-5
Jun 7, 2021
Merged

Add support for server election ID, fix channels in client, add chk library.#10
robshakir merged 23 commits intomainfrom
fluent-5

Conversation

@robshakir
Copy link
Copy Markdown
Member

    Fix client channels, add server election, and chk lib.
    
      * (A) chk/chk.go
      * (A) chk/chk_test.go
        -  Add a check library that can be used to determine
            characteristics of the results that are returned by the client.
            This library is a fluent-style helper library for gRIBI client
            results to maintain readability of our test cases.
      * (M) client/client.go
        - Change the modifyCh to be unbuffered such that we have blocking
          writes, this is required to ensure that we do not lose messages
          and ensure that Await operates as expected.
        - Add String debugging output to OpResult.
      * (M) fluent/fluent.go
      * (M) fluent/fluent_test.go
        - Add Results method, and extend testing to results.
      * (M) go.mod
      * (M) go.sum
        - Housekeeping
      * (M) server/server.go
      * (M) server/server_test.go
        - Add support and testing for master election.

robshakir added 12 commits June 2, 2021 11:10
  * (M) client/client.go
    - TODOs for implementation details that are pending.
  * (M) client/client.go
    -  add handling for receiving messages from a client into
       restructured pending and result queues that include more
       info including the timestamp and result codes.
  * (M) client/client_test.go
    - add test coverage for all non-integration parts.
  * (M) fluent/fluent.go
    - Since the client connection parameters might be across
      different RPCs, restructure the fluent client (per the design
      doc) to encapsulate the connection parameters.
  * (M) fluent/fluent_test.go
    - Update existing tests to correspond to absorb the changes
      described above.
  * (M) client/client.go
  * (M) client/client_test.go
    - Restructure pneding queues to be able to store the type of
       transaction that is pending, not just operations - such that
       it is possible to track latency of other operations and ensure
       that the client is aware that is has pending non-operations
       requests.
    - Add a converged method to check whether there are any pending
      requests from the server in the client.
  * (M) fluent/fluent.go
  * (M) fluent/fluent_test.go
    - Add initial Await() implementation.
  * (A) chk/chk.go
  * (A) chk/chk_test.go
    -  Add a check library that can be used to determine
        characteristics of the results that are returned by the client.
        This library is a fluent-style helper library for gRIBI client
        results to maintain readability of our test cases.
  * (M) client/client.go
    - Change the modifyCh to be unbuffered such that we have blocking
      writes, this is required to ensure that we do not lose messages
      and ensure that Await operates as expected.
    - Add String debugging output to OpResult.
  * (M) fluent/fluent.go
  * (M) fluent/fluent_test.go
    - Add Results method, and extend testing to results.
  * (M) go.mod
  * (M) go.sum
    - Housekeeping
  * (M) server/server.go
  * (M) server/server_test.go
    - Add support and testing for master election.
@robshakir robshakir changed the title Add support for server election ID, fix channels in client, add chk library. [Depends: PR#9] Add support for server election ID, fix channels in client, add chk library. Jun 5, 2021
robshakir added 2 commits June 4, 2021 22:55
  * (M) client/client.go
    -  Avoid appending an empty session parameters request with no
       provided parameters.
  * (M) fluent/fluent_test.go
    - Handle test flake because of timing issues.
  * (M) client/client_test.go
    - Remove sending empty parameters message when no parameters are
      set.
@robshakir robshakir changed the base branch from main to fluent-4 June 5, 2021 14:59
@robshakir robshakir changed the base branch from fluent-4 to main June 5, 2021 16:12
@robshakir robshakir changed the base branch from main to fluent-4 June 5, 2021 16:36
@robshakir robshakir requested a review from sthesayi June 5, 2021 16:37
Comment thread chk/chk.go
return false
}

func HasSuccessfulSessionParams(res []*client.OpResult) bool {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

comment?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed, thanks!

Base automatically changed from fluent-4 to main June 7, 2021 15:50
@robshakir robshakir changed the title [Depends: PR#9] Add support for server election ID, fix channels in client, add chk library. Add support for server election ID, fix channels in client, add chk library. Jun 7, 2021
robshakir added 2 commits June 7, 2021 09:04
  * (M) chk/chk.go
    - Add removed documentation string.
  * (M) .github/workflows/go.yml
    - Remove doc from go test -race.
@robshakir robshakir merged commit a902b79 into main Jun 7, 2021
@robshakir robshakir deleted the fluent-5 branch June 7, 2021 16:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants