Migration from 1.5.0 to 1.6.0

This guide contains instructions for migration from User Data Store version 1.5.x to version 1.6.0.

Database Changes

For convenience, you can use liquibase for your database migration.

The main Liquibase script is located in path ./docs/db/changelog/db.changelog-master.xml.

For manual changes use SQL scripts:

audit_log Table

Added a new indexed column subject_id holding an identifier linking the audit record to an entity it is related to (e.g. user ID for user-related audit records).

The auditing tables may be already updated in your database schema if the database schema is not separated for different PowerAuth applications. In case the column audit_log.subject_id and its index audit_log_subject_id_idx are already present, you can safely skip this migration step.

REST API Changes

GET /documents Filtering

The GET /documents endpoint now supports two additional optional query parameters used to filter the returned documents:

  • documentType - return only documents of the given document type.
  • attributes - return only documents whose attributes map contains all of the given key-value pairs. The parameter accepts entries in the form key:value and can be repeated (e.g. attributes=status:active&attributes=category:contract).

Both parameters are optional and can be combined. When neither is provided, the endpoint behaves as in previous versions and returns all documents.

Java Client Changes

Breaking: UserDataStoreClient.fetchDocuments Signature Changed

The overloaded methods fetchDocuments(String userId, String documentId) have been replaced with a single method accepting a request object:

DocumentResponse fetchDocuments(DocumentGetRequest request) throws UserDataStoreClientException;

Use DocumentGetRequest.builder() to construct the request:

// Before
client.fetchDocuments("alice", documentId);

// After
client.fetchDocuments(DocumentGetRequest.builder()
        .userId("alice")
        .documentId(documentId)
        .build());

The new DocumentGetRequest also supports documentType and attributes fields for filtering.

Dependency Updates

Docker Base Image Upgrade

The Docker base image has been upgraded from ibm-semeru-runtimes:open-21.0.9_10-jre-noble (OpenJDK 21) to ibm-semeru-runtimes:open-jdk-25.0.3.0-jre-noble (OpenJDK 25). No action is required.

Spring Boot 4 and Jackson 3

User Data Store has been migrated to Spring Boot 4 and Jackson 3.

Last updated on Jun 08, 2026 (09:48) Edit on Github Send Feedback

develop

User Data Store