forked from opensearch-project/opensearch-go
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Draft: Add Err() function to Response for detailed errors (opensearch…
…-project#246) * opensearchapi: Add Error type Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * opensearchapi: Add Err() function to response Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * opensearchapi: Remove unneded IsError check Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * opensearchapi: Add tests for reponse.Err() function Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * opensearchutil: Remove unneded IsError() check Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * USER_GUIDE: Remove IsError check, improve example, add error.As example Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * opensearchapi: Check reponse body for errors in all api types Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * Update CHANGELOG.md Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * opensearchapi: Adjust benchmarks to not brake on wanted Response Errors Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> * Add UPGRADING.md Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> --------- Signed-off-by: Jakob Hahn <jakob.hahn@hetzner.com> Co-authored-by: Daniel (dB.) Doubrovkine <dblock@dblock.org>
- Loading branch information
Showing
157 changed files
with
374 additions
and
225 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
- [Upgrading Opensearch GO Client](#upgrading-opensearch-go-client) | ||
- [Upgraading to >= 3.0.0](#upgrading-to->=-3.0.0) | ||
- [opensearchapi](#opensearchapi-error-handling) | ||
|
||
# Upgrading Opensearch GO Client | ||
|
||
## Upgrading to >= 3.0.0 | ||
|
||
### opensearchapi error handling | ||
With opensearch-go >= 3.0.0 opensearchapi responses are now checked for errors. | ||
Prior versions only returned an error if the request failed to execute. For example if the client can't reach the server or the TLS handshake failed. | ||
With opensearch-go >= 3.0.0 each opensearchapi requests will return an error if the response http status code is > 299. | ||
The error can be parsed into the new opensearchapi.Error type by using `errors.As` to match for exceptions and get a more detailed view. See the example below. | ||
|
||
```go | ||
createIndex := opensearchapi.IndicesCreateRequest{ | ||
Index: IndexName, | ||
Body: mapping, | ||
} | ||
ctx := context.Background() | ||
var opensearchError *opensearchapi.Error | ||
createIndexResponse, err := createIndex.Do(ctx, client) | ||
// Load err into opensearchapi.Error to access the fields and tolerate if the index already exists | ||
if err != nil { | ||
if errors.As(err, &opensearchError) { | ||
if opensearchError.Err.Type != "resource_already_exists_exception" { | ||
return err | ||
} | ||
} else { | ||
return err | ||
} | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.