<div dir="ltr">So, switching back to DirectByteBuffers, and removing the disabling of explicit GCs still crashes on my laptop (swapping + close to 32 Gb RAM used)...<div><br></div><div>kind regards</div><div>Johannes</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Am Sa., 17. Feb. 2024 um 10:22 Uhr schrieb Stefan Johansson <<a href="mailto:stefan.johansson@oracle.com">stefan.johansson@oracle.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
On 2024-02-17 00:36, Johannes Lichtenberger wrote:<br>
> I just removed "-XX+DisableExplizitGC", increased max direct memory size <br>
> to 5g (-XX:MaxDirectMemorySize=5g), but also changed <br>
> Bytes::elasticByteBuffer to Bytes.elasticHeapByteBuffer(60_000);<br>
> to use on heap ByteBuffers.<br>
> <br>
<br>
Just for clarity, when using HeapByteBuffers the MaxDirectMemorySize has <br>
no effect since the ByteBuffers will be stored on the heap. But if you <br>
keep going with DirectByteBuffers, this might make sense to give some <br>
more head room.<br>
<br>
> However, the performance seems to be way worse. I've repeated the test <br>
> several times, but with both G1 and non generational ZGC it's ~50s for <br>
> importing the JSON file in the first case vs ~100s using generational <br>
> ZGC, using Temurin 21.0.2 with similar values for the actual traversals.<br>
> <br>
<br>
Ok, sounds like using DirectByteBuffers is a performance win here. If so <br>
I would just continue testing using DirectByteBuffers and allowing <br>
explicit GCs to ensure they are cleaned out properly.<br>
<br>
> From the log on STDOUT, I can see this (meaning 0,319s and 0,440s... <br>
> pause times?)<br>
> <br>
<br>
No, with ZGC the time here is not the pause time, it's the time to <br>
complete the whole GC. ZGC is a concurrent GC, meaning that most of the <br>
GC work is done concurrently with the Java application still running. <br>
There are still a some very short pauses, all way below 1ms. You can see <br>
them if you look at the detailed log:<br>
<br>
[30,938s][info][gc ] GC(3) Minor Collection (Allocation Rate)<br>
[30,938s][info][gc,phases ] GC(3) y: Young Generation<br>
[30,938s][info][gc,phases ] GC(3) y: Pause Mark Start 0,060ms<br>
[31,322s][info][gc,phases ] GC(3) y: Concurrent Mark 383,563ms<br>
[31,322s][info][gc,phases ] GC(3) y: Pause Mark End 0,046ms<br>
[31,322s][info][gc,phases ] GC(3) y: Concurrent Mark Free 0,009ms<br>
[31,322s][info][gc,phases ] GC(3) y: Concurrent Reset Relocation Set <br>
0,201ms<br>
[31,335s][info][gc,phases ] GC(3) y: Concurrent Select Relocation Set <br>
13,228ms<br>
[31,335s][info][gc,phases ] GC(3) y: Pause Relocate Start 0,019ms<br>
[31,381s][info][gc,phases ] GC(3) y: Concurrent Relocate 45,967ms<br>
[31,382s][info][gc,phases ] GC(3) y: Young Generation <br>
9726M(63%)->518M(3%) 0,444s<br>
[31,382s][info][gc ] GC(3) Minor Collection (Allocation Rate) <br>
9726M(63%)->518M(3%) 0,444s<br>
<br>
Here I included the phase-logs for a single GC of the young generation, <br>
where you can clearly see how much time was spent in which part of the <br>
GC and as you can see the three pauses are all very very short.<br>
<br>
Stefan<br>
<br>
> [35,718s][info ][gc ] GC(9) Minor Collection (Allocation Rate) <br>
> 12462M(81%)->1556M(10%) 0,319s<br>
> [40,871s][info ][gc ] GC(10) Minor Collection (Allocation Rate)<br>
> [41,311s][info ][gc ] GC(10) Minor Collection (Allocation Rate) <br>
> 13088M(85%)->1432M(9%) 0,440s<br>
> [46,236s][info ][gc ] GC(11) Minor Collection (Allocation Rate)<br>
> [46,603s][info ][gc ] GC(11) Minor Collection (Allocation Rate) <br>
> 12406M(81%)->1676M(11%) 0,367s<br>
> [51,445s][info ][gc ] GC(12) Minor Collection (Allocation Rate)<br>
> [51,846s][info ][gc ] GC(12) Minor Collection (Allocation Rate) <br>
> 12848M(84%)->1556M(10%) 0,401s<br>
> [56,203s][info ][gc ] GC(13) Major Collection (Proactive)<br>
> [56,368s][info ][gc ] GC(13) Major Collection (Proactive) <br>
> 11684M(76%)->484M(3%) 0,166s<br>
> <br>
> kind regards<br>
> Johannes<br>
> <br>
> Am Fr., 16. Feb. 2024 um 22:39 Uhr schrieb Erik Osterlund <br>
> <<a href="mailto:erik.osterlund@oracle.com" target="_blank">erik.osterlund@oracle.com</a> <mailto:<a href="mailto:erik.osterlund@oracle.com" target="_blank">erik.osterlund@oracle.com</a>>>:<br>
> <br>
> It’s worth noting that when using ZGC, calling System.gc does not<br>
> invoke a classic disastrously long GC pause. Instead, a concurrent<br>
> GC is triggered, which should be not that noticeable to the<br>
> application. The thread calling System.gc is blocked until the GC is<br>
> done, but the other threads can run freely.<br>
> <br>
> /Erik<br>
> <br>
> > On 16 Feb 2024, at 21:55, Stefan Johansson<br>
> <<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>>><br>
> wrote:<br>
> ><br>
> > <br>
> ><br>
> >> On 2024-02-16 18:04, Johannes Lichtenberger wrote:<br>
> >> Thanks a lot, I wasn't even aware of the fact, that<br>
> DirectByteBuffers use System.gc() and I always had in mind that<br>
> calling System.gc() at least in application code is bad practice (or<br>
> at least we shouldn't rely on it) and I think I read somewhere a<br>
> while ago, that it's recommended to even disable this, but may be<br>
> completely wrong, of course.<br>
> > In most cases callling System.gc() is bad practice, in some<br>
> special cases it might be needed.<br>
> ><br>
> >> I'll change it to on-heap byte buffers tomorrow :-)<br>
> >> I think your GC log entries were from G1, right? It seems ZGC<br>
> always tries to use the full heap :-)<br>
> ><br>
> > Yes, the snippet was G1, it was mostly to show that the pressure<br>
> isn't high. You are correct that ZGC uses more of the given heap but<br>
> the collections are pretty far apart and I'm certian it would<br>
> function well with a smaller heap as well. Maybe in that case some<br>
> Major collections would be triggered.<br>
> ><br>
> >> Kind regards and thanks for sharing your insights.<br>
> ><br>
> > No problem. We appriciate the feedback,<br>
> > StefanJ<br>
> ><br>
> >> Have a nice weekend as well<br>
> >> Johannes<br>
> >> Stefan Johansson <<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>>>> schrieb am Fr., 16. Feb.<br>
> 2024, 17:38:<br>
> >> Hi,<br>
> >> Some comments inline.<br>
> >> On 2024-02-16 16:47, Johannes Lichtenberger wrote:<br>
> >> > Thanks a lot for looking into it, I've added<br>
> >> > `-XX:MaxDirectMemorySize=2g` only recently, but without it<br>
> failed as<br>
> >> > well, so not sure what the default is. Will definitely<br>
> check your<br>
> >> > suggestions :-)<br>
> >> ><br>
> >> If you don't set a limit it will be set to:<br>
> >> Runtime.getRuntime().maxMemory()<br>
> >> So likely a good idea to set a reasonable limit, but the<br>
> smaller the<br>
> >> limit is the more frequent we need to run reference<br>
> processing to allow<br>
> >> memory to be freed up.<br>
> >> > Sadly I'm currently working alone on the project in my<br>
> spare time<br>
> >> > (besides professionally switched from Java/Kotlin stuff to the<br>
> >> embedded<br>
> >> > software world) and I'm not sure if the current<br>
> architecture of<br>
> >> Sirix is<br>
> >> > limited by too much GC pressure. I'd probably have to check<br>
> >> Cassandra at<br>
> >> > some point and look into flame graphs and stuff for their<br>
> >> integration<br>
> >> > tests, but maybe you can give some general insights/advice...<br>
> >> ><br>
> >> > Yesterday evening I switched to other JDKs (also I want to<br>
> test with<br>
> >> > Shenandoah in particular), but I think especially the<br>
> better escape<br>
> >> > analysis of the GraalVM is a huge plus in the case of<br>
> SirixDB (for<br>
> >> > insertion on my laptop it's ~90s vs ~60s), but I think it<br>
> should be<br>
> >> > faster and currently my suspicion is that garbage is a major<br>
> >> performance<br>
> >> > issue.<br>
> >> ><br>
> >> > Maybe the GC pressure in general is a major issue, as in<br>
> the CPU<br>
> >> Flame<br>
> >> > graph IIRC the G1 had about 20% stack frames allocated and non<br>
> >> > generational ZGC even around 40% taking all threads into<br>
> account.<br>
> >> ><br>
> >> From what I/we see, the GC pressure in the given test is<br>
> not high.<br>
> >> The<br>
> >> allocation rate is below 1GB/s and since most of it die young<br>
> the GCs<br>
> >> are fairly cheap. In this log snippet G1 shows a GC every 5s<br>
> and the<br>
> >> pause time is below 50ms:<br>
> >> [296,016s][info ][gc ] GC(90) Pause Young (Normal) (G1<br>
> >> Evacuation<br>
> >> Pause) 5413M->1849M(6456M) 35,577ms<br>
> >> [301,103s][info ][gc ] GC(91) Pause Young (Normal) (G1<br>
> >> Evacuation<br>
> >> Pause) 5417M->1848M(6456M) 33,357ms<br>
> >> [306,041s][info ][gc ] GC(92) Pause Young (Normal) (G1<br>
> >> Evacuation<br>
> >> Pause) 5416M->1848M(6456M) 32,763ms<br>
> >> [310,849s][info ][gc ] GC(93) Pause Young (Normal) (G1<br>
> >> Evacuation<br>
> >> Pause) 5416M->1847M(6456M) 33,086ms<br>
> >> I also see that the heap never expands to more the ~6.5GB even<br>
> >> though it<br>
> >> is allow to be 15GB and this also suggest that the GC is not<br>
> under much<br>
> >> pressure. As I said in the previous mail, the reason<br>
> Generational ZGC<br>
> >> don't free up the direct memory without the System.gc() calls<br>
> is that<br>
> >> the GC pressure is not high enough to trigger any Major<br>
> cycles. So I<br>
> >> would strongly recommend you to not run with<br>
> -XX+DisableExplicitGC<br>
> >> unless you really have to. Since you are using<br>
> DirectByteBuffers and<br>
> >> they use System.gc() to help free memory when the limit is<br>
> reached.<br>
> >> > So in general I'm thinking about backing the<br>
> KeyValueLeafPages with<br>
> >> > MemorySegments, but I think due to variable sized pages<br>
> it's getting<br>
> >> > tricky, plus I currently don't have the time for changing<br>
> >> fundamental<br>
> >> > stuff and I'm even not sure if it'll bring a performance<br>
> boost, as I<br>
> >> > have to adapt neighbour relationships of the nodes often and<br>
> >> off-heap<br>
> >> > memory access might be slightly worse performance wise.<br>
> >> ><br>
> >> > What do you think?<br>
> >> ><br>
> >> I know to little about the application to be able to give<br>
> advice here,<br>
> >> but I would first start with having most memory on heap. Only<br>
> large<br>
> >> long<br>
> >> lived stuff off-heap, if really needed. Looking at the test<br>
> at hand, it<br>
> >> really doesn't look like it is long lived stuff that is<br>
> placed off heap.<br>
> >> > I've attached a memory flame graph and there it seems the<br>
> byte array<br>
> >> > from deserializing each page is prominent, but that might be<br>
> >> something I<br>
> >> > can't even avoid (after decompression via Snappy or via<br>
> another<br>
> >> lib and<br>
> >> > maybe also decryption in the future).<br>
> >> ><br>
> >> > As of now G1 with GraalVM seems to perform best (a little<br>
> bit better<br>
> >> > than with non generational ZGC, but I thought ZGC or maybe<br>
> >> Shenandoah<br>
> >> > would improve the situation). But as said I may have to<br>
> generate way<br>
> >> > less garbage after all in general for good performance!?<br>
> >> ><br>
> >> > All in all maybe due to most objects die young maybe also the<br>
> >> > generational GCs are not needed (that said if enough RAM is<br>
> >> available<br>
> >> > and the Caffeine Caches are sized accordingly most objects may<br>
> >> die old).<br>
> >> > But apparently the byte arrays holding the page data still die<br>
> >> young (in<br>
> >> > AbstractReader::deserialize). In fact I'm not even sure<br>
> why they<br>
> >> escape,<br>
> >> > but currently I'm on my phone.<br>
> >> ><br>
> >> It's when most objects die young the Generational GC really<br>
> shines,<br>
> >> because it can handle the short lived objects without having<br>
> to look at<br>
> >> the long lived objects. So I would say Generational ZGC is a<br>
> good fit<br>
> >> here, but we need to let the System.gc() run to allow reference<br>
> >> processing or slightly re-design and use HeapByteBuffers.<br>
> >> Have a nice weekend,<br>
> >> Stefan<br>
> >> > Kind regards<br>
> >> > Johannes<br>
> >> ><br>
> >> > Stefan Johansson <<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>><br>
> >> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>>><br>
> >> > <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>><br>
> >> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.johansson@oracle.com" target="_blank">stefan.johansson@oracle.com</a>>>>> schrieb am Fr., 16. Feb.<br>
> >> 2024, 13:43:<br>
> >> ><br>
> >> > Hi Johannes,<br>
> >> ><br>
> >> > We've spent some more time looking at this and getting the<br>
> >> json-file to<br>
> >> > reproduced it made it easy to verify our suspicions.<br>
> Thanks for<br>
> >> > uploading it.<br>
> >> ><br>
> >> > There are a few things playing together here. The test is<br>
> >> making quite<br>
> >> > heavy use of DirectByteBuffers and you limit the usage<br>
> to 2G<br>
> >> > (-XX:MaxDirectMemorySize=2g). The life cycle and<br>
> freeing of<br>
> >> the native<br>
> >> > memory part of the DirectByteBuffer rely on reference<br>
> >> processing. In<br>
> >> > generational ZGC reference processing is only done<br>
> during Major<br>
> >> > collections and since the general GC preassure in this<br>
> >> benchmark is<br>
> >> > very<br>
> >> > low (most objects die young), we do not trigger that<br>
> many Major<br>
> >> > collections.<br>
> >> ><br>
> >> > Normaly this would not be a problem. To avoid throwing<br>
> an out<br>
> >> of memory<br>
> >> > error (due to hitting the direct buffer memory limit) too<br>
> >> early the JDK<br>
> >> > triggers a System.gc(). This should trigger reference<br>
> >> procesing and all<br>
> >> > buffers that are no longer in use would be freed.<br>
> Since you<br>
> >> specify the<br>
> >> > option -XX:+DisableExplicitGC all these calls to<br>
> trigger GCs are<br>
> >> > ignored<br>
> >> > and no direct memory will be freed. So in our testing,<br>
> just<br>
> >> removing<br>
> >> > this flags makes the test pass.<br>
> >> ><br>
> >> > Another solution is to look at using HeapByteBuffers<br>
> instead<br>
> >> and don't<br>
> >> > have to worry about the direct memory usage. The<br>
> OpenHFT lib<br>
> >> seems to<br>
> >> > have support for this by just using<br>
> >> elasticHeapByteBuffer(...) instead<br>
> >> > of elasticByteBuffer().<br>
> >> ><br>
> >> > Lastly, the reason for this working with<br>
> non-generational ZGC is<br>
> >> > that it<br>
> >> > does reference processing for every GC.<br>
> >> ><br>
> >> > Hope this helps,<br>
> >> > StefanJ<br>
> >> ><br>
> >> ><br>
> >> > On 2024-02-15 21:53, Johannes Lichtenberger wrote:<br>
> >> > > It's a laptop, I've attached some details.<br>
> >> > ><br>
> >> > > Furthermore, if it seems worth digging deeper into the<br>
> >> issue, the<br>
> >> > JSON<br>
> >> > > file is here for one week:<br>
> >> > > <a href="https://www.transfernow.net/dl/20240215j9NaPTc0" rel="noreferrer" target="_blank">https://www.transfernow.net/dl/20240215j9NaPTc0</a><br>
> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNTFwuk6i$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNTFwuk6i$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$</a> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a>> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a>>>><br>
> >> > > <<a href="https://www.transfernow.net/dl/20240215j9NaPTc0" rel="noreferrer" target="_blank">https://www.transfernow.net/dl/20240215j9NaPTc0</a><br>
> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNTFwuk6i$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNTFwuk6i$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$</a> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybJynYpht$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a>> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a> <<a href="https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://www.transfernow.net/dl/20240215j9NaPTc0__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeDXD5_-$</a>>>>><br>
> >> > ><br>
> >> > > You'd have to unzip into<br>
> >> bundles/sirix-core/src/test/resources/json,<br>
> >> > > remove the @Disabled annotation and run the test<br>
> >> > > JsonShredderTest::testChicagoDescendantAxis<br>
> >> > ><br>
> >> > > The test JVM parameters are specified in the parent<br>
> >> build.gradle<br>
> >> > in the<br>
> >> > > project root folder.<br>
> >> > ><br>
> >> > > The GitHub repo: <a href="https://github.com/sirixdb/sirix" rel="noreferrer" target="_blank">https://github.com/sirixdb/sirix</a><br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNbw9BBhL$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNbw9BBhL$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a>>>><br>
> >> > > <<a href="https://github.com/sirixdb/sirix" rel="noreferrer" target="_blank">https://github.com/sirixdb/sirix</a><br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNbw9BBhL$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNbw9BBhL$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybALU2RDy$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFUUPdeUD$</a>>>>><br>
> >> > ><br>
> >> > > Screenshot from 2024-02-15 21-43-33.png<br>
> >> > ><br>
> >> > > kind regards<br>
> >> > > Johannes<br>
> >> > ><br>
> >> > > Am Do., 15. Feb. 2024 um 20:01 Uhr schrieb Peter Booth<br>
> >> > > <<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>><br>
> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>>><br>
> >> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>><br>
> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>>>><br>
> >> > <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>><br>
> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>>><br>
> >> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>><br>
> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a> <mailto:<a href="mailto:peter_booth@me.com" target="_blank">peter_booth@me.com</a>>>>>>:<br>
> >> > ><br>
> >> > > Just curious - what CPU, physical memory and OS are<br>
> >> you using?<br>
> >> > > Sent from my iPhone<br>
> >> > ><br>
> >> > >> On Feb 15, 2024, at 12:23 PM, Johannes<br>
> Lichtenberger<br>
> >> > >> <<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>><br>
> >> > >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>>>> wrote:<br>
> >> > >><br>
> >> > >> <br>
> >> > >> I guess I don't know which JDK it picks for the<br>
> >> tests, but I<br>
> >> > guess<br>
> >> > >> OpenJDK<br>
> >> > >><br>
> >> > >> Johannes Lichtenberger<br>
> >> <<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>><br>
> >> > >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>>>> schrieb am Do., 15.<br>
> >> > >> Feb. 2024, 17:58:<br>
> >> > >><br>
> >> > >> However, it's the same with: ./gradlew<br>
> >> > >> <br>
> -Dorg.gradle.java.home=/home/johannes/.jdks/openjdk-21.0.2<br>
> >> > >> :sirix-core:test --tests<br>
> >> > >><br>
> >> > <br>
> io.sirix.service.json.shredder.JsonShredderTest.testChicagoDescendantAxis using OpenJDK hopefully<br>
> >> > >><br>
> >> > >> Am Do., 15. Feb. 2024 um 17:54 Uhr schrieb<br>
> Johannes<br>
> >> > >> Lichtenberger<br>
> <<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>><br>
> >> > >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>>>>:<br>
> >> > >><br>
> >> > >> I've attached two logs, the first one<br>
> without<br>
> >> > >> -XX:+Generational, the second one with the<br>
> >> option set,<br>
> >> > >> even though I also saw, that<br>
> generational ZGC is<br>
> >> > going to<br>
> >> > >> be supported in GraalVM 24.1 in<br>
> September...<br>
> >> so not sure<br>
> >> > >> what this does :)<br>
> >> > >><br>
> >> > >> Am Do., 15. Feb. 2024 um 17:52 Uhr schrieb<br>
> >> Johannes<br>
> >> > >> Lichtenberger<br>
> >> <<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>><br>
> >> > >> <br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>><br>
> >> > <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>><br>
> >> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a><br>
> <mailto:<a href="mailto:lichtenberger.johannes@gmail.com" target="_blank">lichtenberger.johannes@gmail.com</a>>>>>>:<br>
> >> > >><br>
> >> > >> Strange, so does it simply ignore the<br>
> >> option? The<br>
> >> > >> following is the beginning of the<br>
> output<br>
> >> from _non_<br>
> >> > >> generational ZGC:<br>
> >> > >><br>
> >> > >> <br>
> johannes@luna:~/IdeaProjects/sirix$ ./gradlew<br>
> >> > >><br>
> >> > <br>
> -Dorg.gradle.java.home=/home/johannes/.sdkman/candidates/java/21.0.2-graal :sirix-core:test --tests io.sirix.service.json.shredder.JsonShredderTest.testChicagoDescendantAxis<br>
> >> > >><br>
> >> > >> > Configure project :<br>
> >> > >> The 'sonarqube' task depends on<br>
> compile<br>
> >> tasks. This<br>
> >> > >> behavior is now deprecated and will be<br>
> >> removed in<br>
> >> > >> version 5.x. To avoid implicit<br>
> >> compilation, set<br>
> >> > >> property<br>
> 'sonar.gradle.skipCompile' to 'true'<br>
> >> > and make<br>
> >> > >> sure your project is compiled, before<br>
> >> analysis has<br>
> >> > >> started.<br>
> >> > >> The 'sonar' task depends on compile<br>
> >> tasks. This<br>
> >> > >> behavior is now deprecated and will be<br>
> >> removed in<br>
> >> > >> version 5.x. To avoid implicit<br>
> >> compilation, set<br>
> >> > >> property<br>
> 'sonar.gradle.skipCompile' to 'true'<br>
> >> > and make<br>
> >> > >> sure your project is compiled, before<br>
> >> analysis has<br>
> >> > >> started.<br>
> >> > >> [1,627s][info ][gc ] GC(0)<br>
> Garbage<br>
> >> Collection<br>
> >> > >> (Metadata GC Threshold)<br>
> 84M(1%)->56M(0%)<br>
> >> > >><br>
> >> > >> > Task :sirix-core:test<br>
> >> > >> [0.001s][warning][pagesize]<br>
> UseLargePages<br>
> >> > disabled, no<br>
> >> > >> large pages configured and<br>
> available on<br>
> >> the system.<br>
> >> > >> [1.253s][info ][gc ] Using<br>
> The Z<br>
> >> Garbage<br>
> >> > Collector<br>
> >> > >><br>
> >> > >> [2,930s][info ][gc ] GC(1)<br>
> Garbage<br>
> >> Collection<br>
> >> > >> (Warmup) 1616M(11%)->746M(5%)<br>
> >> > >> [4,445s][info ][gc ] GC(2)<br>
> Garbage<br>
> >> Collection<br>
> >> > >> (Warmup) 3232M(21%)->750M(5%)<br>
> >> > >> [5,751s][info ][gc ] GC(3)<br>
> Garbage<br>
> >> Collection<br>
> >> > >> (Warmup) 4644M(30%)->1356M(9%)<br>
> >> > >> [9,886s][info ][gc ] GC(4)<br>
> Garbage<br>
> >> Collection<br>
> >> > >> (Allocation Rate)<br>
> 10668M(69%)->612M(4%)<br>
> >> > >> [10,406s][info ][gc ] GC(5)<br>
> Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate) 2648M(17%)->216M(1%)<br>
> >> > >> [13,931s][info ][gc ] GC(6)<br>
> Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 11164M(73%)->1562M(10%)<br>
> >> > >> [16,908s][info ][gc ] GC(7)<br>
> Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 11750M(76%)->460M(3%)<br>
> >> > >> [20,690s][info ][gc ] GC(8)<br>
> Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 12670M(82%)->726M(5%)<br>
> >> > >> [24,376s][info ][gc ] GC(9)<br>
> Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 13422M(87%)->224M(1%)<br>
> >> > >> [28,152s][info ][gc ]<br>
> GC(10) Garbage<br>
> >> > Collection<br>
> >> > >> (Proactive) 13474M(88%)->650M(4%)<br>
> >> > >> [31,526s][info ][gc ]<br>
> GC(11) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 12072M(79%)->1472M(10%)<br>
> >> > >> [34,754s][info ][gc ]<br>
> GC(12) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 13050M(85%)->330M(2%)<br>
> >> > >> [38,478s][info ][gc ]<br>
> GC(13) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 13288M(87%)->762M(5%)<br>
> >> > >> [41,936s][info ][gc ]<br>
> GC(14) Garbage<br>
> >> > Collection<br>
> >> > >> (Proactive) 13294M(87%)->504M(3%)<br>
> >> > >> [45,353s][info ][gc ]<br>
> GC(15) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 12984M(85%)->268M(2%)<br>
> >> > >> [48,861s][info ][gc ]<br>
> GC(16) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 13008M(85%)->306M(2%)<br>
> >> > >> [52,133s][info ][gc ]<br>
> GC(17) Garbage<br>
> >> > Collection<br>
> >> > >> (Proactive) 12042M(78%)->538M(4%)<br>
> >> > >> [55,705s][info ][gc ]<br>
> GC(18) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 12420M(81%)->1842M(12%)<br>
> >> > >> [59,000s][info ][gc ]<br>
> GC(19) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 12458M(81%)->1422M(9%)<br>
> >> > >> [64,501s][info ][gc ]<br>
> Allocation<br>
> >> Stall (Test<br>
> >> > >> worker) 59,673ms<br>
> >> > >> [64,742s][info ][gc ]<br>
> Allocation<br>
> >> Stall (Test<br>
> >> > >> worker) 240,077ms<br>
> >> > >> [65,806s][info ][gc ]<br>
> GC(20) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 13808M(90%)->6936M(45%)<br>
> >> > >> [66,476s][info ][gc ]<br>
> GC(21) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Stall)<br>
> 7100M(46%)->4478M(29%)<br>
> >> > >> [69,471s][info ][gc ]<br>
> GC(22) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 10098M(66%)->5888M(38%)<br>
> >> > >> [72,252s][info ][gc ]<br>
> GC(23) Garbage<br>
> >> > Collection<br>
> >> > >> (Allocation Rate)<br>
> 11226M(73%)->5816M(38%)<br>
> >> > >><br>
> >> > >> ...<br>
> >> > >><br>
> >> > >> So even here I can see some allocation<br>
> >> stalls.<br>
> >> > >><br>
> >> > >> Running the Same with<br>
> -XX:+ZGenerational in<br>
> >> > >> build.gradle probably using<br>
> GraalVM does<br>
> >> something<br>
> >> > >> differnt, but I don't know what... at<br>
> >> least off-heap<br>
> >> > >> memory is exhausted at some point<br>
> due to<br>
> >> direct byte<br>
> >> > >> buffer usage!?<br>
> >> > >><br>
> >> > >> So, I'm not sure what's the<br>
> difference,<br>
> >> though.<br>
> >> > >><br>
> >> > >> With this:<br>
> >> > >><br>
> >> > >> "-XX:+UseZGC",<br>
> >> > >><br>
> >> > "-Xlog:gc*=debug:file=zgc-generational-detailed.log",<br>
> >> > >> "-XX:+ZGenerational",<br>
> >> > >> "-verbose:gc",<br>
> >> > >> "-XX:+HeapDumpOnOutOfMemoryError",<br>
> >> > >> "-XX:HeapDumpPath=heapdump.hprof",<br>
> >> > >> "-XX:MaxDirectMemorySize=2g",<br>
> >> > >><br>
> >> > >><br>
> >> > >> Caused by:<br>
> java.lang.OutOfMemoryError: Cannot<br>
> >> > reserve 60000 bytes of direct buffer memory (allocated:<br>
> >> 2147446560,<br>
> >> > limit: 2147483648)<br>
> >> > >> at<br>
> >> > java.base/java.nio.Bits.reserveMemory(Bits.java:178)<br>
> >> > >> at<br>
> >> > <br>
> java.base/java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:111)<br>
> >> > >> at<br>
> >> > <br>
> java.base/java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:360)<br>
> >> > >> at<br>
> >> > <br>
> net.openhft.chronicle.bytes.internal.NativeBytesStore.elasticByteBuffer(NativeBytesStore.java:191)<br>
> >> > >> at<br>
> >> > <br>
> net.openhft.chronicle.bytes.BytesStore.elasticByteBuffer(BytesStore.java:192)<br>
> >> > >> at<br>
> >> > <br>
> net.openhft.chronicle.bytes.Bytes.elasticByteBuffer(Bytes.java:176)<br>
> >> > >> at<br>
> >> > <br>
> net.openhft.chronicle.bytes.Bytes.elasticByteBuffer(Bytes.java:148)<br>
> >> > >> at <a href="http://io.sirix.access.trx.page" rel="noreferrer" target="_blank">io.sirix.access.trx.page</a><br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNazagnbG$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNazagnbG$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a>> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a>>>>.NodePageTrx.lambda$parallelSerializationOfKeyValuePages$1(NodePageTrx.java:443)<br>
> >> > >><br>
> >> > >><br>
> >> > >><br>
> >> > >> Am Do., 15. Feb. 2024 um 12:05 Uhr<br>
> >> schrieb Stefan<br>
> >> > >> Karlsson<br>
> <<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>><br>
> >> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>>><br>
> >> > <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>><br>
> >> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>>>><br>
> >> > >> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>><br>
> >> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>>><br>
> >> > <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>><br>
> >> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a><br>
> <mailto:<a href="mailto:stefan.karlsson@oracle.com" target="_blank">stefan.karlsson@oracle.com</a>>>>>>:<br>
> >> > >><br>
> >> > >> Hi Johannes,<br>
> >> > >><br>
> >> > >> We tried to look at the log<br>
> files and<br>
> >> the jfr<br>
> >> > >> files, but couldn't find<br>
> >> > >> an OotOfMemoryError in any of<br>
> them.<br>
> >> Do you think<br>
> >> > >> you could try to rerun<br>
> >> > >> and capture the entire GC log<br>
> from the<br>
> >> > >> OutOfMemoryError run?<br>
> >> > >><br>
> >> > >> A few things to note:<br>
> >> > >><br>
> >> > >> 1) You seem to be running the<br>
> Graal<br>
> >> compiler.<br>
> >> > >> Graal doesn't support<br>
> >> > >> Generational ZGC, so you are<br>
> going to run<br>
> >> > >> different compilers when you<br>
> >> > >> compare Singlegen ZGC with<br>
> >> Generational ZGC.<br>
> >> > >><br>
> >> > >> 2) It's not clear to me that the<br>
> >> provided JFR<br>
> >> > >> files matches the provided<br>
> >> > >> log files.<br>
> >> > >><br>
> >> > >> 3) The JFR files show that<br>
> >> > -XX:+UseLargePages are<br>
> >> > >> used, but the gc+init<br>
> >> > >> logs shows 'Large Page Support:<br>
> >> Disabled', you<br>
> >> > >> might want to look into<br>
> >> > >> why that is the case.<br>
> >> > >><br>
> >> > >> 4) The singlegen JFR file has a<br>
> >> > >> -Xlog:gc:g1-chicago.log line.<br>
> It should<br>
> >> > >> probably be named zgc-chicago.log.<br>
> >> > >><br>
> >> > >> Cheers,<br>
> >> > >> StefanK<br>
> >> > >><br>
> >> > >> On 2024-02-14 17:36, Johannes<br>
> >> Lichtenberger<br>
> >> > wrote:<br>
> >> > >> > Hello,<br>
> >> > >> ><br>
> >> > >> > a test of my little DB project<br>
> >> fails using<br>
> >> > >> generational ZGC, but not<br>
> >> > >> > with ZGC and G1 (out of<br>
> memory error).<br>
> >> > >> ><br>
> >> > >> > To be honest, I guess the<br>
> >> allocation rate and<br>
> >> > >> thus GC pressure, when<br>
> >> > >> > traversing a resource in<br>
> SirixDB is<br>
> >> > >> unacceptable. The strategy is to<br>
> >> > >> > create fine-grained nodes<br>
> from JSON<br>
> >> input and<br>
> >> > >> store these in a trie.<br>
> >> > >> > First, a 3,8Gb JSON file is<br>
> >> shredded and<br>
> >> > >> imported. Next, a preorder<br>
> >> > >> > traversal of the generated trie<br>
> >> traverses<br>
> >> > a trie<br>
> >> > >> (with leaf pages<br>
> >> > >> > storing 1024 nodes each and<br>
> in total<br>
> >> > >> ~300_000_000 (and these are going<br>
> >> > >> > to be deserialized one by<br>
> one). The<br>
> >> pages are<br>
> >> > >> furthermore referenced<br>
> >> > >> > in memory through<br>
> >> PageReference::setPage.<br>
> >> > >> Furthermore, a Caffeine page<br>
> >> > >> > cache caches the PageReferences<br>
> >> (keys) and the<br>
> >> > >> pages (values) and sets<br>
> >> > >> > the reference back to null once<br>
> >> entries are<br>
> >> > >> going to be evicted<br>
> >> > >> > (PageReference.setPage(null)).<br>
> >> > >> ><br>
> >> > >> > However, I think the whole<br>
> strategy of<br>
> >> > having to<br>
> >> > >> have in-memory nodes<br>
> >> > >> > might not be best. Maybe it's<br>
> >> better to use<br>
> >> > >> off-heap memory for the<br>
> >> > >> > pages itself with<br>
> MemorySegments,<br>
> >> but the<br>
> >> > pages<br>
> >> > >> are not of a fixed<br>
> >> > >> > size, thus it may get tricky.<br>
> >> > >> ><br>
> >> > >> > The test mentioned is this:<br>
> >> > >> ><br>
> >> > >><br>
> >> ><br>
> >><br>
> <a href="https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java#L69" rel="noreferrer" target="_blank">https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java#L69</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNUTAN5gn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNUTAN5gn$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$</a>>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a>>>> <<a href="https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java#L69" rel="noreferrer" target="_blank">https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java#L69</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNUTAN5gn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNUTAN5gn$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybA2KQCpC$</a>>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/blob/248ab141632c94c6484a3069a056550516afb1d2/bundles/sirix-core/src/test/java/io/sirix/service/json/shredder/JsonShredderTest.java*L69__;Iw!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFRtH2qmJ$</a>>>>><br>
> >> > >> ><br>
> >> > >> > I can upload the JSON file<br>
> >> somewhere for a<br>
> >> > >> couple of days if needed.<br>
> >> > >> ><br>
> >> > >> > Caused by:<br>
> java.lang.OutOfMemoryError<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:542)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:567)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:670)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:160)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:174)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)<br>
> >> > >> > at<br>
> >> > >> ><br>
> >> > >><br>
> >> > <br>
> java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)<br>
> >> > >> > at<br>
> >> > >> > <a href="http://io.sirix.access.trx.page" rel="noreferrer" target="_blank">io.sirix.access.trx.page</a><br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNazagnbG$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNazagnbG$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a>> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a>>>><br>
> >> > >> <br>
> <<a href="http://io.sirix.access.trx.page" rel="noreferrer" target="_blank">http://io.sirix.access.trx.page</a><br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNazagnbG$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNazagnbG$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybLv7t-Xn$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a>> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a> <<a href="https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://io.sirix.access.trx.page__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFeoArpQf$</a>>>>>.NodePageTrx.parallelSerializationOfKeyValuePages(NodePageTrx.java:442)<br>
> >> > >> ><br>
> >> > >> > I've uploaded several JFR<br>
> >> recordings and logs<br>
> >> > >> over here (maybe besides<br>
> >> > >> > the async profiler JFR files the<br>
> >> zgc-detailed<br>
> >> > >> log is most interesting):<br>
> >> > >> ><br>
> >> > >> ><br>
> >> > >><br>
> >> <a href="https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core" rel="noreferrer" target="_blank">https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core</a><br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNVj2Peec$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNVj2Peec$</a>><br>
> >> <br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$</a>>><br>
> >> > <br>
> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a>>>> <<a href="https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core" rel="noreferrer" target="_blank">https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNVj2Peec$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!M33-mkbNfIFidOtIRYJLrdt970BIn5XjvmSvgBg0Ip6zkm5Zk7w6OG6FunFxjzDpUZju_f7FbEua8sTaS9Q3SnufNVj2Peec$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!O5j6Ri-Ostqq68q1zm71CEhSQ4CE7DqBfHZNq7cDAhU7b7CwqrnIA-ddZFaQDbOMAkgHkFriNeIrXJdRofVuv1UybMV7Rgtt$</a>>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a>> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a> <<a href="https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://github.com/sirixdb/sirix/tree/main/bundles/sirix-core__;!!ACWV5N9M2RV99hQ!MWZDuvCBsbZSYul-HLDtF_j1IBD6osBF4cBVE_bg0yM5zCqYFwzLLp7nKN3b1hq1XVFRreqUVaXiKuXjUwGbxpjjFYBlqOOx$</a>>>>><br>
> >> > >> ><br>
> >> > >> > kind regards<br>
> >> > >> > Johannes<br>
> >> > >><br>
> >> ><br>
> <br>
</blockquote></div>