场景:页面删除某条记录,删除完成后系统会立即刷新列表页,结果删除的还在列表页显示,再次点击查询按钮,被删除的数据才会消失
尝试Thread.sleep(1000); 可以解决,但是不友好
DeleteRequest deleteRequest = new DeleteRequest(indexName,id);
deleteRequest.setRefreshPolicy(WriteRequest.RefreshPolicy.IMMEDIATE);
client.delete(deleteRequest, RequestOptions.DEFAULT);
删除时增加刷新策略,立即刷新即可,一定要在client执行前设置
deleteRequest.setRefreshPolicy(WriteRequest.RefreshPolicy.IMMEDIATE);
参考官方api
https://www.elastic.co/guide/en/elasticsearch/reference/7.9/docs-refresh.html