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

Robustness operations failpoints #17889

Merged
merged 1 commit into from May 8, 2024

Conversation

serathius
Copy link
Member

@serathius serathius force-pushed the robustness-operations-failpoints branch from d884401 to 9e11172 Compare April 27, 2024 10:08
@serathius
Copy link
Member Author

ping @fuweid @siyuanfoundation @MadhavJivrajani

@@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.

package traffic
package client
Copy link
Contributor

Choose a reason for hiding this comment

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

why moving the client out of robustness? Is it useful for other tests?

Copy link
Member Author

Choose a reason for hiding this comment

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

Ups, I meant to move it to tests/robustness/client

)

type trigger interface {
Trigger(ctx context.Context, t *testing.T, member e2e.EtcdProcess, clus *e2e.EtcdProcessCluster) error
Trigger(ctx context.Context, t *testing.T, member e2e.EtcdProcess, clus *e2e.EtcdProcessCluster, baseTime time.Time, ids identity.Provider) ([]report.ClientReport, error)
Copy link
Contributor

Choose a reason for hiding this comment

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

Can you add some comments about when the trigger should return the clientReport? Most of the time it seems to be nil.

Copy link
Member Author

@serathius serathius May 1, 2024

Choose a reason for hiding this comment

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

When it makes a request using recording client.

@serathius serathius force-pushed the robustness-operations-failpoints branch from 9e11172 to 52fac15 Compare May 1, 2024 17:12
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
@serathius serathius force-pushed the robustness-operations-failpoints branch from 52fac15 to c4e3b61 Compare May 1, 2024 17:20
@serathius
Copy link
Member Author

/retest

Copy link
Contributor

@fuweid fuweid left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Contributor

@MadhavJivrajani MadhavJivrajani left a comment

Choose a reason for hiding this comment

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

Just one question, but LGTM overall.

Comment on lines +248 to +250
func (c *RecordingClient) Endpoints() []string {
return c.client.Endpoints()
}
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm just curious when we lock and when we don't, also in the places we are using the kvMux, we aren't appending operations unless I'm missing something. Or are we making this change proactively for some work in the future?

Copy link
Member Author

Choose a reason for hiding this comment

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

We lock when we are making a call to etcd, because linearization requires that there are no concurrent operations sharing the same clientID.

@serathius serathius merged commit bb398a0 into etcd-io:main May 8, 2024
44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants