You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by "robertlazarski ." <ro...@gmail.com> on 2017/11/29 14:28:09 UTC

[beanutils] JVM problem with BeanIntrospectionData.getWriteMethod()

Hello all,

We recently upgraded to commons beanutils 1.9.3 and are seeing this problem
on our Wildfly 10.1 server running on RHEL 7.x Linux.

We may have a problem with one of our Objects passed into
BeanUtils.copyProperties() - still investigating - though my gut feeling is
the problem is related to our recent upgrade.

Any ideas? This process has been hanging for close to an hour at the
moment.

# find Linux processes taking more than 10% CPU
/home> ps -eLo pid,lwp,nlwp,ruser,pcpu,stime,etime,args|grep 85150 | awk '
$5 >= 10 '
...

# get hex value of "Light weight process"

/home> printf "%x\n"  85399

14d97

# use main JVM process to get snapshot of the JVM, filter on the LWP
 /home>  jstack -l 85150  | grep -A 100 14d97
"default task-62" #245 prio=5 os_prio=0 tid=0x00007f99e40e2800 nid=0x14d97
waiting for monitor entry [0x00007f999911a000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at
java.beans.PropertyDescriptor.getWriteMethod(PropertyDescriptor.java:271)
        - waiting to lock <0x00000004f3ee1380> (a
java.beans.PropertyDescriptor)
        at
org.apache.commons.beanutils.BeanIntrospectionData.getWriteMethod(BeanIntrospectionData.java:113)
        at
org.apache.commons.beanutils.PropertyUtilsBean.getWriteMethod(PropertyUtilsBean.java:1319)
        at
org.apache.commons.beanutils.PropertyUtilsBean.isWriteable(PropertyUtilsBean.java:1480)
        at
org.apache.commons.beanutils.BeanUtilsBean.copyProperties(BeanUtilsBean.java:280)
        at
org.apache.commons.beanutils.BeanUtils.copyProperties(BeanUtils.java:135)

Re: [beanutils] JVM problem with BeanIntrospectionData.getWriteMethod()

Posted by Martin Gainty <mg...@hotmail.com>.



________________________________
From: robertlazarski . <ro...@gmail.com>
Sent: Wednesday, November 29, 2017 9:28 AM
To: Commons Users List
Subject: [beanutils] JVM problem with BeanIntrospectionData.getWriteMethod()

Hello all,

We recently upgraded to commons beanutils 1.9.3 and are seeing this problem
on our Wildfly 10.1 server running on RHEL 7.x Linux.

We may have a problem with one of our Objects passed into
BeanUtils.copyProperties() - still investigating - though my gut feeling is
the problem is related to our recent upgrade.

Any ideas? This process has been hanging for close to an hour at the
moment.

# find Linux processes taking more than 10% CPU
/home> ps -eLo pid,lwp,nlwp,ruser,pcpu,stime,etime,args|grep 85150 | awk '
$5 >= 10 '
...

# get hex value of "Light weight process"

/home> printf "%x\n"  85399

14d97

# use main JVM process to get snapshot of the JVM, filter on the LWP
 /home>  jstack -l 85150  | grep -A 100 14d97
"default task-62" #245 prio=5 os_prio=0 tid=0x00007f99e40e2800 nid=0x14d97
waiting for monitor entry [0x00007f999911a000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at
java.beans.PropertyDescriptor.getWriteMethod(PropertyDescriptor.java:271)
        - waiting to lock <0x00000004f3ee1380> (a
java.beans.PropertyDescriptor)
        at
org.apache.commons.beanutils.BeanIntrospectionData.getWriteMethod(BeanIntrospectionData.java:113)
        at
org.apache.commons.beanutils.PropertyUtilsBean.getWriteMethod(PropertyUtilsBean.java:1319)
        at
org.apache.commons.beanutils.PropertyUtilsBean.isWriteable(PropertyUtilsBean.java:1480)
        at
org.apache.commons.beanutils.BeanUtilsBean.copyProperties(BeanUtilsBean.java:280)
        at
org.apache.commons.beanutils.BeanUtils.copyProperties(BeanUtils.java:135)

MG>some other thread has a lock on PropertyDescriptor? can you reun with JVM flag

XX:+PrintConcurrentLocks