Skip to content

feiskyer/grpc-examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Helloworld example for examining version control of grpc.

Expected behavior when updating client version:

Supposing the version of client is newer than server, expected behaviors on following scenarios:

  • Adding new interfaces: the call to the server will report an error. This is expected.
  • Removing a interface: client will no longer call the removed interface, so there is no problem.
  • Updating a message by adding a field: client could continue make request with old versioned server, but server don't see newly added field, which is expected.
  • Updating a message by deprecating a field: by following the rule, although it is deprecated, old server won't realize any difference if the deprecated field is continue setting value.
  • Removing a message: this should be included on above cases (interface's request/response message couldn't be removed unless the interface is also removed togather, all other messages are field of request/response message).