In Oracle 220.127.116.11.0 native compilation in Oracle was improved in that you do not need to load your own C compiler. This is great. In 11g they also changed how they manage shared memory used for native compilation too. When you compile something natively you’ll see files PESLD* in /dev/shm. If you’re doing java they’ll be something like JOXSHM* (supposedly this affect Java too). The unfortunate fact is that while this all works great in 18.104.22.168.0 this will crash your database in 22.214.171.124.0 because the database doesn’t clean up those files in /dev/shm anymore, so /dev/shm fills up, and your database can no longer allocate memory. There is a patch, and while the description indicates it is merely a workaround (and really not even that) it requires a database bounce occasionally to fix, the non-published patch we got doesn’t seem to work properly if you need to patch multiple databases on a server. As such, we have gone through and completely rolled our databases back to interpreted.
So, if you have Natively compile PL/SQL objects in your database, be very wary of the current 126.96.36.199.0 patchset.