jankotek / mapdb

MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.
https://mapdb.org
Apache License 2.0
4.89k stars 873 forks source link

Fun.HI() ClassCastException #1013

Open icreator opened 1 year ago

icreator commented 1 year ago

java.lang.ClassCastException: class org.mapdb.Fun$3 cannot be cast to class java.math.BigDecimal (org.mapdb.Fun$3 is in unnamed module of loader 'app'; java.math.BigDecimal is in module java.base of loader 'bootstrap')

on Fun.HI()

protected NavigableMap<Tuple3<Long, BigDecimal, Long>, byte[]> assetKeyMap;

            this.assetKeyMap = database.createTreeMap("balances_key_2_asset_bal_address")
                    .comparator(new Fun.Tuple3Comparator<>(Fun.COMPARATOR, Fun.COMPARATOR, Fun.COMPARATOR))
                    .makeOrGet();

        Iterator<byte[]> iter = this.assetKeyMap.subMap(
                Fun.t3(assetKey, fromOwnAmount, Long.MIN_VALUE),
                Fun.t3(assetKey, Fun.HI(), Long.MAX_VALUE)).values().iterator();

I use both version in two project

implementation group: 'org.mapdb', name: 'mapdb', version: '1.0.7'
//implementation group: 'org.mapdb', name: 'mapdb', version: '1.0.9'

in one project all work in another - error ((

icreator commented 1 year ago

I make protected NavigableMap <Tuple3<Long, Object, Long>, byte[]> assetKeyMap;

its work