-
Notifications
You must be signed in to change notification settings - Fork 24.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove HLRC from ES codebase #83423
Comments
Pinging @elastic/es-data-management (Team:Data Management) |
We are in the process of removing the High Level Rest Client from the ES codebase. This starts by removing all the HLRC tests themselves so that the other usages can be removed incrementally. Relates to elastic#83423
We are in the process of removing the High Level Rest Client from the ES codebase. This starts by removing all the HLRC tests themselves so that the other usages can be removed incrementally. Relates to #83423
It was used in the SLM permissions tests to check permissions for policy and retention CRUD. This commit replaces it with the LLRC equivalent. Relates to elastic#83423
It was used in the SLM permissions tests to check permissions for policy and retention CRUD. This commit replaces it with the LLRC equivalent. Relates to #83423
The High Level Rest Client (HLRC) is deprecated and is no longer shipped as a standalone artifact. It can now be safely removed from the ES codebase. This commit removes all security methods from the HLRC "SecurityClient", along with their associated Request/Response classes. All remaining methods and classes are used by existing tests and will need to be reviewed. Relates: elastic#83423
The High Level Rest Client (HLRC) is deprecated and is no longer shipped as a standalone artifact. It can now be safely removed from the ES codebase. This commit removes unused security methods from the HLRC "SecurityClient", along with their associated Request/Response classes. All remaining methods and classes are used by existing tests and will need to be reviewed. Relates: #83423
Removes the `enableUser` and `disableUser` methods from the High Level Rest Client's `SecurityClient` and replaces existing usage in tests with a helper method. Relates: elastic#83423
Removes the `enableUser` and `disableUser` methods from the High Level Rest Client's `SecurityClient` and replaces existing usage in tests with a helper method. Relates: #83423
Removes the following methods from the SecurityClient component of the High Level Rest Client - putUser - deleteUser - changePassword - authenticate As part of this change, I renamed the SecurityClientTestHelper class to TestSecurityClient and made it a real object rather than a set of utility methods. This was needed because different tests need different RequestOptions objects, but passing it into every method made it cumbersome. The code is clearer if we use a field in the test client itself. Relates: #83423
This commit removes role and role-mapping related methods from the High Level Rest Client, and adds light weight replacements to the TestSecurityClient Relates: elastic#83423
Pinging @elastic/clients-team (Team:Clients) |
Only 8 public (well, edit: And only ten classes that import the HLRC:
|
I chatted with @nik9000 about these four classes today, and he brought up #26220. Those classes do still (or, well, may still) have value w.r.t. to testing bwc of json responses. Adding better testing of that via our normal rest tests is under the banner of #26220, so at some point I expect that we'll just be able to drop those entirely, as long as we're sure the for-testing-bwc-purposes value of them has already been captured elsewhere. |
I think it's worth confirming that we get good coverage of the json response in the yaml tests and then removing our usage of the classes in ES. It's a little bit of surgery, but we are capable of it. |
Only two more test classes left using |
FYI: #102049 |
FYI: #102222 |
#102305 drops
There are still five classes remaining in |
Not much change since November, there are three classes remaining in |
FYI: #105294 |
Description
With the launch of the new Java client the Elasticsearch High Level Rest Client (HLRC) is deprecated, no longer shipped as an artifact, and can be removed from the ES codebase. This meta issue is to track the the removal of the HLRC for 8.x.
Steps (subject to change):
RestClient
. These classes can be found inside ofRestHighLevelClient.java
IndicesClient
(indices()
) (@martijnvg, Remove HLRC IndicesClient and related classes. #85492)ClusterClient
(cluster()
) (@gmarouli, Remove Cluster & XPack clients from HLRC (#83423) #83593)IngestClient
(ingest()
) (@martijnvg, Remove HLRC IngestClient class. #85483)SnapshotClient
(snapshot()
) (@dakrone, Remove SnapshotClient from HLRC #85845)TasksClient
(tasks()
) (@danhermann, Remove tasks client from HLRC #83649)XPackClient
(xpack()
) (@gmarouli, Remove Cluster & XPack clients from HLRC (#83423) #83593)GraphClient
(graph()
) (@danhermann, Remove graph client from deprecated HLRC #83471)IndexLifecycleClient
(indexLifecycle()
) (@dakrone, Remove IndexLifecycleClient from High Level Rest Client #83476)SearchableSnapshotsClient
(searchableSnapshots()
) (@dakrone, Remove HLRC's SearchableSnapshotsClient #85472)FeaturesClient
(features()
) (@danhermann, Remove features client from HLRC #83651)MigrationClient
(migration()
) (@joegallo, Remove MigrationClient from High Level Rest Client #83609)MachineLearningClient
(machineLearning()
) ([ML] Remove uses of ML HLRC classes #83885, [ML] Delete ML HLRC client and request/response classes #83912)SecurityClient
(security()
)TransformClient
(transform()
) ([Transform] Remove HLRC Transform client #83921)EqlClient
(eql()
) (@joegallo, Remove EqlClient from HLRC #85730)CcrClient
(ccr()
)WatcherClient
(watcher()
)EnrichClient
(enrich()
)LicenseClient
(license()
)TextStructureClient
(textStructure()
)AsyncSearchClient
(asyncSearch()
)RollupClient
(rollup()
)RestHighLevelClient
RestHighLevelClient(RestClientBuilder restClientBuilder) (constructor)
getLowLevelClient()
close()
bulk(BulkRequest bulkRequest, RequestOptions options)
bulkAsync(BulkRequest bulkRequest, RequestOptions options, ActionListener<BulkResponse> listener)
reindex(ReindexRequest reindexRequest, RequestOptions options)
updateByQuery(UpdateByQueryRequest updateByQueryRequest, RequestOptions options)
deleteByQuery(DeleteByQueryRequest deleteByQueryRequest, RequestOptions options)
info(RequestOptions options)
get(GetRequest getRequest, RequestOptions options)
multiGet(MultiGetRequest multiGetRequest, RequestOptions options)
mget(MultiGetRequest multiGetRequest, RequestOptions options)
multiGetAsync(
mgetAsync(MultiGetRequest multiGetRequest, RequestOptions options, ActionListener<MultiGetResponse> listener)
exists(GetRequest getRequest, RequestOptions options)
existsSource(GetRequest getRequest, RequestOptions options)
existsSourceAsync(GetRequest getRequest, RequestOptions options, ActionListener<Boolean> listener)
getSource(GetSourceRequest getSourceRequest, RequestOptions options)
index(IndexRequest indexRequest, RequestOptions options)
count(CountRequest countRequest, RequestOptions options)
update(UpdateRequest updateRequest, RequestOptions options)
delete(DeleteRequest deleteRequest, RequestOptions options)
search(SearchRequest searchRequest, RequestOptions options)
searchAsync(SearchRequest searchRequest, RequestOptions options, ActionListener<SearchResponse> listener)
multiSearch(MultiSearchRequest multiSearchRequest, RequestOptions options)
msearch(MultiSearchRequest multiSearchRequest, RequestOptions options)
multiSearchAsync(
msearchAsync(
searchScroll(SearchScrollRequest searchScrollRequest, RequestOptions options)
scroll(SearchScrollRequest searchScrollRequest, RequestOptions options)
searchScrollAsync(
scrollAsync(
explain(ExplainRequest explainRequest, RequestOptions options)
termvectors(TermVectorsRequest request, RequestOptions options)
fieldCaps(FieldCapabilitiesRequest fieldCapabilitiesRequest, RequestOptions options)
As each sub client is removed its creator inside of
RestHighLevelClient
to indicate that portion of the removal is "done".The text was updated successfully, but these errors were encountered: