<div dir="ltr"><div>Hi Maria,</div><div>This is strange. I tried the same using the JavacBench app and didn't see this discrepancy in the map file generated by the assembly phase and the production run.</div><div>You may have already checked it but just to confirm if run "grep '@@ Class ' t.log | wc -l" on the map file, do you see the same difference?</div><div><br></div><div>Thanks,</div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">- Ashutosh Mehra</div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Oct 8, 2025 at 4:36 AM María Arias de Reyna Dominguez <<a href="mailto:mariasde@redhat.com" target="_blank">mariasde@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi!</div><div><br></div><div>I have a question.  I did a training run and generated what looks like a valid cache.</div><div><br></div><div>Summary of the number of elements (for certain types of elements) the map contains:<br>```<br>Classes in AOT Cache: 10.885<br>Methods in AOT Cache: 121.393<br>  -> ConstMethods: 121.293<br>  -> MethodCounters: 6.530 <br>  -> MethodData: 4.127 <br>ConstantPool: 10.197<br>  -> ConstantPoolCache: 10.197<br>```<br><br>And then I did a production run using the generated cache, which replaced the `aot.map` with a new one that is much smaller:<br><br>```<br>Classes in AOT Cache: 3.431<br>Methods in AOT Cache: 38.359<br>  -> ConstMethods: 38.359<br>  -> MethodCounters: 0 <br>  -> MethodData: 0 <br>ConstantPool: 3.067<br>  -> ConstantPoolCache: 3.067<br>```</div><div><br></div><div>As you can see, there are a lot of missing elements!</div><div><br>If I check the md5sum of the actual cache file before and after the production run, it stays the same. It is the AOT Cache Map which changes. Is that... supposed to happen? </div><div><br></div><div>Maybe it is a bug related to <a href="https://bugs.openjdk.org/browse/JDK-8362566" target="_blank">https://bugs.openjdk.org/browse/JDK-8362566</a> ?</div><div><br></div><div>Both map files start with `AOT cache map for app.aot`, it is not the map file for the `app.aot.config` that appears during the training run.</div><div><br></div><div>Both the training and the run were the same: just spin up an Infinispan server and shut it down after a few seconds. But I guess that's irrelevant because the aot cache file is exactly the same.</div><div><br></div><div>I could stop generating the aot map file on the production run because there is no need for it, but I forgot to remove it... and then this happened.</div><div><br></div><div><div dir="ltr" class="gmail_signature"><div dir="ltr">Kind regards,<br>María Arias de Reyna Domínguez<br>Senior Software Engineer<br>She / Her / Hers<br><a href="mailto:ariasdereyna@redhat.com" target="_blank">ariasdereyna@redhat.com</a></div></div></div></div>
</blockquote></div>