What’s an hipersocket?

Wikipedia:

“HiperSockets is an IBM technology for high-speed communications between partitions on a server with a hypervisor. The term is most commonly associated withzSeries, System z9 and System z10 mainframes which can provide in-memory TCP/IP connections between and among LPARs running several different operating systems, including z/OS, z/VM, and Linux on z Systems.”

I’m working on a project where hipersockets deliver the underlying networking between zLinux virtual machines. So it should be quite fast as its handled in memory altogether.

I will do some benchmarking for the TCP/IP latency and throughput, and post results here.

 

Advertisements

Why are you getting so many gigantic tracefiles with Oracle 12c?

40 gigs of tracefiles per day? No problem, Oracle 12c can generate that for you!

This might be because of the new “feature”

What a nice surprise!

You can see in the tracefiles

—– Cursor Obsoletion Dump sql_id=490jdsadiwssa —–

You can find a support note at My Oracle Support:

MOS Note:1955319.1;
Huge Trace Files Created Containing “—– Cursor Obsoletion Dump sql_id=%s —–“

Oracle introduced an enhancement for a bug in Oracle 12.1.0.2 for dumping more information about obsoleted parent cursors and child cursors after parent cursor has been obsoleted

There’s an underscore parameter to control this dumping.

alter system set “_kks_obsolete_dump_threshold” = <N>;

You can use value 0 to disable cursor dumping entirely, otherwise specify  a value for N, which  tells to generate a dump only after how many times the cursor has been invalidated.

Installation problems with 11.2.0.2 Oracle Clusterware/RAC on Solaris 10

If you’re having headaches with Solaris 10 and Oracle Clusterware 11.2.0.x (11.2.0.2.2 even), and get the following warning during root.sh:

CRS-2678: ‘ora.asm’ on ‘RAC1’ has experienced an unrecoverable failure
CRS-0267: Human intervention required to resume its availability.
CRS-5802: Unable to start the agent process
CRS-0215: Could not start resource ‘ora.CRSDATA.dg’.
CRS-4000: Command Create failed, or completed with errors.
create diskgroup CRSDATA … failed
ACFS-9200: Supported
/opt/oracrs/product/11.2.0.2/bin/srvctl start nodeapps -n rac1  … failed
FirstNode configuration failed at /opt/oracrs/product/11.2.0.2/crs/install/crsconfig_lib.pm line 8374.
/opt/oracrs/product/11.2.0.2/perl/bin/perl -I/opt/oracrs/product/11.2.0.2/perl/lib -I/opt/oracrs/product/11.2.0.2/crs/install /opt/oracrs/product/11.2.0.2/crs/install/rootcrs.pl execution failed

There’s a bug Bug 11834289: OHASD FAILED TO START TIMELY that causes OHASD to timeout due to issues in handling large number of filedescriptors. This also causes increased CPU usage!

From Oracle support:

The problem of bug:11834289 is that we take the rlimit and close all potential file handlers at process startup (even before logging in $GRID_HOME/log).
Hence, in case the stack is the same as before and the oraagent or orarootagent are still consuming cpu and the pfiles of those processes show
a rlimit as unlimited, then it is the problem. Those processes are furthermore special, i.e. they are agents started by the ora.crsd, that are failing (whereas all
other services are working, e.g. the ones started by the ohasd).

The workaround/fix for the problem I found is the following configuration on /etc/system:0::::process.max-file-descriptor=(basic,1024,deny),(privileged,1024,deny)
user.root:1::::process.max-file-descriptor=(basic,1024,deny),(privileged,1024,deny)
noproject:2::::process.max-file-descriptor=(basic,1024,deny)
default:3::::process.max-file-descriptor=(basic,1024,deny),(privileged,1024,deny);process.max-sem-nsems=(privileged,16384,deny);project.max-sem-ids=(privileged,65536,deny);project.max-shm-ids=(privileged,65536,deny);project.max-shm-memory=(privileged,68719476736,deny)
user.oracrs:100::oracrs::process.max-file-descriptor=(basic,65535,deny),(privileged,65535,deny);process.max-sem-nsems=(privileged,16384,deny);project.max-sem-ids=(privileged,65536,deny);project.max-shm-ids=(privileged,65536,deny);project.max-shm-memory=(privileged,68719476736,deny)
user.oracle11:101::oracle11::process.max-file-descriptor=(basic,65535,deny),(privileged,65535,deny);process.max-sem-nsems=(privileged,16384,deny);project.max-sem-ids=(privileged,65536,deny);project.max-shm-ids=(privileged,65536,deny);project.max-shm-memory=(privileged,68719476736,deny)

I hope this makes your life easier! Oracle support was able to help here. Thanks

During Rootupgrade.sh – what happens if you have CRS Cluster down?

Imagine, you want to do a rolling upgrade from 11.2.0.1 to 11.2.0.2…

First of all, apply patchset 9706490 to fix couple nasty bugs during ASM rolling upgrade.

Well, let’s say you shut down the Clusterware services (like I did for cleaning disk space) and you forget to start it up (well it isn’t rolling on this node if you shut it down 🙂

What happens if you run rootupgrade.sh during the Upgrade, after installing the new 11.2.0.2 binaries?

Well, nothing! This time rootupgrade.sh was smart! And no bugs in this environment after patching!

Just start up Clusterware (crsctl start crs) and rerun rootupgrade.sh and you’re good to continue!

Database Monitoring Automation starts from simple steps with Grid Control

Imagine you have hundreds of databases, or more. Each time when you add a database to be monitored, you have to do an action to apply a monitoring template.

Why not apply a default template each time a new database target is discovered by Grid Control and avoid extra steps!

Here’s how!