GrepOra’s 2 Years Commemorative Book: |GREP ORA | sort quality | head 200

Hello all!

We are very proud and happy to share with you our first book!
We made it as a celebration for the GrepOra’s 2 years, completed last Sunday (Jan 29th).

It has the top 200 posts published in this last 2 years for your appreciation. It’s, above all, a good opportunity to refresh some posts that are still actual and relevant. And it’s all free!

We compiled it as a best moments review also to engage new readers with the best past posts and reach that readers that enjoy to read a book in their mobile reading devices. Actually, we believe that writing material for this kind of media is the future (or the present), so if you prefer to read PDF, MOBI or EPUB in you Kindle, Ipad, or similar, specially for those who prefer the offline mode to not being bothered by social media notifications, instant messages and other: This is for you. 🙂

Download PDF
Download MOBI
Download EPUB

There is no chapters of any restrictedly fixed boundaries. However, to give a little sense, we kind of organized the posts by following this (using our blog categories):

  • Oracle Database, RAC and Dataguard;
  • ASM;
  • RMAN, Datapump, Exp/Imp;
  • Enterprise Manager;
  • Application and Middleware;
  • Golden Gate and Data Integrator;
  • Linux and Shellscripts;
  • Cloud Computing;
  • Heterogeneous Databases;
  • Web Development and APEX;
  • PL/SQL and SQL Scripts;
  • Errors and Bugs.

This book is to above all, view, learn and review some curiosities, tips and some useful stuff for daily basis challenges and struggles on working with Oracle tech. But mostly to have fun! This is a book written by Oracle geeks to Oracle geeks.

Enjoy!

GrepOra Team.

Advertisements

Infiniband Error: Cable is present on Port “X” but it is polling for peer port

Facing this error? Let me guess: Ports 03, 05, 06, 08, 09 and 12 are alerting? You have a Quarter Rack? Have recently installed Exadata plugin to version 12.1.0.3 or higher?
Don’t panic!

This is probably related to Bug 15937297 : EM 12C HAS ERRORS CABLE IS PRESENT ON PORT ‘N’ BUT IT IS POLLING FOR PEER PORT. The full message might be like “Cable is present on Port 6 but it is polling for peer port. This could happen when the peer port is unplugged/disabled“.

In fact, the bug was closed as not a bug. 🙂
As part of the 12.1.0.3 Exadata plugin, the IB switch ports are now checked for non-terminated cables. So these errors ‘polling for peer port’ are the expected behavior.  Once ‘polling for peer port’ is an enhanced feature of the 12.1.0.3 plugin, this explains why you most likely did not see these errors until you upgraded the OMS to 12.1.0.2 and then updated the plugins.

In Quarter Racks, the following ports 3, 5, 6, 8, 9 and 12 are usually cabled ahead of time, but not terminated. In some racks port 32 may also be unterminated. Checking for incident in OEM you might see something like this image:

newscreenshot-2016-12-26-as-20-03-50

Continue reading

RS-7445 [Serv MS leaking memory] [It will be restarted] [] [] [] [] [] [] [] [] [] []

Hello!
Having this error from cell alerthistory.log? Don’t panic!
Take a look in MOS: Exadata Storage Cell reports error RS-7445 [Serv MS Leaking Memory] (Doc ID 1954357.1). It’s related to Bug  – RS-7445 [SERV MS LEAKING MEMORY].

The issue is a memory leak in the Java executable and affects systems running with JDK 7u51 or later versions. This is relevant for all versions in Release 11.2 to 12.1.

What happens is that MS process is consuming high memory (up to 2GB).  Normally MS use around 1GB but because of the bug the memory allocated can grow upt to 2GB.  You can check it as per example below:

[root@exaserver ~]# ps -feal|grep java
0 S root     16493 14737  0  80   0 - 15317 pipe_w 18:34 pts/0    00:00:00 grep java
0 S root     22310 27043  2  80   0 - 267080 futex_ 18:15 ?       00:00:27 /usr/java/default/bin/java -Xms256m -Xmx512m -XX:-UseLargePages -Djava.library.path=/opt/oracle/cell/cellsrv/lib -Ddisable.checkForUpdate=true -jar /opt/oracle/cell/oc4j/ms/j2ee/home/oc4j.jar -out /opt/oracle/cell/cellsrv/deploy/log/ms.lst -err /opt/oracle/cell/cellsrv/deploy/log/ms.err

Note that: 267080 * 4096 = 1143MB (1GB). If your number is higher than this, it indicates the presence of the bug.

Continue reading

GoldenGate supplemental log check

Are you bored with GoldenGate objects with no supplemental log on Oracle Database?

This script will check ALL tables in GG PRM, after check on database supplemental log information.

PRM, dblogin should be changed.

Try this script on crontab:

vi gg_trandata_checkup.sh

cd $GGATE

echo > gg.out
echo "dblogin USERID @ PASSWORD > template_check.tmp
echo "" >> template_check.tmp
cat dirprm/ext_1.prm|grep -i TABLE|awk {' print $1" "$2 '}|awk -F"," {' print $1 '}|sed 's/TABLE/INFO TRANDATA/g' >> template_check.tmp

./ggsci -s gg.out
obey template_check.tmp
EOF

cat gg.out|sed '/^$/d'|grep -v ": ALL."|grep -v -i "info trandata"|grep -v "data is enabled for table"|grep -v "ERROR OGG-01784"

Mail this to GGAdmins.
Maiquel.

Converting Between SQLServer, Oracle, PostgreSQL, MySQL, Sybase and others…

Hi all!
I was asked to make a conversion from T-SQL (MSSQL) Procedure to PL/PGSQL. Regarding how boring is this task, the follow link helped me:
http://www.sqlines.com/online

I highly recommend it. The site has a commercial solution to convert all database, but some code can be converted online for free. 🙂
The conversion not fixed at all, but make a good part of the work… And all help is helpful…

Continue reading

Error OGG-00354 Invalid BEFORE column:(column_name)

When we use extraction process with certain macro filters, and send the trails to a goldengate with JAVA adapter, the java extract process fails with the following error: OGG-00354 Invalid BEFORE column:(column_name).

EXTRACT PROCESS

EXT01
exttrail ./dirdat/e1, FORMAT RELEASE 11.1
GETUPDATEBEFORES
include ./dirmac/filter.mac
TABLE OWNER01.TABLE01, #filter01();

PUMP PROCESS

PUMP01
rmthost ggjava.net
rmttrail ./dirdat/j1 , format release 11.1
GETUPDATEBEFORES
TABLE OWNER01.TABLE01;

EXTRACT GG JAVA

EXTRACT JAVA01
GETUPDATEBEFORES
TABLE OWNER01.TABLE01;

In some cases, this issue can be resolved just removing the clause “GETUPDATEBEFORES”, as reported in the Oracle note (Doc ID 2151605.1). But in some environments this procedure not resolve, because it is an undocumented bug in goldengate JAVA 11.1, which is caused by the use of format release 11.1.
This same process has been testing in goldengate 12.1, with format release 12.1, and the problem not occurs.

The solution is the upgrade!  \o/
Dieison.

Oracle – Free DevOps Massive Open Online Course (MOOC)

Hey!
Just passing by to let you know that Oracle is organizing a free Massive Open Online Course to cover DevOps topics.

6509529_orig

The course will be delivered over three weeks from 13 January to 3 February. 

The discussed topics are:

• What is DevOps ?
• Test-Driven Development (TDD) Using Python or Java
• Agile and Project Management Using Oracle Developer Cloud Service
• Continuous Integration and Continuous Deployment Using Oracle Developer Cloud Service

You can enroll to the course by clicking here.

Enjoy!