How to upgrade to yuuvis RAD 7.0

  • Before you start:

    1. Stop the Elasticsearch 7.2.1 service.

    2. Stop the 6.x core-service.

    3. Stop the 6.x service-manager service. 


  • Elasticsearch 7.2.1 -> 7.9.3. Elasticsearch 7.2.1 needs to be replaced by version 7.9.3. To do this, version 7.2.1 needs to be uninstalled and version 7.9.3 installed an configured as follows:

    • Stop the Elasticsearch 7.2.1 service.

    • If the data directory is located inside the installation path of Elasticsearch 7.2.1, move it outside and/or make a backup.

    • Backup the <elasticsearch>\config\elasticsearch.yml and <elasticsearch>\config\built-in.usr files.

    • Uninstall Elasticsearch 7.2.1.

    • Install Elasticsearch 7.9.3 as described here: Installation Guide Version 7.0

    • Before you start the service:

      • Transfer custom settings from the backed-up elasticsearch.yml file to the newly installed file.
      • Copy / move the backed-up built-in.usr file to the new <elasticsearch>\config folder.
      • If needed, move the data directory to the desired location.
      • Make sure the "path.data" property points to the (moved) data directory of Elasticsearch 7.9.3.
    • Start the service and check that the cluster state is green and contains the yuuvis RAD indices.


  • The URL for calling the client as well as the management studio is changed from https://<domain>/enaio/client and https://<domain>/enaio/management to https://<domain>/app/client and https://<domain>/app/management.
    There are three changes that have to be done manually:
    • Change the 'Client path'
      Open the management studio / System / Global / Gateway access and change the 'Client path' to 'app/client' (or as you have customized for your own setup).
    • Change the gateway settings
      Open the file <service-manager>\config\gateway-prod.yml and all other gateway-*.yml files if setup on your own, and change the marked points from 'enaio' to 'app':



    • Change the agent connection settings
      In the agent, open the connection, edit the client path by changing 'enaio' to 'app' as shown on the picture:

       

    • All Browser-Favorites, Forwarding-URLs, etc. need to be updated to the new URL. 


  • Custom clients: The client has been updated to Angular 11 including its library
    • In case of updating to version 7.0 or later, it is necessary to update your custom client to Angular 11
      1. git fetch --all
      2. git branch -r
      3. look for branch <remote>/angular11  (<remote> name depends on your setup)
      4. In case of branch missing, please setup your git remote and repeat instructions from STEP 1 (git remote add eo-sdk https://github.com/OPTIMALSYSTEMS/eo-sdk-boilerplate.git)
      5. git merge <remote>/angular11
      6. In case of merge conflicts, try to resolve them (it's recommended to take all incoming changes)
      7. Remove node_modules folder & package-lock.json
      8. npm install
      9. npm start
      10. In case you discover errors, make sure your custom libraries (dependencies) are compatible with Angular 11
      11. From now you need to update custom client with specific tag  >>> eo update --@^7.0.0


  • The core-service is now a publisher/consumer of the ActiveMQ Queues of the messaging-service. Therefore, if the core-service and the service-manager are hosted on different servers, the URLs saved in the application-mq.yml config-file of the service-manager need to be adapted as follows:
    • Open the file <service-manager>\config\application-mq.yml
    • For the properties "spring.activemq.broker-url" and "spring.activemq.broker-url-stomp" the IP parts of the URLs (127.0.0.1 by default) need to be changed to the public IP or hostname of the server hosting the messaging-service.
      (If only one service-manager exists, this is the public IP or hostname of the service-manager.)
    • Make sure that the server hosting the core-service can access the messaging-service using this IP (i.e. check firewall rules etc.).


  • For Oracle DBs only:
    • A new connection property needs to be added to the core-service jdbc connection string
      • Open the file <core-service>\standalone\configuration\standalone-full-ha.yml
      • Naviagte to the line "<subsystem xmlns="urn:jboss:domain:datasources:5.0">" and there to "<datasource jndi-name="java:/JASDB"..."
      • Add a new line under the line "<connection-url>" and write the following: <connection-property name="CatalogOptions">0</connection-property>
      • It should now look like this:


    • The oracle schema name configuration is removed from the file jas-deployment.xml.
      The oracle schema was configurable inside this file by providing a 'use-db-schema' property for the step 'setup-dataaccess'. This property is not used any more and the jas-deployment.xml file is overwritten by the setup on update.
      By default, the oracle schema name is equal to the upper case user name and this is now used automatically.

      If you have the case / the requirement, that the schema name is different from the upper case user name, please configure it as follows:
      • Open the file <core-service>\standalone\configuration\standalone-full-ha.yml
      • Naviagte to the line "<subsystem xmlns="urn:jboss:domain:datasources:5.0">" and there to "<datasource jndi-name="java:/JASDB"..."
      • Add the following new line under the line beginning with "<connection-property": <new-connection-sql>ALTER SESSION SET current_schema=schemaname</new-connection-sql>
        Replace 'schemaname' with the name of the schema. (Do not use any quotation marks.)
        It should now look like this:


  • As described in What Is New 7.0 (Removed Features) two functional rights have been deprecated and removed and must be deleted from all roles of a project in the role management in the designer prior to activating it to a 7.x system. 
    • When checking (validating) a schema in the designer you will see the following validation errors:


    • To resolve this, open the "functional rights" view of the affected roles. Uncheck all roles under the "Miscellaneous" section:
    • Save the project. It can now be activated to a 7.x system.

      Warning

      Do not use this project for 6.x (or below) systems anymore. The removed rights were used by e.g. the management-studio and you might not be able to access it anymore if these rights are missing.

  • As described in What Is New 7.0 (Removed Features) the deprecated methods GET /api/bpm/process (get "My processes") and GET /api/bpm/process/user (get processes for a certain user, if requester has administrative rights) have been removed.
    If they have been used in the project (client scripts, workflow scripts, custom microservices, etc.), their replacement /api/bpm/processes (for "My processes") must be used instead, and corresponding methods in core-service for administrative purposes.
    The same applies to the deprecated and removed parameters, as also described in What Is New 7.0


  • As described in What Is New 7.0 (Removed Features) ETL configurations using an XML file as the data source (extraction part) will not be supported anymore. Also, the execution of scripts is not possible anymore. Different to version 6.x even already existing configurations will not function anymore. Please preapre an import routine using external tools like talend-jobs or alike before upgrading.