[collectd-changes] collectd, the system statistics collection daemon: Changes to 'ff/java'

Florian Forster octo at verplant.org
Sat Feb 21 09:21:16 CET 2009


 src/java.c |  174 ++++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 141 insertions(+), 33 deletions(-)

New commits:
commit 531779b6deedaf8cb6249c3009380b064cd80c8b
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 09:13:43 2009 +0100

    java plugin: Implement a reference counter for the JVMEnv pointers.
    
    This way one thread entering the Java plugin twice, e. g. with the
    following call-chain, will not detach itself from the JVM before it is
    completely done with it.
    
    The problematic situation is:
      -> cjni_read
      -> ALLOC JVM
      -> `Read' (in Java)
      -> `DispatchValues' (in Java)
      -> plugin_dispatch_values
      -> cjni_write
      -> ALLOC JVM (this is a no-op!)
      -> `Write' (in Java)
      -> DEALLOC JVM
    
    This last dealloc is prematurely, because the thread is not done with
    the JVM yet: It'd like to continue and return from `DispatchValues' to
    execute some more Java code..




More information about the collectd-changes mailing list