FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Minimal changes required to implement Foreign Function and Memory API by stroomdev66 · Pull Request #258 · lmdbjava/lmdbjava · GitHub

Minimal changes required to implement Foreign Function and Memory API - #258

Merged
stroomdev66 merged 1 commit into
lmdbjava:java-foreign-function-and-memory-apifrom
stroomdev66:java-foreign-function-and-memory-api
Oct 30, 2025
Merged

Minimal changes required to implement Foreign Function and Memory API#258
stroomdev66 merged 1 commit into
lmdbjava:java-foreign-function-and-memory-apifrom
stroomdev66:java-foreign-function-and-memory-api

Conversation

Copy link
Copy Markdown
Collaborator

This PR represents the most minimal changes required to migrate LmdbJava to use the new Java 25 Foreign Function and Memory API and remove Unsafe. From a user perspective there is very little API change other than the requrement to use a memory Arena in some places.

At present the performance lags behind the previous version by about 30% in many scenarios. This is down to two things:

  1. The fundamental Java FFM API appears to be a small percentage slower.
  2. The removal of Unsafe has resulted in the need for additional object creation rather than the ability to constantly reuse buffers and repoint addresses.

We are in the process of addressing some of these issues and improving some other areas of the codebase to compensate.

stroomdev66 self-assigned this Oct 24, 2025
stroomdev66 merged commit 0c82e3f into lmdbjava:java-foreign-function-and-memory-api Oct 30, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
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.

1 participant


Back | FazBrowse Home | New Git URL