Hello Tidy Bot, Zoltan Chovan, Attila Bukor, Kudu Jenkins, Andrew Wong,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/17555
to look at the new patch set (#51).
Change subject: [rest] add rest implementation
......................................................................
[rest] add rest implementation
Using Oat++ framework and kudu client a controller has been
generated to map the requests to respective endpoints. To avoid
potential issues due to rest server receiving requests before master
servers are up, a client is generated to serve the each individual
request. Data Transfer Objects of Oat++ framework have been introduced
to correctly display the required JSON Schemas in the Swagger component
and to parse the incoming/outgoing data in the correct format. Running
the server will block the calling thread.
As the server uses a kudu client for the requests, and kudu client needs
to know the addresses of the master servers, the better choice was to
embed into the master, instead of having a seperate server. This also
has the benefit of keeping the endpoint alive in case one of the master
servers stop. The rest endpoint is off by default and requires a bind
adress(default 0.0.0.0:8061), which can be provided by flags. A seperate
threadpool takes care of running the rest endpoint, not to block the
master server.
An integration test is included, which checks all of the endpoints by
sending a request to them and asserting the incoming response. The bind
address for the rest is set dynamically at each test case.
Change-Id: I2ca3121fd7e95a1267853be45cb5f5855298c763
---
M CMakeLists.txt
M src/kudu/integration-tests/CMakeLists.txt
A src/kudu/integration-tests/rest_server-itest.cc
M src/kudu/master/CMakeLists.txt
M src/kudu/master/master.cc
M src/kudu/master/master.h
A src/kudu/rest/CMakeLists.txt
A src/kudu/rest/controller.cc
A src/kudu/rest/controller.h
A src/kudu/rest/dto/alter_table_dto.h
A src/kudu/rest/dto/column_dto.h
A src/kudu/rest/dto/status_dto.h
A src/kudu/rest/dto/table_schema_dto.h
A src/kudu/rest/rest_server.cc
A src/kudu/rest/rest_server.h
15 files changed, 1,019 insertions(+), 0 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/55/17555/51
--
To view, visit http://gerrit.cloudera.org:8080/17555
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I2ca3121fd7e95a1267853be45cb5f5855298c763
Gerrit-Change-Number: 17555
Gerrit-PatchSet: 51
Gerrit-Owner: Khazar Mammadli <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: Attila Bukor <[email protected]>
Gerrit-Reviewer: Khazar Mammadli <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Zoltan Chovan <[email protected]>