Skip to content

Add an environment verifier class #124

@benalexau

Description

@benalexau

Several recent issues (eg #122, #121) would have been easier to explore if LmdbJava offered an inbuilt mechanism to verify the correct operation of LmdbJava in the user's environment. This is particularly valuable given that LMDB requires compliance with many rules to avoid SIGSEGV and there is limited ability to proactively enforce these rules on the Java side.

While at present a user can clone the LmdbJava repository and mvn clean test, this represents an inconvenience for the user and these tests are not intended to explore boundary conditions such as particularly large keys, values or extended-duration testing workloads.

Adding an "environment verifier" class to the standard LmdbJava JAR (not the test cases) would allow users to nominate a duration they wish to execute verification for. During that period the class would write, commit, read and compare successively larger keys, values and transaction batch sizes. This would offer a higher degree of confidence there is no platform-specific bug with LmdbJava on a given operating system / JVM combination. Furthermore this may be a useful support tool for those applications which embed LmdbJava and are shipped to third party users.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementAdditional or new functionality

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions