Sorting by IEnumerationType field not working after upgrade to A12 2025.06-ext4

Hello everyone,
We’ve recently upgraded our application to A12 version 2025.06-ext4 and have run into a sorting issue that we can’t seem to resolve.

Problem: We have document models with fields of type IEnumerationType. The possible options for these fields are defined in a separate TypeDefinition.
Before the upgrade, we could make an API call to retrieve documents and sort them based on one of these IEnumerationType fields. The API would correctly return the documents sorted according to the alphabetical order of the options.

After upgrading, the same API call no longer sorts the documents by the specified IEnumerationType field. The documents are returned in an unsorted order. The sorting functionality for other field types appears to be unaffected.

Question: Has anyone else experienced similar issues with IEnumerationType sorting after this upgrade? We’re looking for recommendations on how to debug this. Are there any known breaking changes or new configuration steps required in 2025.06-ext4 to make sorting by IEnumerationType fields work as it did before?

Any help or pointers would be greatly appreciated.
Thanks

Hi @gerrit-flat-sand ,

Can you provide requests before and after upgrade? Can you also specify from which version did you migrate? Enumerations are localized do you send Accept-Language header with request as well?

Hi,
Thanks for the quick reply.

We can confirm the request itself has not changed at all between the versions. We are sending the Accept-Language header with the value de.

We migrated from A12-2025.06-ext2.

Old Request:

[
    {
        "jsonrpc": "2.0",
        "method": "QUERY",
        "id": "OverviewEngineDataProvider-5",
        "params": {
            "query": {
                "projectionName": "document",
                "targetDocumentModel": "example_D",
                "paging": {
                    "pageSize": 10,
                    "pageNumber": 0
                },
                "sort": [
                    {
                        "field": "/root/example/enum",
                        "direction": "ASC",
                        "nullHandling": "NULLS_LAST",
                        "ignoreCase": true
                    }
                ],
                "fields": [
                    "/root/example/enum",
                    "/root/processMetadata/lastChangedOn",
                    "/root/processMetadata/lastChangedByName",
                    "/root/processMetadata/task/assignee/fullName"
                ]
            }
        }
    }
]

New Request:

[
    {
        "jsonrpc": "2.0",
        "method": "QUERY",
        "id": "OverviewEngineDataProvider-4",
        "params": {
            "query": {
                "projectionName": "document",
                "targetDocumentModel": "example_D",
                "paging": {
                    "pageSize": 10,
                    "pageNumber": 0
                },
                "sort": [
                    {
                        "field": "/root/example/enum",
                        "direction": "ASC",
                        "nullHandling": "NULLS_LAST",
                        "ignoreCase": true
                    }
                ],
                "fields": [
                    "/root/example/enum",
                    "/root/processMetadata/lastChangedOn",
                    "/root/processMetadata/lastChangedByName",
                    "/root/processMetadata/task/assignee/fullName"
                ]
            }
        }
    }
]

Do you have any other ideas what could cause this or how we could further debug the issue on our end?

Thanks

Hi @gerrit-flat-sand ,

The request looks good and very similar to what we have in our test. Please create a bug ticket where you will also include your models and a couple of example documents. We will investigate as soon as possible once we have this information.

We have made very little changes to `QUERY` operation between ext2 and ext5 if there is a problem we need to figure it out on our side by reproducing it. I think there is very little you can do on your side except for providing us further info in the ticket