func()

in internal/mode/advanced/elastic/client.go [299:336]


func (c *Client) DeleteFromRolledOverIndices(params *DeleteFromRolledOverIndicesParams) error {
	res, err := c.Client.Aliases().
		Index(params.AliasName).
		Pretty(true).
		Do(context.TODO())

	if err != nil {
		return err
	}

	// There are no rolled over indices yet
	if len(res.Indices) <= 1 {
		return nil
	}

	for indexName, indexDetails := range res.Indices {
		for _, aliasInfo := range indexDetails.Aliases {
			if aliasInfo.AliasName != params.AliasName || aliasInfo.IsWriteIndex {
				continue
			}

			logkit.WithFields(
				logkit.Fields{
					"search_curation": indexName,
					"doc_id":          params.DocId,
					"doc_type":        params.DocType,
				},
			).Debugf("Deleting doc `%s` from rollover index %s", params.DocId, indexName)
			c.Delete(&DeleteParams{
				Index:   indexName,
				DocId:   params.DocId,
				Routing: params.Routing,
			})
		}
	}

	return nil
}