Version Phase Out
This section describes the consideration for phasing out old version agents.
Once the Rollout is complete for a new version, the older version should be phased out. Older version agents will be shutdown during these scenarios and the next higher version agent will process the older version jobs.
- Among all the OMS enterprise server deployments, the lowest rollout version is identified as the base version.
- This means any agent running in base version mode(IsBaseVersion=Y) looks for data which is created from same version or lower.
- Agent servers belonging to Rollout Version greater than base version(IsBaseVersion=N) would look for transaction data only with the same version as the agent’s Rollout Version.
The IsBaseVersion flag is passed in the agent Criteria parameter.
- EnableMultiVersionSupport=Y: Enables the multiversion support for the agent.
- EnableMultiVersionSupport=N: Disables the multiversion support for the agent.
- IsBaseVersion=Y: Process all transaction data with rollout version same as or lower than the agent Server’s rollout version. This would also process transaction data that is not version tagged.
- IsBaseVersion=N: Process all transaction data with rollout version same as the agent Server’s rollout version.
Version Phase Out is explained below with the following example:
In an edge server deployment setup, OMS retail stores exist in the versions V1,V2 and V3(OMSedge V1, OMSedge V2, OMSedge V3) which send data to respective Corporate OMS instances with versions V1,V2 and V3(OMScorporate V1, OMScorporate V2, OMScorporate V3) where the transaction records are created.
At the time of creation, the records are stamped with the rollout versions of the respective Corporate OMScorporate instances.
The IsBaseVersion parameter is passed as true in the AgentCriteria parameters for V1 agent as V1 is the lowest version.
Transaction(Driver Entity) Data Records | ROLLOUT_VERSION |
---|---|
REC_1 | V1 |
REC_2 | V2 |
REC_3 | V3 |
REC_4 | NULL |
Agent Server Rollout Version | Agent Criteria Parameter -IsBaseVersion | Transaction Data Version (processed by agent server |
---|---|---|
V1 | Y | V1, NULL |
V2 | N | V2 |
V3 | N | V3 |
With Multi Version support for the agents, Agents V1, V2 and V3 pick transaction data created from OMScorporate V1,V2 and V3 respectively.
Once all the Stores have moved to V2, that is, all instances of OMSedge V1 are now upgraded to OMSedge V2, the agents at Enterprise level for OMScorporate V1 can now be stopped.
This is followed by updating the IsBaseVersion in agentCriteria param to true for the agent V2.
Agent Server Rollout Version | Agent Criteria Parameter -IsBaseVersion | Transaction Data Version (processed by agent server) |
---|---|---|
V2 | True | V1 , V2 and NULL |
V3 | False | V3 |
So with V2 being the base version, V2 agents would pick data created from the same Rollout Version V2 as well as any lower version(including data with Rollout Version set as blank) so in this case its V1 , V2 and <Blank>. V3 would continue to process data with Rollout Version V3.