Hi all,

in our repository v. 2.14.0 with Oracle as persistence manager, it was wrongly 
created a node with a lot of properties (we believe around 675000 properties).

Now we are not able to remove this node, because its removal increases the CPU 
(100% or 200%, we have 4 cores) for an undeterminate time, the removal doesn't 
ever end, we waited for twelve hours...

Our code is simply this:

node.remove();
node.save();

but we saw that it's the remove operation which blocks for hours, inspecting 
thread we saw:


                at 
oracle.jdbc.driver.OracleBlobInputStream.needBytes(OracleBlobInputStream.java:166)
                at 
oracle.jdbc.driver.OracleBufferedStream.readInternal(OracleBufferedStream.java:176)
                at 
oracle.jdbc.driver.OracleBufferedStream.read(OracleBufferedStream.java:145)
                - locked <37f8bb9e> (a oracle.jdbc.driver.OracleBlobInputStream)
                at 
org.apache.commons.io.input.ProxyInputStream.read(ProxyInputStream.java:100)
                at java.io.DataInputStream.readFully(DataInputStream.java:195)
                at java.io.DataInputStream.readFully(DataInputStream.java:169)
                at 
org.apache.jackrabbit.core.persistence.util.BundleReader.readBytes(BundleReader.java:670)
                at 
org.apache.jackrabbit.core.persistence.util.BundleReader.readName(BundleReader.java:521)
                at 
org.apache.jackrabbit.core.persistence.util.BundleReader.readBundleNew(BundleReader.java:188)
                at 
org.apache.jackrabbit.core.persistence.util.BundleReader.readBundle(BundleReader.java:146)
                at 
org.apache.jackrabbit.core.persistence.util.BundleBinding.readBundle(BundleBinding.java:152)
                at 
org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.readBundle(BundleDbPersistenceManager.java:927)
                at 
org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:889)
                at 
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.getBundleCacheMiss(AbstractBundlePersistenceManager.java:767)
                at 
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.getBundle(AbstractBundlePersistenceManager.java:750)
                at 
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.load(AbstractBundlePersistenceManager.java:503)
                at 
org.apache.jackrabbit.core.state.SharedItemStateManager.loadItemState(SharedItemStateManager.java:1881)
                at 
org.apache.jackrabbit.core.state.SharedItemStateManager.getNonVirtualItemState(SharedItemStateManager.java:1799)
                at 
org.apache.jackrabbit.core.state.SharedItemStateManager.getItemState(SharedItemStateManager.java:271)
                at 
org.apache.jackrabbit.core.state.LocalItemStateManager.getPropertyState(LocalItemStateManager.java:135)
                at 
org.apache.jackrabbit.core.state.LocalItemStateManager.getItemState(LocalItemStateManager.java:177)
                - locked <69250779> (a 
org.apache.jackrabbit.core.state.XAItemStateManager)
                at 
org.apache.jackrabbit.core.state.XAItemStateManager.getItemState(XAItemStateManager.java:260)
                at 
org.apache.jackrabbit.core.state.SessionItemStateManager.getItemState(SessionItemStateManager.java:161)
                at 
org.apache.jackrabbit.core.ItemManager.getItemData(ItemManager.java:382)
                at 
org.apache.jackrabbit.core.ItemManager.getItem(ItemManager.java:328)
                at 
org.apache.jackrabbit.core.ItemManager.getItem(ItemManager.java:632)
                - locked <402d456b> (a org.apache.jackrabbit.core.ItemManager)
                at 
org.apache.jackrabbit.core.NodeImpl.onRemove(NodeImpl.java:737)
                at 
org.apache.jackrabbit.core.NodeImpl.removeChildNode(NodeImpl.java:625)
                at 
org.apache.jackrabbit.core.ItemRemoveOperation.perform(ItemRemoveOperation.java:78)
                at 
org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216)
                at org.apache.jackrabbit.core.ItemImpl.perform(ItemImpl.java:91)
                at org.apache.jackrabbit.core.ItemImpl.remove(ItemImpl.java:322)

Have you some idea to remove such a big node?

Thanks in advance, best regards
[https://westpole.it/firma/logo.png]

Raffaele Gambelli
WebRainbow(r) Software Developer

P +39 051 8550 576
M #
E r.gambe...@westpole.it
W https://westpole.webex.com/meet/R.Gambelli
A Via Ettore Cristoni, 84 - 40030 Casalecchio di Reno

[https://westpole.it/firma/sito.png]<https://westpole.it>  
[https://westpole.it/firma/twitter.png] <https://twitter.com/WESTPOLE_SPA>   
[https://westpole.it/firma/facebook.png] 
<https://www.facebook.com/WESTPOLESPA/>   
[https://westpole.it/firma/linkedin.png] 
<https://www.linkedin.com/company/westpole/>


This email for the D.lgs.196/2003 (Privacy Code) and European Regulation 
679/2016/UE (GDPR) may contain confidential and/or privileged information for 
the exclusive use of the intended recipient. Any review or distribution by 
others is strictly prohibited. If you are not the intended recipient, you must 
not use, copy, disclose or take any action based on this message or any 
information here. If you have received this email in error, please contact us 
(email:priv...@westpole.it) by reply email and delete all copies. Legal 
privilege is not waived because you have read this email. Thank you for your 
cooperation.


[https://westpole.it/firma/ambiente.png] Please consider the environment before 
printing this email

Reply via email to