You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, once a task is assigned to the robot, it will get "stored" in a fleet adapter internal task queue. For whatever reason that triggers a fleet adapter restart, the assigned tasks will get lost after the restart. Therefore, task recovery capability is quite crucial in a RMF system. (for example, user will often update the fleet adapter pod to a newer release, which requires a restart).
There's a pending PR which tries to implement the task backup feature: #161
In this pr, the task logs and backup are stored in a form of a db, in this case, .sqlite format.
Here, An extended proposal is to leverage on the existing rmf-web system. Since we already update the rmf-web persistence db
via WebSocket (with server_uri param), the fleet adapter can also query the same database during restart. This results in a simpler architecture. Furthermore, similar to the usage of Tortoise ORM in the api-server, the fleet adapter should also use an ORM to support various db. (eg. postgresql, sqlite...)
flowchart LR
A[Fleet Adapter] -->|ws broadcast states| B(rmf-web: api server)
B <-->|orm| D[database]
A <-->|orm| D[database]
Loading
The text was updated successfully, but these errors were encountered:
Currently, once a task is assigned to the robot, it will get "stored" in a fleet adapter internal task queue. For whatever reason that triggers a fleet adapter restart, the assigned tasks will get lost after the restart. Therefore, task recovery capability is quite crucial in a RMF system. (for example, user will often update the fleet adapter pod to a newer release, which requires a restart).
There's a pending PR which tries to implement the task backup feature: #161
In this pr, the task logs and backup are stored in a form of a db, in this case,
.sqlite
format.Here, An extended proposal is to leverage on the existing
rmf-web
system. Since we already update thermf-web
persistence dbvia WebSocket (with
server_uri
param), the fleet adapter can also query the same database during restart. This results in a simpler architecture. Furthermore, similar to the usage of Tortoise ORM in theapi-server
, the fleet adapter should also use an ORM to support various db. (eg. postgresql, sqlite...)The text was updated successfully, but these errors were encountered: