RefreshInternal #
When writing or deleting security and internal documents (users, roles, profiles, configuration, etc.) in Kuzzle, the update needs to be indexed before being reflected in the search index.
The refreshInternal
action forces a refresh, on the internal index, making the documents available to search immediately.
A refresh operation comes with some performance costs.
From the Elasticsearch documentation:
"While a refresh is much lighter than a commit, it still has a performance cost. A manual refresh can be useful when writing tests, but don’t do a manual refresh every time you index a document in production; it will hurt your performance. Instead, your application needs to be aware of the near real-time nature of Elasticsearch and make allowances for it."
Arguments #
void refreshInternal() throws io.kuzzle.sdk.KuzzleException;
void refreshInternal(io.kuzzle.sdk.QueryOptions options) throws io.kuzzle.sdk.KuzzleException;
Arguments | Type | Description |
---|---|---|
options | io.kuzzle.sdk.QueryOptions | Query options |
Options #
The options
arguments can contain the following option properties:
Property | Type (default) | Description |
---|---|---|
queuable | boolean (true) | If true, queues the request during downtime, until connected to Kuzzle again |
Exceptions #
Throws a io.kuzzle.sdk.KuzzleException
if there is an error. See how to handle error.
Usage #
try{
kuzzle.getIndex().refreshInternal();
System.out.println("Internal index successfully refreshed");
} catch (KuzzleException e) {
System.err.println(e.getMessage());
}