logoBack to home screen

ADx 2.2 (01/04/2020) Release Notes

Overview

This release introduces several key updates, including the following features:

  • Possibility to export and import repository configuration via REST
  • Importing repository contents via REST
  • Possibility to define conversion restrictions on both Conversion- and repository level
  • Rendering contents from Velocity templates via REST
  • Multiple convenience features (executing actions on multiple repositories simultaneously, uploading multiple contents to a folder).

For a detailed list with corresponding documentation links, see New Features and Improvements.

Installation

You can install this release from the provided package. Follow Installation Instructions if you're installing from scratch.

Updating Conversion and ADx

For information on how to update previously installed Conversion and ADx, see the following:

Hardware Requirements for JVMs

We recommend to set up your Java Virtual Machines in accordance with the following requirements:

Memory Minimal Requirements

  • JVM heap memory - at least 4 GB
  • JVM non-heap memory - at least 4 GB
  • Initial heap memory equal to maximum heap memory. You can set the initial and maximum heap size in the installation settings (4 GB each is the default setting).

CPU Minimal Requirements

  • Minimum 2 CPUs
  • Maximum depends on your load.

Memory and CPU Scaling

In principle, we recommed to double the memory in GB compared to the number of CPUs, keeping the minimal values in mind. Heap memory size should be equal to non-heap memory size.

Vertical Scaling

Memory (GB) = 2 * number of CPUs or 8 GB (minimum requirements) - whichever is greater.

  • 2 CPUs (minimum) = 8 GB of memory (4 GB heap, 4 GB non-heap as per minimal requirements)
  • 4 CPUs = 8 GB of memory (4 GB heap, 4 GB non-heap)
  • 8 CPUs = 16 GB of memory (8 GB heap, 8 GB non-heap)
  • 16 CPUs = 32 GB of memory (16 GB heap, 16 GB non-heap)

Horizontal Scaling

  • Increase the number of Conversion nodes based on your expected/observed load increase.

  • Refer to the below table showing resource consumption levels per job type. If you know the distribution of job types in your organization, it should help you estimate the load.

    Job typeExpected resource consumption
    Convert to imageHeavy
    Prepare for WebReaderHeavy
    Convert to PDFAverage
    Merge documentsAverage
    Merge templatesAverage
    Apply watermarkLight
    Apply templateLight
    Extract textLight without OCR, otherwise heavy

New Features and Improvements

The following features are added in this release:

IssueTypePrioritySummary
AD-921StoryCriticalCreate Multi-Actions for Repository operations - see Simultaneous Actions on Repositories
AD-909StoryCriticalGlobal Search Support - see Global Search
AD-875StoryCriticalImprove stability on conversion - see Configuration Changes.
AD-861StoryCriticalCreate a check for the license
AD-533StoryCriticalServiceRequest to upload multiple contents to a folder - see Creating Contents with REST
AD-376StoryCriticalADx Admin: Configuration Export/Import Functionality - see Exporting and Importing Repository Configuration
AD-954StoryCriticalImport Possibility based on Entry Export Metadata files - see Importing Contents into Repository
AD-981BugCriticalBackup/Restore: rename installation folder - see Using Backup and Restore Scripts
AD-981BugCriticalBackup/Restore: fix missing execute permissions
AD-970StoryMajorEnable OpenApi Support for ADx - see Open API Suppoet
AD-960DocumentationMajorMissing runtime properties for GCP/S3 - see ADx Cloud Storage Runtime Properties
AD-831DocumentationMajorDefine Memory and CPU settings - see Hardware Requirements
AD-411StoryMinorDeletion of multiple Contents and Folders
AD-410StoryMinorProvide a target folder when issuing a conversion request - see Sending Conversion Requests with New Content Specification

Simultaneous Actions on Repositories

You can now select multiple repositories and perform actions (such as synchronization) simultaneously, saving time in the process:

Instead of searching individual repositories, you can use Global Repository Search.

  1. Log in to ADx.

  2. Click Explore under Global Repository Search.

  3. Use one of the provided queries (Owned by Me, Recent, Search - see Basic Search) or switch to Advanced Search. Owned by Me and Recent queries will return results from all repositories by default. Search allows you to customize the query.

    • When using Search, you're prompted for the standard search information, which is extended with a list of repositories. Use this list to select the repositories to be searched, then run the query.

      Search results are grouped by repository:

Open API Support

When you open an API page, you will now be redirected to Open API page by default, instead of Swagger 2.0:

  1. Open any API page from the landing page:

    You are redirected to an API description page following the Open API 3.0 standard. You have the option to switch to Swagger 2.0:

    If you experience any trouble using the Open API page, please switch to Swagger 2.0. Open API is still treated as an experimental feature.

Configuration changes

This release introduces new runtime properties for Conversion, allowing you to set restrictions on conversion input files.

New Runtime Properties

This release introduces Conversion file limits. These limits concern the input resource size as well as the number of available objects per resource. These limits are configurable, both on Conversion side (using the runtime properties below) as well as on repository side in ADx. For instructions on how to set limits in ADx UI, see Setting Conversion Restrictions.

PropertyDescriptionDefault value
CONV_MAX_INPUT_FILE_SIZEMaximum size of an individual input file (in bytes) of a job.524288000 = 500MB
CONV_MAX_TOTAL_INPUT_FILE_SIZEMaximum total file size of all input files (in bytes) of a job.2147483648 = 2GB
CONV_MAX_NUMBER_OF_INPUT_FILESMaximum number of input files for a job.100
CONV_PDF_TO_IMAGE_MAX_NUMBER_OF_OBJECTS_PER_PAGEMaximum number of objects per page in a PDF-to-image operation.1000000
CONV_PDF_TO_IMAGE_MAX_NUMBER_OF_OBJECTSMaximum number of objects in a PDF-to-image operation, counted from all pages.10000000
CONV_PDF_TO_IMAGE_MAX_NUMBER_OF_PAGESMaximum number of pages in a PDF-to-image operation.10000

Changed Runtime Properties

None.

Removed Runtime Properties

The following properties are no longer in use as of ADx 2.0:

PropertyReason for removal
TRANSFORMATION_SERVICE_PROCESS_AGEProcess cleanup is no longer needed in ADx 2.0
TRANSFORMATION_SERVICE_TMP_FILE_AGEThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_SERVICE_CLEANUP_SLOT_DURATIONThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_SERVICE_CLEANUP_TMP_SLOT_DURATIONThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_ACTION_CLEANUP_INTERVALThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_ACTION_CLEANUP_INTERVAL_UNITThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_ACTION_RETENTIONThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_ACTION_RETENTION_UNITThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_ACTION_RETENTION_RESOURCESThis is done in fixed intervals in ADx 2.0
TRANSFORMATION_ACTION_RETENTION_RESOURCES_UNITThis is done in fixed intervals in ADx 2.0

Known Issues

A list of problems we're aware of and working on.

Known Issues ADx

TicketSEVERITYDescription
https://jira.braintribe.com/browse/AD-321CRITICALAdd missing indices
https://jira.braintribe.com/browse/AD-354CRITICALADx Admin: Problem when synchronizing Type Definitions form DCTM/CMIS
https://jira.braintribe.com/browse/AD-1096MAJORStopping ADx Tomcat process may take multiple minutes
https://jira.braintribe.com/browse/AD-348MAJORADx Admin: Repository Modification-Status not updated on Update
https://jira.braintribe.com/browse/AD-342MINORHibernate warnings in the log files
https://jira.braintribe.com/browse/AD-341MINORJava warnings during for Java 9 and later
https://jira.braintribe.com/browse/AD-311MINOROracle - DbLockManager prints Oracle constraint message

Cannot migrate legacy contents simultaneously

Due to cache database being shared between repositories, it's not possible for now to run multiple migration jobs from a single legacy repository at the same time. You need to wait for the previous migration to finish before running a new one.

Known Issues Conversion

TicketSEVERITYDescription
https://jira.braintribe.com/browse/AD-338CRITICALIntroduce roles for conversion
https://jira.braintribe.com/browse/AD-337MAJORMake TF Conversion workbench consistent to ADx
https://jira.braintribe.com/browse/AD-501MAJORtf-conversion user has the admin role assigned
 https://jira.braintribe.com/browse/EXTDOCS-71MINORFix wrong encoding on opening resource in Browser

Minor Warnings

StatusLogger Error

The following error currently appears in ADx console output. It doesn't affect ADx functionality or performance.

ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. 
  Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.

Tomcat Shutdown Warning

The following warning is sometimes thrown by Tomcat when stopping the service:

./tribefire-console-stop.sh
...
Tomcat did not stop in time.
PID file was not removed.
To aid diagnostics a thread dump has been written to standard out.
Tribefire Host stopped.

This happens when shutdown takes longer than Tomcat expects. Shutdown may take several minutes, which will result in this message being printed out. This warning could appear on both Conversion and ADx.

Java Warnings

When using Java 9 or later, the following warning may appear in application logs and also during installation procedure:

WARNING: An illegal reflective access operation has occurred
WARNING	: Illegal reflective access by com.braintribe.model.processing.itw.asm.AsmClassLoaderWrapper$1 (file:/path/to/instant-type-weaving-1.0.28.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int)
WARNING: Please consider reporting this to the maintainers of com.braintribe.model.processing.itw.asm.AsmClassLoaderWrapper$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

Ticket: https://jira.braintribe.com/browse/AD-341

Hibernate Warnings

The log files may contain Hibernate-related warnings. They can be identified based on the fully qualified class which starts with org.hibernate, as in:

WARNING org.hibernate.tuple.entity.EntityMetamodel 'HHH000084: Entity [com.braintribe.model.user.User] is abstract-class/interface explicitly mapped as non-abstract; be sure to supply entity-names' [TribefireServices-2.0:tribefire-services#initialize,ApplicationLoader:/tribefire-services#initialize]

Ticket: https://jira.braintribe.com/browse/AD-342

These warnings do not affect the functionality of the application and can be ignored. We are working on a fix.