Skip to content

Upgrade OrientDB from 2.1.25 to 3.2.51#166

Draft
Copilot wants to merge 19 commits intomasterfrom
copilot/update-orientdb-dependency-to-3-2-51
Draft

Upgrade OrientDB from 2.1.25 to 3.2.51#166
Copilot wants to merge 19 commits intomasterfrom
copilot/update-orientdb-dependency-to-3-2-51

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 4, 2026

  • Identify root cause: RecordId cannot support cluster id major than 32767. Found: 32768 was caused by an OrientDB 2→3 API semantics change, not by the previously-suspected static-init/WAL flags. OSchema.createClass(String, int) in 3.x interprets the int as number of clusters to create, not a cluster id. The existing code passed db.addCluster(name) (a cluster id) into that argument, so each class spawned N additional clusters and quickly exceeded the 32767 limit.
  • Fix DBHelper.createOrUpdateOrientDBClass to use the createClass(String, int[]) overload, binding the new class to the explicit cluster id we just created.
  • CI build to confirm the fix.
Original prompt

Update OrientDB dependency to 3.2.51

Currently, the project uses OrientDB version 2.1.25, defined in the root pom.xml:

<orientdb.version>2.1.25</orientdb.version>

Please upgrade OrientDB to 3.2.51.

Required changes

  1. Update the orientdb.version property in the root pom.xml from 2.1.25 to 3.2.51.
  2. Verify the openidm-repo-orientdb module (which uses orientdb-core, orientdb-server, orientdb-enterprise) builds successfully against the new version.
  3. OrientDB 3.x has API and packaging changes compared to 2.x. Update any Java sources in openidm-repo-orientdb/ that fail to compile or behave differently due to the upgrade. Common areas that may need attention:
    • Package renames (e.g. com.orientechnologies.orient.core.* API changes)
    • OPartitionedDatabasePool / OrientDB instance API replacing the old ODatabaseDocumentTx direct-open pattern
    • SQL/query API differences
    • Server configuration / OServer startup
  4. Update related configuration files (e.g. JSON repo configs, embedded-server-config.xml, OSGi bundle imports/exports, manifest entries) as needed.
  5. Adjust transitive dependency exclusions if they no longer apply or if new conflicts arise (snappy-java, javax.activation, etc.).
  6. Ensure mvn -pl openidm-repo-orientdb -am clean install passes, including tests under openidm-repo-orientdb.

Acceptance criteria

  • orientdb.version is 3.2.51 in the root pom.xml.
  • The full project builds successfully with mvn clean install.
  • Existing OrientDB-backed repository tests pass.
  • No regressions in OrientDB repo functionality (provisioning, sync, repo CRUD operations).

The following is the prior conversation context from the user's chat exploration (may be truncated):

User: обнови OrinetDB до версии 3.2.51

Assistant: Ожидаю вашего подтверждения в диалоге, чтобы продолжить создание PR с обновлением OrientDB до версии 3.2.51.

This pull request was created from Copilot chat.

Copilot AI and others added 2 commits May 4, 2026 15:06
Copilot AI changed the title [WIP] Update OrientDB dependency to version 3.2.51 Upgrade OrientDB from 2.1.25 to 3.2.51 May 4, 2026
Copilot AI requested a review from vharseko May 4, 2026 15:11
Copilot stopped work on behalf of vharseko due to an error May 4, 2026 15:45
@vharseko
Copy link
Copy Markdown
Member

vharseko commented May 4, 2026

@copilot merge from master

…ntdb-dependency-to-3-2-51

Co-authored-by: vharseko <6818498+vharseko@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented May 4, 2026

@copilot merge from master

Merged master into the branch in 5e9807c.

Copilot AI and others added 2 commits May 5, 2026 11:15
…usters" in 3.x, not cluster id

Agent-Logs-Url: https://github.com/OpenIdentityPlatform/OpenIDM/sessions/319e46a6-fefe-4742-93f9-6384f78117a7

Co-authored-by: vharseko <6818498+vharseko@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants