(ctx context.Context, key string)
| 115 | } |
| 116 | |
| 117 | func (c *Client) Delete(ctx context.Context, key string) error { |
| 118 | resp, _, err := c.kv.Query(ctx, dynamodbKey{primaryKey: key}, false) |
| 119 | if err != nil { |
| 120 | level.Warn(c.logger).Log("msg", "error Delete", "key", key, "err", err) |
| 121 | return err |
| 122 | } |
| 123 | |
| 124 | for innerKey := range resp { |
| 125 | err := c.kv.Delete(ctx, dynamodbKey{ |
| 126 | primaryKey: key, |
| 127 | sortKey: innerKey, |
| 128 | }) |
| 129 | if err != nil { |
| 130 | level.Warn(c.logger).Log("msg", "error Delete", "key", key, "innerKey", innerKey, "err", err) |
| 131 | return err |
| 132 | } |
| 133 | } |
| 134 | c.deleteStaleData(key) |
| 135 | |
| 136 | return err |
| 137 | } |
| 138 | |
| 139 | func (c *Client) CAS(ctx context.Context, key string, f func(in any) (out any, retry bool, err error)) error { |
| 140 | bo := backoff.New(ctx, c.backoffConfig) |
nothing calls this directly
no test coverage detected