ODA: Disk troubleshoot

Samples useful command for disk troubleshooting especially after disk replacement of a disk (e0_pd_01 here), despite a couple of reboot, reseat, etc, disk was showing status ‘unknown’ and state detail ‘NewDiskInserted’.

 

oakcli show disk

oakcli stordiag e0_pd_01

 

From both nodes, check the differences and the extra (old) disk still being referenced. Remove it from either of the two files.

grep E0_S01 /etc/multipath.conf

 

From both node, check the consistency, update as necessary to match with the multipath.conf file

/opt/oracle/extapi/asmappl.config

 

From all nodes

oakcli stop oak
oakcli restart oak
multipath -r
multipath -F
multipath -v 2

 

From master node:

oakcli reinit e0_pd_01

 

Now check that all disk are in ‘Good’ status

oakcli show disk

 

If the disk does not get be automatically added to the diskgroup, the following command may help:

ALTER DISK GROUP /+* _OAK_AsmCookie */ DATA ADD DISK '/dev/mapper/HDD_E0_S01_123456p1' NAME HDD_E0_S01_123456p1';

If that does not work, try the FORCE option

Advertisements

OCI-C: Apex 18.1 & dbcs upgrade

After an Apex upgrade from 5.1.0.00.45 to 18.1 or after any dbcs patch upgrade, for example once the 18.2 patch has been applied:

# Setup again the ORDS certificate as discussed in this note.

# Reimplement the ORDS logging as discussed in this note.

# Optionally review the wallet and sqlnet.ora files

# Copy again the Apex 18.1 images

from /u01/app/oracle/product/apex/18.1/apex/images/

to /u01/app/oracle/product/ords/conf/ords/standalone/doc_root/i

 

All set.

EMCC: EMGC_ADMINSERVER OutOfMemoryError

Tentative workaround to address an error “java.lang.OutOfMemoryError: Java heap space” raised by an EMGC_ADMINSERVER Weblogic server of an EMCC 13.2 instance.

Edit /u01/app/oracle/gc_inst/user_projects/domains/GCDomain/bin/startweblogic.sh to add the following contents to increase the memory of the AdminServer:

# START WEBLOGIC
JAVA_VM=-server
echo "****************************************** Debug"
echo "ServerName=${SERVER_NAME}"
if [ "${SERVER_NAME}" = "EMGC_ADMINSERVER" ]; then
 MEM_ARGS="-Xms4096m -Xmx4096m -XX:MaxPermSize=768m -verbose:gc "
 echo "MEM_ARGS=${MEM_ARGS}"
fi
echo "****************************************** Debug"

 

eBS: FRM-92095: Oracle Jinitiator Version Too Low 

In case the error below  is returned for eBS 12.1.3 when opening forms, it may due to an very outdated JRE6 running on the middle tier, not compatible with the latest JRE7 or JRE8 from the desktop tier.

FRM-92095: Oracle Jinitiator Version Too Low  Please Install Version 1.1.8.2 Or Higher

 

As a workaround:

Set the Windows environment variable JAVA_TOOLS_OPTIONS to “-djava.vendor=”New Oracle”, reopen the Windows session and try again.

 

References:

  • MOS 1579805.1 Jinitiator Error FRM-92095: Oracle Jinitiator Version Too Low Please Install Version 1.1.8.2 Or Higher
  • MOS 393931.1  Deploying JRE (Native Plug-in) for Windows Clients in Oracle E-Business Suite Release 12

OCI-c: ORDS redirection and logging

The below is applicable to the ORDS instance running out of DBCS instance running on OCI-classic, on a customized version of ORDS 3.0. For OCI or 18.x version of ORDS, check out this note.

To customize ords by adding logfile and redirection capabilities, for example from ‘/’ to ‘/ords/apps/f?p=100 where is the workspace where the application 100 is running, proceed as follow:

#1 Create or update the file /u01/app/oracle/product/ords/conf/ords/standalone/etc/jetty-http.xml to add the following:

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">

<!-- -->
<!-- Rewrite -->
<!-- -->
<Get id="oldhandler" name="handler"/>
 <Set name="handler">
 <New id="Rewrite" class="org.eclipse.jetty.rewrite.handler.RewriteHandler">
 <Set name="handler">
 <Ref refid="oldhandler"/>
 </Set>
 <Set name="rewriteRequestURI">
 <Property name="rewrite.rewriteRequestURI" default="true"/>
 </Set>
 <Set name="rewritePathInfo">
 <Property name="rewrite.rewritePathInfo" default="false"/>
 </Set>
 <Set name="originalPathAttribute">
 <Property name="rewrite.originalPathAttribute" default="requestedPath"/>
 </Set>
 </New>
 </Set>

<!-- -->
<!-- apps redirect -->
<!-- -->
<Ref refid="Rewrite">
 <Call name="addRule"> 
 <Arg> 
 <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> 
 <Set name="pattern">/apps</Set> 
 <Set name="replacement">/ords/apps/f?p=100:1::::::/</Set> 
 </New> 
 </Arg> 
 </Call> 
 <Call name="addRule"> 
 <Arg> 
 <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> 
 <Set name="pattern">^/$</Set> 
 <Set name="replacement">/ords/apps/f?p=100:1::::::/</Set> 
 </New> 
 </Arg> 
 </Call> 
 <Call name="addRule"> 
 <Arg> 
 <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> 
 <Set name="pattern">/index.html</Set> 
 <Set name="replacement">/ords/apps/f?p=100:1::::::/</Set> 
 </New> 
 </Arg> 
 </Call> 
 </Ref>

<!-- -->
<!-- http logs -->
<!-- -->
<Ref id="Handlers">
 <Call name="addHandler">
 <Arg>
 <New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler">
 <Set name="requestLog">
 <New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">
 <Set name="filename"><Property name="jetty.logs" default="/tmp/"/>ords-access-yyyy_mm_dd.log</Set>
 <Set name="filenameDateFormat">yyyy_MM_dd</Set>
 <Set name="retainDays">90</Set>
 <Set name="append">true</Set>
 <Set name="extended">false</Set>
 <Set name="logCookies">false</Set>
 <Set name="LogTimeZone">GMT</Set>
 </New>
 </Set>
 </New>
 </Arg>
 </Call>
 </Ref>

</Configure>

 

#2 Restart ords

sudo /etc/init.d/ords restart

 

#3 Check the logfile

tail -f /tmp/ords-access-2018_mm_dd.log