Skip to content
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

[HLD] Update host service to support GCU #1007

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

ganglyu
Copy link
Contributor

@ganglyu ganglyu commented May 26, 2022

Signed-off-by: Gang Lv [email protected]

@ganglyu ganglyu requested a review from qiluo-msft May 26, 2022 04:49
@qiluo-msft
Copy link
Contributor

@mikelazar Could you help review?

@ganglyu ganglyu changed the title [HLD] Update host service for GNMI [HLD] Update host service to support GCU May 30, 2022
@@ -2,7 +2,7 @@
Docker to Host Communications

# High Level Design Document
#### Rev 0.7
#### Rev 0.8
Copy link
Contributor

@qiluo-msft qiluo-msft May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Original document mentioned "translib API", is it really a dependency for applications? #Closed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Management framework uses translib API to invoke dbus service, we can invoke dbus service directly.

@@ -2,7 +2,7 @@
Docker to Host Communications

# High Level Design Document
#### Rev 0.7
#### Rev 0.8
Copy link
Contributor

@qiluo-msft qiluo-msft May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Original document mentioned "The client application module in a container". We need to extend to client application running on the host. #Closed

@@ -2,7 +2,7 @@
Docker to Host Communications

# High Level Design Document
#### Rev 0.7
#### Rev 0.8
Copy link
Contributor

@qiluo-msft qiluo-msft May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Original document mentioned "If multiple D-Bus clients simultaneously issue requests, then each request is queued and
processed in the order received". Is it possible to the requests could be conditional processed in parallel? #Closed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is dbus limitation, it can't process multiple requests for the same service in parallel.

@@ -2,7 +2,7 @@
Docker to Host Communications

# High Level Design Document
#### Rev 0.7
#### Rev 0.8
Copy link
Contributor

@qiluo-msft qiluo-msft May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does DBus host service throw an exception to the client application? #Closed

Copy link
Contributor Author

@ganglyu ganglyu May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dbus client can get exception as error message.

@@ -2,7 +2,7 @@
Docker to Host Communications

# High Level Design Document
#### Rev 0.7
#### Rev 0.8
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the client application decide to cancel a running request, how to? This is practical since gNMI service is serving a gNMI client, and the connection is broken suddenly. If continue running the request in host service may be meaningless or harmful, gNMI service may ask DBust host service to stop the request processing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think dbus has this capability.


"config apply-patch" command could take a few seconds, and D-Bus client should use timeout or asynchronous request.

#### 3.6.4.6 gcu.create_cp
Copy link
Contributor

@qiluo-msft qiluo-msft May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cp -> checkpoint
cp is not a well-known abbreviation. #Closed


# 4 Flow Diagrams

![](images/docker-to-host-service.svg)

# 5 Error Handling
If dbus host service exited abnormally, systemd would restart this service.
Copy link
Contributor

@qiluo-msft qiluo-msft May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the client behavior during dbus host service exited abnormally? #Closed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

client will get a dbus error message.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants