Skip to Main Content

Database Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

java.lang.Shutdown and Jena connections

652134Mar 20 2009 — edited Mar 24 2009
System Specs:
Oracle 11.1.0.6.0
Oracle Jena Drivers Release 2
Jena 2.5.6
Java 1.5
Web Server: Glassfish

Hello,
We are running a web application against our Oracle database. We are using the Jena drivers to open SPARQL queries. Recently we started seeing some Java Heap memory exceptions on our glassfish server. We dumped the java heap hprof file. We then analyzed the contents. Within the Heap there is an object called java.lang.Shutdown. This object maintains a HashMap of references of object that the JVM will cleanup once the web server is shutdown. It appears that this list accumulates oracle.spatial.rdf.client.jena.Oracle$1. According to the heap tool, there are 5000 of these objects accumulated in the java.lang.Shutdown. Is there a way to free these up programmatically (or avoid registering them with the java.lang.Shutdown)? I believe I am correctly closing the Oracle connections. I do not see any active Oracle JDBC connections on the server.

Thanks,
Chuck
This post has been answered by alwu-Oracle on Mar 23 2009
Jump to Answer

Comments

Dude!

Check the last paragraph: https://docs.oracle.com/en/database/oracle/oracle-database/18/cwsol/understanding-oracle-flex-clusters.html#GUID-26BBAAB…

A Leaf Node sends periodic heartbeat messages to its associated Hub Node, which is different from the heartbeat messages that occur between Hub Nodes. During planned shutdown of the Hub Nodes, a Leaf Node attempts to connect to another Hub Node, unless the Leaf Node is connected to only one Hub Node. If the Hub Node is evicted, then the Leaf Node is also evicted from the cluster.

https://docs.oracle.com/en/database/oracle/oracle-database/18/cwlin/about-oracle-flex-asm-clusters-networks.html#GUID-89…

Oracle Flex ASM can use either the same private networks as Oracle Clusterware, or use its own dedicated private networks. Each network can be classified PUBLIC, ASM & PRIVATE, PRIVATE, or ASM.

DarkwingDuck

Thanks!

"A Leaf Node sends periodic heartbeat messages to its associated Hub Node, which is different from the heartbeat messages that occur between Hub Nodes."

This was new for me. I knew about the heartbeat beetween leaf node an hubnode, and that leaf is evicted.

But I thought it is the same heartbeat as the one between the hub-nodes.

Oracle Flex ASM can use either the same private networks as Oracle Clusterware, or use its own dedicated private networks. Each network can be classified PUBLIC, ASM & PRIVATE, PRIVATE, or ASM.

Well, that the point nobody could figure out for me clearly, which might be a result of my poor english. :-(

I got this one:

The private network is for the cluster, such as heartbead an - on RAC - cluster interconnect.

The ASM Interface is for the a new comunication which comes with flex asm.

If an database instances runs on  an hubnode without ASM instance, any communication with the ASM instance (needed for example creating a datafile, logswitches) runs over the ASM interfaces.

On leaf nodes I read this:

  • Use Indirect access to the Oracle ASM disks, where I/O is handled as a service for the client on a Hub Node.
  • Submit disk service requests through the Oracle ASM network.

A leaf node needs data that is stored on ACFS.

So the IO runs from the leaf nodes the hub node it is connected to and the hubnode sends the requested data.

As this runs over the ASM interface (which should be a seperated interface in seperate network, NOT private)  it puts no load on private interfaces.

If you answer "yes"... well, you just made my day!

Dude!
Answer

As far a I know:

ASM hub nodes are ASM RAC cluster nodes that provide ASM client service to ASM flex (leaf) nodes. ASM client I/O on behalf of ASM flex nodes is performed on the ASM hub node. ASM client communication between the ASM hub and flex nodes is via a separate ASM client network.

ASM flex nodes also run Oracle Clusterworks to communicate with ASM hub nodes. For the hub and leaf node interconnect, you can use the ASM client network, a private network between the all hub and all leaf nodes, or the private network of your RAC cluster. It is best to have a private network for Oracle Clusterworks communication between hub and leaf nodes.

ACFS uses a kernel driver to provide a local filesystem mounting an ASM disk group. ACFS is only available for ASM RAC or hub nodes, and is not available for ASM leaf nodes. https://docs.oracle.com/en/database/oracle/oracle-database/12.2/cwsol/restrictions-and-guidelines-for-oracle-acfs.html#GUID-587B11C1-CB42-4584-A626-A95C925C78E3

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/cwsol/restrictions-and-guidelines-for-oracle-acfs.html#G…

Marked as Answer by DarkwingDuck · Sep 27 2020
DarkwingDuck

Thanks a lot

1 - 4
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Apr 21 2009
Added on Mar 20 2009
7 comments
2,831 views