Documentation
¶
Overview ¶
Forget a follower. Remove the cross-cluster replication follower retention leases from the leader.
A following index takes out retention leases on its leader index. These leases are used to increase the likelihood that the shards of the leader index retain the history of operations that the shards of the following index need to run replication. When a follower index is converted to a regular index by the unfollow API (either by directly calling the API or by index lifecycle management tasks), these leases are removed. However, removal of the leases can fail, for example when the remote cluster containing the leader index is unavailable. While the leases will eventually expire on their own, their extended existence can cause the leader index to hold more history than necessary and prevent index lifecycle management from performing some operations on the leader index. This API exists to enable manually removing the leases when the unfollow API is unable to do so.
NOTE: This API does not stop replication by a following index. If you use this API with a follower index that is still actively following, the following index will add back retention leases on the leader. The only purpose of this API is to handle the case of failure to remove the following retention leases after the unfollow API is invoked.
Index ¶
- Variables
- type ForgetFollower
- func (r ForgetFollower) Do(providedCtx context.Context) (*Response, error)
- func (r *ForgetFollower) ErrorTrace(errortrace bool) *ForgetFollower
- func (r *ForgetFollower) FilterPath(filterpaths ...string) *ForgetFollower
- func (r *ForgetFollower) FollowerCluster(followercluster string) *ForgetFollower
- func (r *ForgetFollower) FollowerIndex(indexname string) *ForgetFollower
- func (r *ForgetFollower) FollowerIndexUuid(uuid string) *ForgetFollower
- func (r *ForgetFollower) Header(key, value string) *ForgetFollower
- func (r *ForgetFollower) HttpRequest(ctx context.Context) (*http.Request, error)
- func (r *ForgetFollower) Human(human bool) *ForgetFollower
- func (r *ForgetFollower) LeaderRemoteCluster(leaderremotecluster string) *ForgetFollower
- func (r ForgetFollower) Perform(providedCtx context.Context) (*http.Response, error)
- func (r *ForgetFollower) Pretty(pretty bool) *ForgetFollower
- func (r *ForgetFollower) Raw(raw io.Reader) *ForgetFollower
- func (r *ForgetFollower) Request(req *Request) *ForgetFollower
- type NewForgetFollower
- type Request
- type Response
Constants ¶
This section is empty.
Variables ¶
var ErrBuildPath = errors.New("cannot build path, check for missing path parameters")
ErrBuildPath is returned in case of missing parameters within the build of the request.
Functions ¶
This section is empty.
Types ¶
type ForgetFollower ¶
type ForgetFollower struct {
// contains filtered or unexported fields
}
func New ¶
func New(tp elastictransport.Interface) *ForgetFollower
Forget a follower. Remove the cross-cluster replication follower retention leases from the leader.
A following index takes out retention leases on its leader index. These leases are used to increase the likelihood that the shards of the leader index retain the history of operations that the shards of the following index need to run replication. When a follower index is converted to a regular index by the unfollow API (either by directly calling the API or by index lifecycle management tasks), these leases are removed. However, removal of the leases can fail, for example when the remote cluster containing the leader index is unavailable. While the leases will eventually expire on their own, their extended existence can cause the leader index to hold more history than necessary and prevent index lifecycle management from performing some operations on the leader index. This API exists to enable manually removing the leases when the unfollow API is unable to do so.
NOTE: This API does not stop replication by a following index. If you use this API with a follower index that is still actively following, the following index will add back retention leases on the leader. The only purpose of this API is to handle the case of failure to remove the following retention leases after the unfollow API is invoked.
https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-forget-follower.html
func (ForgetFollower) Do ¶
func (r ForgetFollower) Do(providedCtx context.Context) (*Response, error)
Do runs the request through the transport, handle the response and returns a forgetfollower.Response
func (*ForgetFollower) ErrorTrace ¶ added in v8.14.0
func (r *ForgetFollower) ErrorTrace(errortrace bool) *ForgetFollower
ErrorTrace When set to `true` Elasticsearch will include the full stack trace of errors when they occur. API name: error_trace
func (*ForgetFollower) FilterPath ¶ added in v8.14.0
func (r *ForgetFollower) FilterPath(filterpaths ...string) *ForgetFollower
FilterPath Comma-separated list of filters in dot notation which reduce the response returned by Elasticsearch. API name: filter_path
func (*ForgetFollower) FollowerCluster ¶ added in v8.9.0
func (r *ForgetFollower) FollowerCluster(followercluster string) *ForgetFollower
API name: follower_cluster
func (*ForgetFollower) FollowerIndex ¶ added in v8.9.0
func (r *ForgetFollower) FollowerIndex(indexname string) *ForgetFollower
API name: follower_index
func (*ForgetFollower) FollowerIndexUuid ¶ added in v8.9.0
func (r *ForgetFollower) FollowerIndexUuid(uuid string) *ForgetFollower
API name: follower_index_uuid
func (*ForgetFollower) Header ¶
func (r *ForgetFollower) Header(key, value string) *ForgetFollower
Header set a key, value pair in the ForgetFollower headers map.
func (*ForgetFollower) HttpRequest ¶
HttpRequest returns the http.Request object built from the given parameters.
func (*ForgetFollower) Human ¶ added in v8.14.0
func (r *ForgetFollower) Human(human bool) *ForgetFollower
Human When set to `true` will return statistics in a format suitable for humans. For example `"exists_time": "1h"` for humans and `"eixsts_time_in_millis": 3600000` for computers. When disabled the human readable values will be omitted. This makes sense for responses being consumed only by machines. API name: human
func (*ForgetFollower) LeaderRemoteCluster ¶ added in v8.9.0
func (r *ForgetFollower) LeaderRemoteCluster(leaderremotecluster string) *ForgetFollower
API name: leader_remote_cluster
func (ForgetFollower) Perform ¶ added in v8.7.0
Perform runs the http.Request through the provided transport and returns an http.Response.
func (*ForgetFollower) Pretty ¶ added in v8.14.0
func (r *ForgetFollower) Pretty(pretty bool) *ForgetFollower
Pretty If set to `true` the returned JSON will be "pretty-formatted". Only use this option for debugging only. API name: pretty
func (*ForgetFollower) Raw ¶
func (r *ForgetFollower) Raw(raw io.Reader) *ForgetFollower
Raw takes a json payload as input which is then passed to the http.Request If specified Raw takes precedence on Request method.
func (*ForgetFollower) Request ¶
func (r *ForgetFollower) Request(req *Request) *ForgetFollower
Request allows to set the request property with the appropriate payload.
type NewForgetFollower ¶
type NewForgetFollower func(index string) *ForgetFollower
NewForgetFollower type alias for index.
func NewForgetFollowerFunc ¶
func NewForgetFollowerFunc(tp elastictransport.Interface) NewForgetFollower
NewForgetFollowerFunc returns a new instance of ForgetFollower with the provided transport. Used in the index of the library this allows to retrieve every apis in once place.
type Request ¶
type Request struct { FollowerCluster *string `json:"follower_cluster,omitempty"` FollowerIndex *string `json:"follower_index,omitempty"` FollowerIndexUuid *string `json:"follower_index_uuid,omitempty"` LeaderRemoteCluster *string `json:"leader_remote_cluster,omitempty"` }
Request holds the request body struct for the package forgetfollower
func (*Request) FromJSON ¶ added in v8.5.0
FromJSON allows to load an arbitrary json into the request structure
func (*Request) UnmarshalJSON ¶ added in v8.12.1
type Response ¶ added in v8.7.0
type Response struct {
Shards_ types.ShardStatistics `json:"_shards"`
}
Response holds the response body struct for the package forgetfollower