The first time you deploy a SOA Composite to SOA Server, a default version label of 1.0 is automatically created. A version identifies a specific deployed instance of a SOA Composite. The version label is appended to the end of the JAR file name created when you deploy the SOA Composite.
If this label version is already deployed and the server mode is production, you are prompted to overwrite the existing version or enter a different version label. If you overwrite the version, the old process definition on the server is replaced by the new definition. You cannot revert to the old definition. In addition, any process instances that ran under the old definition are marked as stale. The stale instances cannot be examined, and all flow and audit information is lost.
If you enter a different version label for the new process definition (for example, 2.0), it is deployed to SOA Server, while the older, deployed process definition (1.0) also continues to run simultaneously on SOA Server. The instances that ran under the old definition are retained, and not marked as stale. You can still examine the flow and audit information for these instances. If the server mode is development, you are not prompted and the version is automatically overwritten.
In a development environment, it is recommended that you always deploy processes to the same version on SOA Server. This way, you avoid marking processes explicitly as the default. The steps to follow for development environment is as follows:
- Design your process.
- Deploy the process to SOA Server (version is 1.0). This becomes the default process for any new instances.
- Redesign the process as needed.
- Redeploy the process as version 1.0 (this is a newer version that overwrites the older version, but version 1.0 remains the default process).
In a production environment, it is recommended that you increment version numbers as you deploy newer versions. For example, if Composite version 1.0 is running in a production environment, then deploy the newer version of Composite to version 2.0. When you have adequately tested and verified your process, mark it as the default. New instances are started using this definition. All version 1.0 instances switch seamlessly to version 2.0. This enables you to decide when a process is ready for production mode. The steps to follow for production environment is as follows:
- Design your process.
- Deploy the process to SOA Server with a different version number (for example, use version 2.0 if the older default version is 1.0).
- Test version 2.0 of the process.
- Activate version 2.0 by marking it as the default process.
Note: Do not overwrite existing versions of a process with newer versions in a production environment. This marks all existing instances of the overwritten process as stale. Stale instances cannot be examined, and all flow and audit information is lost. Instead, create a separate version as described and mark the newer version as the default.