functional/rpcpb/member.go
func (m *Member) Compact(rev int64, timeout time.Duration) error {
	cli, err := m.CreateEtcdClient()
	if err != nil {
		return fmt.Errorf("%v (%q)", err, m.EtcdClientEndpoint)
	}
	defer cli.Close()

	ctx, cancel := context.WithTimeout(context.Background(), timeout)
	_, err = cli.Compact(ctx, rev, clientv3.WithCompactPhysical())
	cancel()
	return err
}
func (m *Member) Compact(rev int64, timeout time.Duration) error {
	cli, err := m.CreateEtcdClient()
	if err != nil {
		return fmt.Errorf("%v (%q)", err, m.EtcdClientEndpoint)
	}
	defer cli.Close()

	ctx, cancel := context.WithTimeout(context.Background(), timeout)
	_, err = cli.Compact(ctx, rev, clientv3.WithCompactPhysical())
	cancel()
	return err
}
func ( m * Member ) Compact ( rev int64 , timeout time . Duration ) error { cli , err := m . CreateEtcdClient ( ) if err != nil { return fmt . Errorf ( " " , err , m . EtcdClientEndpoint ) } defer cli . Close ( ) ctx , cancel := context . WithTimeout ( context . Background ( ) , timeout ) _ , err = cli . Compact ( ctx , rev , clientv3 . WithCompactPhysical ( ) ) cancel ( ) return err }
// Compact compacts member storage with given revision.
// It blocks until it's physically done.
Compact compacts member storage with given revision . It blocks until it s physically done .