Skip to content

Upgrade Notes

3.11.2 -> 3.11.3

Database Migration

When upgrading from a version <3.11.0 to >=3.11.3 it is no longer necessary to apply the database migration steps described in 3.10.1 -> 3.11.0, they will be executed automatically when upgrading to 3.11.3 and later.

3.11.1 -> 3.11.2

Detection Models

The detection models have been upgraded and will have to be optimized again.

Warning

The first start of the software will take up to 30 minutes while optimizations for the underlying hardware are deployed. Frontend and API will be available right away, but none of the applications will run.

3.10.1 -> 3.11.0

Database Migration

There are mandatory database migrations which must be applied by running the following commands before launching the newest update. Make sure the version in .env is already set to 3.11.0 and all docker images are properly loaded.

# Stop software
docker compose down
# Start database only
docker compose up -d database-server
# Run migrations
docker compose run -it --rm backend-server /bin/sh -c "yarn fakemigrate"
# Launch the rest of the software
docker compose up -d

3.9.0 -> 3.10.1

GPU Driver

NVIDIA GPU driver version has been upgraded to version 535. New driver version has to be installed from APT sources prior to launching the new 3.10.1 version.

Detection Models

The detection models have been upgraded and will have to be optimized again.

Warning

The first start of the software will take up to 30 minutes while optimizations for the underlying hardware are deployed. Frontend and API will be available right away, but none of the applications will run.

Cache Reset

Upgrade requires a reset of chached data and current messages in cache-server and message-broker. Regularly shut down the software and run the following command on the master node before upgrading from version 3.9.0 to 3.10.1 to perform this reset.

docker volume rm perception_cache perception_messages

Orchestration

Version 3.10.1 makes multiple changes to orchestration. The following changes have to be applied to the docker-compose.yml and .env files during the upgrade process:

  • database-server has a new shm_size: 2g property.
  • stream-server, inference-server, camera-application, object-count-application and crowd-count-application now have access to the environment variable NUM_GPUS_PER_NODE=${NUM_GPUS_PER_NODE}.
  • inference-server furthermore now has access to the environment variable PLATFORM=${PLATFORM}.
  • The command property of inference-server has been changed.
  • inference-server and object-flow-application services have a new set of properties deploy/resources/reservations.
  • mqtt-adapter no longer has the deploy/replicas and deploy/placement properties and has a new placement constraint to manager node.
  • The environment variables MQTT_ADAPTER_REPLICAS and MQTT_ADAPTER_MAX_PER_NODE have been removed.
  • Six new services have been introduced, including inference-server1..3 and object-flow-application1..3.
  • The environment variables OBJECT_FLOW_APPLICATION_REPLICAS and OBJECT_FLOW_APPLICATION_MAX_PER_NODE now represent the number of object flow applications and max number of object flow applications per-GPU instead of per-node, respectively.
  • A new environment variable COMPOSE_PROFILES=${NUM_GPUS_PER_NODE}GPUS has been introduced and needs to be set at the end of the .env file.

3.7.1 -> 3.8.0

GPU Driver

NVIDIA GPU driver version has been upgraded to version 525. New driver version has to be installed from APT sources prior to launching the new 3.8.0 version.

Docker Compose

Docker Compose has been upgraded to version 2.14.1 and is now a docker cli plugin. All previous commands which ran docker-compose will now be launched with docker compose instead, ommitting the hyphen. Installation and also versioning is now part of the default docker install and corresponding APT sources.

Detection Models and GPU Compatibility

Isarsoft Perception is now agnostic to the underlying GPU model. It is no longer necessary to specify the device string in the environment file. Isarsoft Perception will instead do runtime optimizations the very first time the software is launched. This process can take up to 30 minutes.

Warning

The first start of the software will take up to 30 minutes while optimizations for the underlying hardware are deployed. Frontend and API will be available right away, but none of the applications will run.

Orchestration

Version 3.8.0 makes multiple changes to orchestration. The following changes have to be applied to the docker-compose.yml and .env file during the upgrade process:

  • All image tags have been changed to conform with semantic versioning. The 'v' prefix is now ommitted. To apply this change to an existing docker-compose.yml file, search and replace 'v${VERSION}' with '${VERSION}' to remove any prefix 'v'.
  • The inference-server component has changes to its volumes, environment and command definitions.
  • A new environment flag ANONYMIZE has been introduced and must be added to the components object-count-application, object-flow-application, stream-server and camera-application under the environment definition. Furthermore it must be added in the .env file as ANONYMIZE=ON under APPLICATION SETTINGS.
  • All lines and commented out lines starting with DEVICE= can be removed from the .env file.

3.6.4 -> 3.6.5

Cache Reset

Upgrade requires a reset of chached data and current messages in cache-server and message-broker. Regularly shut down the software and run the following command on the master node before upgrading from version 3.6.4 to 3.6.5 to perform this reset.

docker volume rm perception_cache perception_messages

3.6.3 -> 3.6.4

Cache Reset

Upgrade requires a reset of chached data and current messages in cache-server and message-broker. Regularly shut down the software and run the following command on the master node before upgrading from version 3.6.3 to 3.6.4 to perform this reset.

docker volume rm perception_cache perception_messages

Orchestration

Version 3.6.4 introduces the new service cayuga-adapter to the orchestration. The respective change in docker-compose.yml is the new definition for the service cayuga-adapter. Update docker-compose.yml accordingly before upgrading to version 3.6.4.