-
Notifications
You must be signed in to change notification settings - Fork 353
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[CELEBORN-1607] Enable
useEnumCaseInsensitive
for openapi-generator
### What changes were proposed in this pull request? Enable `useEnumCaseInsensitive` for openapi-generator. And then in celeborn server end, the enum will be mapped to celeborn internal WorkerEventType. ### Why are the changes needed? I met exception when sending worker event with openapi sdk. ``` Exception in thread "main" ApiException{code=400, responseHeaders={Server=[Jetty(9.4.52.v20230823)], Content-Length=[491], Date=[Fri, 20 Sep 2024 23:50:27 GMT], Content-Type=[text/plain]}, responseBody='Cannot deserialize value of type `org.apache.celeborn.rest.v1.model.SendWorkerEventRequest$EventTypeEnum` from String "DecommissionThenIdle": not one of the values accepted for Enum class: [DECOMMISSION_THEN_IDLE, GRACEFUL, NONE, DECOMMISSION, IMMEDIATELY, RECOMMISSION] at [Source: (org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$UnCloseableInputStream); line: 1, column: 14] (through reference chain: org.apache.celeborn.rest.v1.model.SendWorkerEventRequest["eventType"])'} at org.apache.celeborn.rest.v1.master.invoker.ApiClient.processResponse(ApiClient.java:913) at org.apache.celeborn.rest.v1.master.invoker.ApiClient.invokeAPI(ApiClient.java:1000) at org.apache.celeborn.rest.v1.master.WorkerApi.sendWorkerEvent(WorkerApi.java:378) at org.apache.celeborn.rest.v1.master.WorkerApi.sendWorkerEvent(WorkerApi.java:334) at org.example.Main.main(Main.java:22) ``` The testing code to re-produce: ``` package org.example; import org.apache.celeborn.rest.v1.master.WorkerApi; import org.apache.celeborn.rest.v1.master.invoker.ApiClient; import org.apache.celeborn.rest.v1.model.ExcludeWorkerRequest; import org.apache.celeborn.rest.v1.model.SendWorkerEventRequest; import org.apache.celeborn.rest.v1.model.WorkerId; public class Main { public static void main(String[] args) throws Exception { String cmUrl = "http://localhost:9098"; WorkerApi workerApi = new WorkerApi(new ApiClient().setBasePath(cmUrl)); workerApi.excludeWorker(new ExcludeWorkerRequest() .addAddItem(new WorkerId() .host("localhost") .rpcPort(1) .pushPort(2) .fetchPort(3) .replicatePort(4))); workerApi.sendWorkerEvent(new SendWorkerEventRequest() .addWorkersItem(new WorkerId() .host("127.0.0.1") .rpcPort(56116) .pushPort(56117) .fetchPort(56119) .replicatePort(56118)) .eventType(SendWorkerEventRequest.EventTypeEnum.DECOMMISSION_THEN_IDLE)); } } ``` Seems because for the EventTypeEnum, the name and value not the same and then cause this issue. Not sure why the UT passed, but the integration testing failed. For EventTypeEnum, because its value is case sensitive, so we meet this issue. https://github.com/apache/celeborn/blob/8734d1663884345477257d2f10f4c19732c6f1c3/openapi/openapi-client/src/main/java/org/apache/celeborn/rest/v1/model/SendWorkerEventRequest.java#L47-L83 Related issue in jersey end I think, eclipse-ee4j/jersey#5288 In this PR, `useEnumCaseInsensitive` is enabled for openapi-generator. ### Does this PR introduce _any_ user-facing change? No, there is not user facing change and this SDK has not been released yet. ### How was this patch tested? Existing UT and Integration testing. <img width="1265" alt="image" src="https://github.com/user-attachments/assets/6a34a0dd-c474-4e8d-b372-19b0fda94972"> Closes #2754 from turboFei/eventTypeEnumMapping. Authored-by: Wang, Fei <[email protected]> Signed-off-by: mingji <[email protected]>
- Loading branch information
Showing
15 changed files
with
58 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters