Documentation ¶
Index ¶
- Constants
- func SetupEmbedEtcd(dir string) (clientURL *url.URL, e *embed.Etcd, err error)
- type CDCKey
- type CDCKeyType
- type Client
- func (c *Client) Delete(ctx context.Context, key string, opts ...clientv3.OpOption) (resp *clientv3.DeleteResponse, err error)
- func (c *Client) Get(ctx context.Context, key string, opts ...clientv3.OpOption) (resp *clientv3.GetResponse, err error)
- func (c *Client) Grant(ctx context.Context, ttl int64) (resp *clientv3.LeaseGrantResponse, err error)
- func (c *Client) Put(ctx context.Context, key, val string, opts ...clientv3.OpOption) (resp *clientv3.PutResponse, err error)
- func (c *Client) RequestProgress(ctx context.Context) error
- func (c *Client) Revoke(ctx context.Context, id clientv3.LeaseID) (resp *clientv3.LeaseRevokeResponse, err error)
- func (c *Client) TimeToLive(ctx context.Context, lease clientv3.LeaseID, opts ...clientv3.LeaseOption) (resp *clientv3.LeaseTimeToLiveResponse, err error)
- func (c *Client) Txn(ctx context.Context) clientv3.Txn
- func (c *Client) Unwrap() *clientv3.Client
- func (c *Client) Watch(ctx context.Context, key string, opts ...clientv3.OpOption) clientv3.WatchChan
Constants ¶
View Source
const ( EtcdPut = "Put" EtcdGet = "Get" EtcdTxn = "Txn" EtcdDel = "Del" EtcdGrant = "Grant" EtcdRevoke = "Revoke" )
etcd operation names
Variables ¶
This section is empty.
Functions ¶
Types ¶
type CDCKey ¶
type CDCKey struct { Tp CDCKeyType ChangefeedID string CaptureID string OwnerLeaseID string }
CDCKey represents a etcd key which is defined by TiCDC
Usage: we can parse a raw etcd key: ``` k := new(CDCKey) rawKey := "/tidb/cdc/changefeed/info/test/changefeed" err := k.Parse(rawKey) c.Assert(k, check.DeepEquals, &CDCKey{ Tp: CDCKeyTypeChangefeedInfo, ChangefeedID: "test/changefeed", }) ``` and we can generate a raw key from CDCKey ``` k := &CDCKey{ Tp: CDCKeyTypeChangefeedInfo, ChangefeedID: "test/changefeed", } c.Assert(k.String(), check.Equals, "/tidb/cdc/changefeed/info/test/changefeed") ```
type CDCKeyType ¶
type CDCKeyType = int
CDCKeyType is the type of etcd key
const ( CDCKeyTypeUnknown CDCKeyType = iota CDCKeyTypeOwner CDCKeyTypeCapture CDCKeyTypeChangefeedInfo CDCKeyTypeChangeFeedStatus CDCKeyTypeTaskPosition CDCKeyTypeTaskStatus CDCKeyTypeTaskWorkload )
the types of etcd key
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is a simple wrapper that adds retry to etcd RPC
func (*Client) Delete ¶
func (c *Client) Delete(ctx context.Context, key string, opts ...clientv3.OpOption) (resp *clientv3.DeleteResponse, err error)
Delete delegates request to clientv3.KV.Delete
func (*Client) Get ¶
func (c *Client) Get(ctx context.Context, key string, opts ...clientv3.OpOption) (resp *clientv3.GetResponse, err error)
Get delegates request to clientv3.KV.Get
func (*Client) Grant ¶
func (c *Client) Grant(ctx context.Context, ttl int64) (resp *clientv3.LeaseGrantResponse, err error)
Grant delegates request to clientv3.Lease.Grant
func (*Client) Put ¶
func (c *Client) Put(ctx context.Context, key, val string, opts ...clientv3.OpOption) (resp *clientv3.PutResponse, err error)
Put delegates request to clientv3.KV.Put
func (*Client) RequestProgress ¶
RequestProgress requests a progress notify response be sent in all watch channels.
func (*Client) Revoke ¶
func (c *Client) Revoke(ctx context.Context, id clientv3.LeaseID) (resp *clientv3.LeaseRevokeResponse, err error)
Revoke delegates request to clientv3.Lease.Revoke
func (*Client) TimeToLive ¶
func (c *Client) TimeToLive(ctx context.Context, lease clientv3.LeaseID, opts ...clientv3.LeaseOption) (resp *clientv3.LeaseTimeToLiveResponse, err error)
TimeToLive delegates request to clientv3.Lease.TimeToLive
Click to show internal directories.
Click to hide internal directories.