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

Copied to clipboard!
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

Copied to clipboard!
try{
  kuzzle.getIndex().refreshInternal();

  System.out.println("Internal index successfully refreshed");
} catch (KuzzleException e) {
  System.err.println(e.getMessage());
}