Commit d344596
authored
docker: updates zipkin-cassandra test image to 4.1.8 (#3794)
If you just update to 4.1.8 and change nothing else, you'll crash like
this:
```
14.33 [2025-02-16 11:04:06,099] ERROR Exception encountered during startup (org.apache.cassandra.service.CassandraDaemon)
14.33 java.lang.UnsupportedOperationException: can't get field offset on a hidden class: private final org.apache.cassandra.db.ClusteringComparator org.apache.cassandra.db.ClusteringComparator$$Lambda/0x000000e0012f5220.arg$1
14.33 at jdk.unsupported/sun.misc.Unsafe.objectFieldOffset(Unsafe.java:652)
14.33 at org.github.jamm.MemoryLayoutSpecification.sizeOfInstanceWithUnsafe(MemoryLayoutSpecification.java:108)
14.33 at org.github.jamm.MemoryLayoutSpecification.sizeOfWithUnsafe(MemoryLayoutSpecification.java:89)
14.33 at org.github.jamm.MemoryMeter.measure(MemoryMeter.java:217)
14.33 at org.github.jamm.MemoryMeter.measureDeep(MemoryMeter.java:259)
14.33 at org.apache.cassandra.utils.ObjectSizes.measureDeep(ObjectSizes.java:219)
14.33 at org.apache.cassandra.cql3.QueryProcessor.measurePstmnt(QueryProcessor.java:912)
14.33 at org.apache.cassandra.cql3.QueryProcessor.parseAndPrepare(QueryProcessor.java:445)
14.33 at org.apache.cassandra.cql3.QueryProcessor.prepareInternal(QueryProcessor.java:414)
14.33 at org.apache.cassandra.cql3.QueryProcessor.executeInternal(QueryProcessor.java:452)
14.33 at org.apache.cassandra.db.SystemKeyspace.checkHealth(SystemKeyspace.java:1087)
14.33 at org.apache.cassandra.service.StartupChecks$13.execute(StartupChecks.java:630)
14.33 at org.apache.cassandra.service.StartupChecks.verify(StartupChecks.java:174)
14.33 at org.apache.cassandra.service.CassandraDaemon.runStartupChecks(CassandraDaemon.java:499)
14.33 at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:253)
14.33 at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:744)
14.33 at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:878)
```
This is due ultimately to needing to upgrade jamm, which had some
signature drift.
[CASSANDRA-18329](https://issues.apache.org/jira/browse/CASSANDRA-18329)
fixes this in 5.0, but not in 4.1.
[CASSANDRA-18329](https://issues.apache.org/jira/browse/CASSANDRA-18329)
fixed this particularly by [updating call sites to jamm in
ObjectSizes.java](apache/cassandra@600f4d9#diff-1122d7d3efe9721af7244d373e66378f7e90cb05fd65859a52e8a3ea58a7c8f9).
We use JRE 21 in our test image even though cassandra 4.1 doesn't really
support it, to save base layers. The easiest way to fix this was to grab
the ObjectSizes.java file from 5.0.3 and the revert their renaming of a
public method so it could be a drop in patch.
---------
Signed-off-by: Adrian Cole <adrian.cole@elastic.co>1 parent faa1650 commit d344596
2 files changed
Lines changed: 21 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
29 | | - | |
| 28 | + | |
30 | 29 | | |
31 | 30 | | |
32 | 31 | | |
| |||
36 | 35 | | |
37 | 36 | | |
38 | 37 | | |
39 | | - | |
| 38 | + | |
40 | 39 | | |
41 | 40 | | |
42 | 41 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
36 | 40 | | |
37 | 41 | | |
38 | 42 | | |
| |||
49 | 53 | | |
50 | 54 | | |
51 | 55 | | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
52 | 62 | | |
53 | 63 | | |
54 | 64 | | |
| |||
63 | 73 | | |
64 | 74 | | |
65 | 75 | | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
66 | 84 | | |
67 | 85 | | |
68 | 86 | | |
| |||
116 | 134 | | |
117 | 135 | | |
118 | 136 | | |
119 | | - | |
| 137 | + | |
120 | 138 | | |
121 | 139 | | |
122 | 140 | | |
| |||
0 commit comments