Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions doc/dev/api/TODO.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@

TODO
----


Finish in a scope of the current ticket DM-42005 before the X-Mas break:

- [**x**] Think about the locking mechanism of the method WorkerHttpRequest::toJson(). The method
acquires a lock on the mutext while the request may too have a lock on the same mutex
while processing the request in WorkerHttpRequest::execute(). This may result in a deadlock.
Perhaps no locking is needed as all since the resulting data are not lock sencitive?
- [**x**] Finish implementing a hierachy of the HTTP-based worker requests
- [**x**] Finish implementing the request processor for these requests
- [**x**] Add the new service to the Condfiguration and Registry to allow the Controller to send requests
to the worker via HTTP
- [**x**] Display connection parameters of the new service on the Web Dashboard
- [ ] Document the REST services in the documentation tree.
- [ ] Manually test the new implementation externally using ``curl`` or Python's ``requests`` module.
Think about the test cases to cover the new implementation.
- [ ] Extend the integration tests to cover the new implementation.

Finish in a scope of a separate ticket during/after the X-Mas break:

- [ ] Implement the MessengerHttp on the Controller side of the protocol. The class will
be providing the multiplexing API for the Controller to send requests to the worker.
The initial implementation will be based on the simple http::AsyncReq.
- [ ] Create a parallel hierarchy of the HTTP-based request & job classes on the Controller
side of the protocol.
- [ ] Test the new classes.
- [ ] Implement the MessengerHttp to reuse the socket connections for sending multiple requests
to the same worker.
- [ ] Test the new implementation to ensure it works the same way as the old one.
- [ ] Remove the old implementation of the Controller - Worker protocol.

4 changes: 3 additions & 1 deletion doc/dev/api/index.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.. note::

Information in this guide corresponds to the version **52** of the Qserv REST API. Keep in mind
Information in this guide corresponds to the version **56** of the Qserv REST API. Keep in mind
that each implementation of the API has a specific version. The version number will change
if any changes to the implementation or the API that might affect users will be made.
The current document will be kept updated to reflect the latest version of the API.
Expand All @@ -14,3 +14,5 @@ The internal REST API of Qserv

introduction
repl-registry
repl-worker
TODO
Loading
Loading