MDelete #
Deletes multiple documents.
Throws a partial error (error code 206) if one or more document deletions fail.
The optional parameter refresh can be used with the value wait_for in order to wait for the document indexation (indexed documents are available for search).
Arguments #
MDelete( index string, collection string, ids []string, options types.QueryOptions) ([]string, error)| Argument | Type | Description |
|---|---|---|
index | string | Index name |
collection | string | Collection name |
ids | []string | The ids of the documents to delete |
options | types.QueryOptions | A struct containing query options |
options #
Additional query options
| Option | Type (default) | Description |
|---|---|---|
Queuable | bool ( true) | If true, queues the request during downtime, until connected to Kuzzle again |
Refresh | string ( "") | If set to wait_for, waits for the change to be reflected for search (up to 1s) |
Return #
Returns a json.RawMessage containing two arrays, successes and errors.
The successes array contain the successfuly deleted document IDs.
Each deletion error is an object of the errors array with the following properties:
| Name | Type | Description |
|---|---|---|
_id | string | Document ID |
reason | string | Human readable reason |
Usage #
ids := []string{"some-id", "some-other-id"} kuzzle.Document.Create( "nyc-open-data", "yellow-taxi", "some-id", json.RawMessage(`{}`), nil) kuzzle.Document.Create( "nyc-open-data", "yellow-taxi", "some-other-id", json.RawMessage(`{}`), nil) deletedJSON, err := kuzzle.Document.MDelete("nyc-open-data", "yellow-taxi", ids, nil) if err != nil { log.Fatal(err) } else { type deletedResult struct { Successes []json.RawMessage `json:"successes"` Errors []json.RawMessage `json:"errors"` } var deleted deletedResult json.Unmarshal(deletedJSON, &deleted) fmt.Printf("Successfully deleted %d documents", len(deleted.Successes)) }