Skip to content

Commit 0219d34

Browse files
authored
GEOMESA-3579 Fix size estimations in newer java versions (#3546)
1 parent ed56d1b commit 0219d34

4 files changed

Lines changed: 20 additions & 3 deletions

File tree

build/dependencies.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ org.eclipse.imagen:vectorbin:0.9.1:compile
216216
org.eclipse.imagen:warp:0.9.1:compile
217217
org.eclipse.imagen:zonal:0.9.1:compile
218218
org.eclipse.xsd:org.eclipse.xsd:2.12.0:compile
219-
org.ehcache:sizeof:0.4.3:compile
219+
org.ehcache:sizeof:0.4.4:compile
220220
org.ejml:ejml-core:0.41:compile
221221
org.ejml:ejml-ddense:0.41:compile
222222
org.ejml:ejml-fsparse:0.41:compile

docs/user/upgrade/6.0.0.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ The following dependencies have been upgraded:
6262
* scala 2.12 ``2.12.19`` -> ``2.12.20``
6363
* scala 2.13 ``2.13.12`` -> ``2.13.16``
6464
* sedona ``1.8.0`` -> ``1.8.1``
65+
* sizeof ``0.4.3`` -> ``0.4.4``
6566
* spark ``3.5.5`` -> ``3.5.7``
6667
* zookeeper ``3.9.3`` -> ``3.9.5``
6768

geomesa-features/geomesa-feature-common/src/main/scala/org/locationtech/geomesa/features/ScalaSimpleFeature.scala

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,23 @@ class ScalaSimpleFeature private (sft: SimpleFeatureType, values: Array[AnyRef])
5656
userData
5757
}
5858

59-
override def calculateSizeOf(): Long = Sizable.sizeOf(this) + Sizable.deepSizeOf(id, values, userData)
59+
override def calculateSizeOf(): Long = {
60+
var size = Sizable.sizeOf(this) + Sizable.sizeOf(id) + Sizable.sizeOf(values)
61+
values.foreach { value =>
62+
if (value != null) {
63+
size += Sizable.sizeOf(value)
64+
}
65+
}
66+
if (userData != null) {
67+
userData.forEach { (k, v) =>
68+
size += Sizable.sizeOf(k)
69+
if (v != null) {
70+
size += Sizable.sizeOf(v)
71+
}
72+
}
73+
}
74+
size
75+
}
6076
}
6177

6278
object ScalaSimpleFeature {

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@
101101
<pureconfig.version>0.17.4</pureconfig.version>
102102
<rhino.js.version>1.8.1</rhino.js.version>
103103
<s2.geometry.version>20250620-rc1</s2.geometry.version>
104-
<sizeof.version>0.4.3</sizeof.version>
104+
<sizeof.version>0.4.4</sizeof.version>
105105
<spring.security.version>5.8.16</spring.security.version> <!-- geoserver is still on 5.x -->
106106
<typesafe.config.version>1.4.3</typesafe.config.version>
107107
<zstd.version>1.5.7-7</zstd.version>

0 commit comments

Comments
 (0)