Does it look similar to the following bugs?

If that's the same (and it seems so to me [1]), then speak up and persuade Paul it's an important edge case (as stated in JDK-8169425).

Best regards,
Vladimir Ivanov

[1] new RubyClass(Ruby.this) in

    public static class Ruby {
        private ClassValue<RubyClass> cache = new ClassValue<RubyClass>() {
            protected RubyClass computeValue(Class<?> type) {
                return new RubyClass(Ruby.this);

On 3/1/18 2:25 AM, Charles Oliver Nutter wrote:
So I don't think we ever closed the loop here. Did anyone on the JDK side confirm this, file an issue, or fix it?

We still have ClassValue disabled in JRuby because of the rooting issues described here and in

- Charlie

On Thu, Aug 27, 2015 at 7:04 AM Jochen Theodorou < <>> wrote:

    One more thing...

    Remi, I tried your link with my simplified scenario and it does there
    not stop the collection of the classloader

    Am 27.08.2015 11:54, schrieb Jochen Theodorou:
     > Hi,
     > In trying to reproduce the problem outside of Groovy I stumbled
    over a
     > case case which I think should work
     > public class MyClassValue extends ClassValue {
     >      protected Object computeValue(Class type) {
     >          Dummy ret = new Dummy();
     >          Dummy.l.add (this);
     >          return ret;
     >      }
     > }
     >   class Dummy {
     >       static final ArrayList l = new ArrayList();
     >   }
     > basically this means there will be a hard reference on the ClassValue
     > somewhere. It can be in a static or non-static field, direct or
     > indirect. But this won't collect. If I put for example a
     > in between it works again.
     > Finally I also tested to put the hard reference in a third class
     > instead, to avoid this self reference. But it can still not collect.
     > So I currently have the impression that if anything holds a hard
     > reference on the class value that the classloader cannot be collected
     > anymore.
     > Unless I misunderstand something here I see that as a bug
     > bye blackdrag

    Jochen "blackdrag" Theodorou

    mlvm-dev mailing list <>


- Charlie (mobile)

mlvm-dev mailing list

mlvm-dev mailing list

Reply via email to