Comments (11)
There is new release 3.0.10, it is compiled with JDK 8 and EC are bounded. It should hit Maven Central in couple of hours.
from mapdb.
What exactly is the issue?
I've explained quite extensively in the issue description, but I'll try to TL;DR:
mapdb 3.0.8 has no upper limit for eclipse collections version:
<ec.version>[7.0.0,)</ec.version>
which means maven will take the latest available:
12.0.0.M2
which is built with jdk11.
from mapdb.
I saw the same too, but I think MapDB version 3.0.9 has the version locked down a little bit at least. Compare https://mvnrepository.com/artifact/org.mapdb/mapdb/3.0.8 and https://mvnrepository.com/artifact/org.mapdb/mapdb/3.0.9
vs
Guava should also be locked down to be honest. 🤷
from mapdb.
@slovdahl Thank you for this! I'm going to close the ticket, since this is resolved in 3.0.9+
from mapdb.
It seems like 3.0.9 as compiled with jdk11
from mapdb.
What exactly is the issue?
MapDB should run on any JDK11+, with some workarounds for sun.misc.Unsafe
. If you need JDK 1.8, use MapDB 3.0.8.
To manage dependencies (EC, Guava) do version pinning in Maven.
from mapdb.
Hey
Had the same issue in my build pipeline since few (all build projects fails)
To manage dependencies (EC, Guava) do version pinning in Maven.
@jankotek what did you mean ?
Do exclusions and manually add dependency needed ?
from mapdb.
I have also recently run into this issue, to also discover that 3.0.9, which conveniently pins an upper-bound on Eclipse Collections, can't work with Java 8. While I can manually force the 3.0.8 dependency in my own project, that doesn't really feel like a scalable solution. I shouldn't be managing the dependencies of my dependencies. If a single version is known to work with MapDB, shouldn't the MapDB project pin that, itself, so every downstream client doesn't have to do so on its behalf?
I would argue the unbounded version requirement for Eclipse Collections is, itself, a bug; new releases of Eclipse Collections can quietly break MapDB 3.0.8, forcing its dependents to "figure it out". Can an upper bound, as was clearly done in 3.0.9, be added in a Java 8-compatible way? Why would a version upgrade from 3.0.8 to 3.0.9, a very minor patch, drop support for Java 8 so suddenly?
from mapdb.
This fixed the issue with Java 8, Gradle 3.4 and mapdb 3.0.7.
configurations.all {
resolutionStrategy {
force 'org.eclipse.collections:eclipse-collections-api:12.0.0.M2'
force 'org.eclipse.collections:eclipse-collections:12.0.0.M2'
force 'org.eclipse.collections:eclipse-collections-forkjoin:12.0.0.M2'
}
}
from mapdb.
Not had to pin versions before, after a google and read the gradle docs I got to this:
implementation("org.eclipse.collections:eclipse-collections") {
because("Later Versions are built with higher JDK and fail")
version {
strictly("12.0.0.M2")
}
}
implementation("org.eclipse.collections:eclipse-collections-api") {
because("Later Versions are built with higher JDK and fail")
version {
strictly("12.0.0.M2")
}
}
implementation("org.eclipse.collections:eclipse-collections-forkjoin") {
because("Later Versions are built with higher JDK and fail")
version {
strictly("12.0.0.M2")
}
}
from mapdb.
I can confirm on my project that 3.0.10 resolves the issue as well. I really appreciate the quick turnaround on this. Thank-you.
from mapdb.
Related Issues (20)
- MapDB 3.0.10 with guava build fails HOT 3
- Question on how data is persisted HOT 1
- Does it support collections that don't fit in RAM? HOT 1
- How to debug tests from VS Code or otherwise?
- Trying to understand HTreeMap HOT 1
- Transaction Isolation HOT 1
- Using Bloom Filters to optimize overflowing HTreeMap reads
- MapDB is not reducing its size when all messages get deleted HOT 2
- Retrieving data after rollback will throw an exception
- Insertion Order Persistence HOT 1
- org.mapdb.DBException$DataCorruption: headPrev error
- compact is not working for WAL storage
- HTreeMap uses more direct memory than specified in HashMapMaker.expireStoreSize()
- Vector Collection
- When I execute db.commit() I get an alarm:Could not delete file: HOT 1
- NoClassDefFoundError regarding EnumEntries since MapDB 3.1.0 HOT 3
- IndexOutOfBoundsException on DB.commit()
- Trying to understand how it works
- API handle to get version of MapDB HOT 2
- Data corruption when using expireAfterCreate() and expireOverflow() with HashMapMaker
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mapdb.