Backward Compatibility

This section discusses scenarios where different server versions need to coexist with different agent library versions, scenarios where existing agents get upgraded, or two different versions of agents are managing two different versions of the product.

Coexistence of Server Versions and Agent Library Versions

Server 1.0.0 1.0.0 Hotfix 1.0.x 1.1.0 1.1.x 1.2.0 1.3.0 2.0.0 2.1.0
Agent Library
1.0.0 Yes Yes Yes Yes Yes Yes Yes Yes Yes
1.0.0 Hotfix Yes Yes Yes Yes Yes Yes Yes Yes Yes
1.0.x Yes Yes Yes Yes Yes Yes Yes Yes Yes
1.1.0 No No No Yes Yes Yes Yes Yes Yes
1.1.x No No No Yes Yes Yes Yes Yes Yes
1.2.0 No No No No No Yes Yes Yes Yes
1.3.0 No No No No No No Yes Yes Yes
2.0.0 No No No No No No No Yes Yes
2.1.0 No No No No No No No No Yes
Note: Agents built with a higher version of the library cannot be registered with a lower version of the server.

Upgrading Existing Agents

Consider a scenario where you have a version of an agent installed. Later, you upgrade to a newer version of the agent. Assuming the Agent ID and the Agent URL do not change, the following holds true:
  • The UI rendered depends on the newer version of the agent.
  • The name of the Agent Type does not change.
  • Views and roles do not change.
  • Old agents are not running.
  • Downgrade is supported.

Agent Type and Version Coexistence

Consider a scenario when two different versions of agents are managing two different versions of the product. Then the following holds true:
  • The Agent Type name is the same.
  • The Agent ID or Agent URL must be different.
  • The information must be merged from different agents.
  • Operations on shared objects do not change.
  • The UI displays the latest TopLevelTeaObject.
  • Only nondestructive changes are allowed on Operations of the TopLevelTeaObject.
  • The GroupBy Type operation on the server goes to the correct version of the object.