Directory scanning exceeded maximum items: 500000. Configure with system property com.oracle.classloader.directory.max_items


Very weird issue with Weblogic Admin server Startup . There is no reference in web how to fix this . This is a WARNING and not an error when you start OBIEE 12c .

This will never appear in brand new OBIEE 12c box unless you migrate catalog from 11g to 12c . I have migrated catalog and weblogic starts throwing this warning :

Here is the root cause of this : you can the volume of files created under /tmp and specially the ‘migration’ folder. You need to clean up this and restart OBIEE to resolve this problem .

12c Issue

The issue is weblogic startup found that there are more than 500K files inside the Oracle_Home which is pretty unexpected for weblogic so it just alerts you out

 

Authentication error while upgrading to JDK8 on 11g weblogic 10.3.6.0


Upgrading JDK for existing 11g OBIEE is very simple as it is defined in Oracle Documentation here:  https://docs.oracle.com/cd/E28280_01/bi.1111/e10541/patching.htm#BIESG9065

Generally if not said explicitly in Certification matrix it is assumed that any higher jdk6+ will be compatible with OBIEE 11g which is not in this case. That is weird !

But looks like its not that simple when you have followed the process and all services (Admin / Managed / Obis / Obips / opmn) up and running but heck no clue (not even from log) why the the user authentication fails.

The only clue can be given by weblogic Console when you launch it and go to Deployment components you will several weblogic components is in “Prepared” state rather “Active” . So this is your problem .

Weblogic Error_JDK8

When you search for this error you would be able to know sun/io/CharacterEncoding is obsolete for JDK 8 and some of the dependent process will fail subsequently .

Now the only solution you would be having to resolve this problem to downgrade to JDK 7. Why I have faced this error is, I want to execute my bi-migration tool jar exported from JDK 8 (as in OBIEE 12c) and want to create a 11g export bundle for use in 12c as import archive. After making the JDK change I started all the services and want to see if my application working fine or not and found its broke.

 

Deploying new Font in OBIEE


Purpose: I want to use some font beyond the list of fonts available to use in OBIEE reports. OBIEE report has basic fonts(Arial , Courier, Garamond, Times , Tahoma) as below but I want new font list like below “Lato” fonts highlighted in yellow.12-29-2017 8-48-50 AM

Lato is the the font designed by polish designer Lukasz. https://fonts.google.com/specimen/Lato

Here are the steps how to make this font available to use in OBIEE:

  1. Download all the fonts (.ttf) files
  2. Make “Lato” available to Operating system with 3,4 & 5 below
  3. Deploy the lato font in OBIEE server nodes. In my linux environment, this has been installed under orabi user account who is the owner of OBIEE setup and installation. This should be fine if the Linux Admin install it using root .
  4. First create a directory as ‘.fonts’ under your linux home dir , in my case it is ‘/home/orabi/.fonts’ and copied all .ttf files here. Then use command ‘fc-cache -fv’ in shell . This should show as below:

    12-29-2017 9-03-18 AM
    Flush the OS font cache to load new 10 Lato fonts
  5. Now deploy Lato font in OBIEE . Use below steps:
  6. Edit [MiddlewareHOME]/Oracle_BI1/bifoundation/web/msgdb/messages/commonuitemplates.xml and Add Lato under : WebMessage name=”kuiFormatUIFontOptions” as below in Magenta:

    <WebMessage name=”kuiFormatUIFontOptions” translate=”false”><HTML><option value=”Arial”>Arial</option><option value=”Arial Black”>Arial Black</option><option value=”Arial Narrow”>Arial Narrow</option><option value=”Lato”>Lato</option><option value=”Lato-Black”>Lato-Black</option><option value=”Lato-BlackItalic”>Lato-BlackItalic</option><option value=”Lato-Bold”>Lato-Bold</option><option value=”Lato-BoldItalic”>Lato-BoldItalic</option><option value=”Lato-Hairline”>Lato-Hairline</option><option value=”Lato-HairlineItalic”>Lato-HairlineItalic</option><option value=”Lato-Italic”>Lato-Italic</option><option value=”Lato-Light”>Lato-Light</option><option value=”Lato-LightItalic”>Lato-LightItalic</option><option value=”Courier New”>Courier New</option><option value=”Garamond”>Garamond</option><option value=”Lucida Sans Unicode”>Lucida Sans Unicode</option><option value=”Microsoft Sans Serif”>Microsoft Sans Serif</option><option value=”Times New Roman”>Times New Roman</option><option value=”Tahoma”>Tahoma</option><option value=”Verdana”>Verdana</option></HTML></WebMessage>

  7. Copy: [MiddlewareHOME]/Oracle_BI1/bifoundation/web/msgdb/messages/commonuitemplates.xml to [MiddlewareHOME]/instances/instance1/bifoundation/OracleBIPresentationServicesComponent/coreapplication_obips1/msgdb/messages/commonuitemplates.xml , if the directory doesn’t exist create it
  8.  Now we need to update OBIEE schema directory to register this new information to OBIEE server. So edit [MiddlewareHOME]/Oracle_BI1/bifoundation/web/schemas/analysis_formats.xsd and add below in Magenta. Note the order matters as in which order you want the font list to be appeared in your UI display.

    <xs:simpleType name=”fontFamily”> <xs:annotation> <xs:documentation> family of fonts supported </xs:documentation> </xs:annotation> <xs:restriction base=”xs:string”> <xs:enumeration value=”Arial”/> <xs:enumeration value=”Arial Black”/> <xs:enumeration value=”Arial Narrow”/> <xs:enumeration value=”Lato”/> <xs:enumeration value=”Lato-Black”/> <xs:enumeration value=”Lato-BlackItalic”/> <xs:enumeration value=”Lato-Bold”/> <xs:enumeration value=”Lato-BoldItalic”/> <xs:enumeration value=”Lato-Hairline”/> <xs:enumeration value=”Lato-HairlineItalic”/> <xs:enumeration value=”Lato-Italic”/> <xs:enumeration value=”Lato-Light”/> <xs:enumeration value=”Lato-LightItalic”/> <xs:enumeration value=”Courier New”/> <xs:enumeration value=”Garamond”/> <xs:enumeration value=”Lucida Sans Unicode”/> <xs:enumeration value=”Microsoft Sans Serif”/> <xs:enumeration value=”Times New Roman”/> <xs:enumeration value=”Tahoma”/> <xs:enumeration value=”Verdana”/> </xs:restriction> </xs:simpleType>

  9. After this bounce OBIEE . Simple opmn restart should work else bounce complete weblogic.
  10. Now you can continue using Lato font everywhere in your Dashboard Page/Reports.

Note that : Be cautious once editing the analysis_formats.xsd and any typo here can cause the entire reports / catalog validation failed throwing “Catalog Object Validation Failed” or “Bad XML” . You can always spot this error and reason of objectionable tags under OBIPS logs . Check the log and it should tell what XML tag has issue.

OBIEE 12c – “CSF error” OR “OFM security error” OR “no matching Authentication Protocol”


So , Nowhere in OBIEE 12c Installation said that, you need to have certain pre-requisite condition in the DB to ensure successful installation and  you end up scratching head why you are getting all the nonsense in OBIEE installation logs when everything you did right !

Yes , unfortunately that life with Oracle tool ! (! Sigh ! ) and if you are the one person who hit this error you can try out the option below to fix.

While installing brand new OBIEE12c (not an upgrade)  we have seen issue below and log : /home/orabi/oraInventory/logs/config<time>/startallservers.log

OPMN failed and BIServer , BIPServer and BIScheduler all was in SHUTTING DOWN state.

Below is the server status (./status.sh)

Name                Type            Machine                     Status

—-                    —-                 ——-                       ——

AdminServer     Server            dfatobi                   RUNNING

bi_server1        Server             dfatobi                   RUNNING

obips1             OBIPS            dfatobi                   SHUTDOWN      

obijh1              OBIJH             dfatobi                   RUNNING

obiccs1           OBICCS          dfatobi                   RUNNING

obisch1          OBISCH          dfatobi                   SHUTDOWN      

obis1              OBIS               dfatobi                   SHUTDOWN     

And you see the errors below in bunch of   log files  :

[OBIS] [ERROR:1] [] [] [ecid: ] [sik: ssi] [tid: f1b51720]  [46137] CSF error encountered. Error code: 43131. [[^M

file: server/Utility/Generic/Src/SUGCSF.cpp; line: 133

 [OBIPS] [WARNING:16] [] [saw.csf.cache] [ecid: ] [tid: ] [SI-Name: ] [IDD-Name: ] [IDD-GUID: ] [userId: ] OFM security reported error 43131[[

File:csfwrapperimpl.cpp

Line:213

errCode:28040 errSQLStateBuf:HY000 errMsg:[Oracle DataDirect][ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: No matching authentication protocol

errCode:0 errSQLStateBuf:08003 errMsg:[DataDirect][ODBC lib] Connection not open

Oracle BI Server starting…

errCode:28040 errSQLStateBuf:HY000 errMsg:[Oracle DataDirect][ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: No matching authentication protocol

errCode:0 errSQLStateBuf:08003 errMsg:[DataDirect][ODBC lib] Connection not open

Oracle BI Server startup failed.

nqsserver: Oracle BI Server shutdown.

This means you might end up with Hitting Oracle bug ? My DB server was Oracle 12c R2 12.2 . Lot of places in OTN, Oracle said you might try Oracle 12c R1 but I recommend try below step to see if this works for you .

Try disabling OAS (Oracle Advanced Security) . Ask Oracle DBA to change the DB with below in sqlnet.ora file and you are good to go …

SQLNET.ENCRYPTION_SERVER = rejected 

If that doesn’t help you can try enabling OBIEE (creating a sqlnet.ora file under [DOMAIN_HOME]/config/fmwconfig/bienv/core/) for OAS decryption. However I tried this option and it doesn’t work as for new and scratch installation where do I get this before until installation is done… so previous step does the trick .

SQLNET.ENCRYPTION_CLIENT=accepted
SQLNET.ENCRYPTION_TYPES_CLIENT=(AES256)

The actual reason for the issue is : You are using an Oracle Database (for RCU or datasource) with Oracle Advanced Security (OAS) enabled and with SQL*Net Encryption.

 

OBIEE 12c : Component communication ports


As we know OBIEE 12c is different in terms of lot of things , it is also different from its ancestors in terms of the internal system and other components communication ports. Here is a quick snapshot of all available ports:

ADMIN Server : 9500 (EM, Console , DMS)
BI Server : 9502 (Analytics, XMLPserver,BI Publisher, Mobile , Mapviewer, , Visual Analyzer(VA)

OBISCH_SELF_xxx – OBISCH.obisch1 – 9511 – tcp (s)
OBISCH_MONITOR_xxx – OBISCH_MONITOR.obisch1 – 9512 tcp(s)
BIANALYTICS_URLS, ORACLE_BI_SECURITY_SOAP_URLS  – 9505/analytics
OBIPS_HOSTS – 9507
OBIJH_HOSTS – 9510

ORACLE_BI_SECURITY_SOAP_URLS , ORACLE_BI_SEARCH_REST_URLS , ORACLE_MAPVIEWER_URLS  – 9505

ORACLE_BI_JAVADS_SERVER_URL, ORACLE_BICOMPOSER_URLS – 9502

OBICCS_NODES – 9508
OBICCS_MONITOR_NODES – 9509
OBIS_NODES, OBIS_HOSTS – 9514 (This is the communication port to define in System DSN when creating new ODBC data source in OBIEE 12c , Note : default would be 9703 which is fine for 11g and NOT for 12c)
OBIS_MONITOR_NODES – 9515

Also do keep in mind the ports configuration in default installation. This can be changed in weblogic EM but this are the standard communication ports in 12c.

8-19-2018 5-48-46 PM

Excerpt from Oracle 12c documentation:

NOTE:  The default client/server communication method for the Oracle BI Server has changed from Distributed component object model (DCOM) to TCP/IP. Support for DCOM will be discontinued in a future release. For sites already running the Oracle BI Server that want to continue to use DCOM until support is discontinued, leave this field set to its default value and define a Windows system environment variable named NQUIRE_DCOM to force the usage of DCOM. Set the variable value to 1. (To define a system environment variable, select System from the Control Panel, click the Advanced tab, and then click the Environment Variables button to open the Environment Variables dialog box.)

OBIEE 12c: uploadRpd Failed: Failure in trying to acquire lock. Check bi-lcm-logs or diagnostics.


If you see below error after uploading the 12c RPD make sure you have right parameter passed at the command line .

uploadRpd Failed: Failure in trying to acquire lock. Check bi-lcm-logs or diagnostics. Error Desc Code: DESC_CODE_SERVER_EXCEPTION

This typically happens if the instances are wrong which mean -SI parameter in uploadrpd utility . Please make sure you double check and correct this .

In my case ssi is the default -SI argument value at the command line and you should be able to use cd /u00/app/Oracle_Home/user_projects/domains/bi/bidata/service_instances/ssi/metadata/datamodel/customizations to land to right path where ssi is my -SI argument.

So double check and this might be your issue and once you right service instances you should be good unless some other issues.

Also non comprehensive bi-lcm-logs tells to lookup under managed server log path and see the error description in details under file bi-lcm-rest.log.x at : /u00/app/Oracle_Home/user_projects/domains/bi/servers/bi_server1/logs

De-install OBIEE 12c in <1 minute


Rather going to GUI or achieving this executing bunch of Unix commands I will show you how to do this in 1 minute and possibly less than 1 minute 🙂

My VM Host is Linux and I have SYSDBA access to DB : 11.2.0.4 (minimal required for 12c)

Step 1 : Stop all running processes 

Go to BITools location :  /u00/app/Oracle_Home/user_projects/domains/bi/bitools/bin

Then ./stop.sh   # this will stop all processes associated with BI

Step 2:  DROP RCU Schema  — Needs SYSDBA privilege or ask DBA

Select * from System.SCHEMA_VERSION_REGISTRY where MRC_NAME='<add DB PREFIX>’;   — Check DB Prefix where RCU is installed

delete from System.SCHEMA_VERSION_REGISTRY where MRC_NAME='<add DB PREFIX>’;

Commit;

Locate all RCU schemas and Perform DROP schema operation . Typically it is 9 RCU schemas.  For my case its below:

drop-schema

Step 3: remove the app folder :

in my case :   rm -rf  /u00/app

You can achieve this above by writing a Unix script combining all steps and just press one button .

This steps applicable for Linux env but for Windows you might need to clear extra stuffs sitting inside Registry.

If you don’t have direct access to database then for Step 2) you can user deinstall utility to drop the repository automatically and let the scripts do that internally.

 

 

OBIEE 12c “A new era of Oracle Analytics” – The New features


OBIEE 12c has been launched with couple of Brand new exciting features and with couple of major enhancements from its predecessor. The enhancement has been made in Visualizations, Platform Architecture, Installation and Configuration, Migration and deployment. Also major enhancement made on the directory structures and no more complicated lengthy path of Weblogic directories and its more clean and pristine.

Lets isolate each areas and see what are the major enhancements:

  1. Installation And Configurations
  2. Multi-tenancy (MSI) and Pluggable BI
  3. BI Application Archive(BAR)
  4. OBIEE Server level enhancements – In-memory analytics and Advanced analytics
  5. Data Mashups for Answers
  6. Visual Analyzer
  7. Better Mobile Analytics

I am going to touch the UI enhancement first on Visual Analyzer (as I know this is going to be very attractive features and major highlight of this release).

A) VISUAL ANALYZER

  • VA is a very strong web based tool has new generation Answers capability for self-service analysis.
  • VA is quick data exploration and data discovery tool which can build rich dashboards on-the-fly in very quick turnaround time. Rich analysis possible with drag and drop configuration
  • It has very easy and swift transitioning palette and quick slice and dice features.
  • Very simple user friendly input which can create very rich graphics with different options of exploring the data, discovering the patterns and seeing trends.
  • Provide highly interactive experience with intuitive filtering and cross visualization brushing and highlighting
  • Visual Analyzer is not intended to be a standalone reporting tool. Visual Analyzer makes use of the existing Oracle BI EE
    repository, which means that all your Oracle BI EE 11g data sources can be leveraged to allow users to explore existing data warehouse content.
  • Visual Analyzer uses Presentation Services data models as a content source, relies on the catalog to store content, uses the search infrastructure to find content and relies on a common security model for managing roles and permissions.
  • VA use rich modern java-script library and rendered through HTML5
  • Using VA you can create advanced graph, blend of color , size , shape , palette using various co-ordinate systems

VA01 VA02 VA03

You can modify and manipulate data model on-the-fly

VA04 VA05VA Integrates any kind of data source, it is powerful tool to load and model data. You can smartly blend the personal and external data.

It has a nice global searching capabilities on any measure/object name like Qlikview.

VA06

B) DATA MASHUP

You can upload your own datafile like xls data , match with existing OBIEE model and generate on the fly customized reporting. Internally its logical SQL extension to directly call external data. Just in time modelling with measures and attributes, mashup across enterprise and user defined data.

Data mashup also include OBIEE embedded data store for user uploaded files.

A simple MASHUP Architecture like below :

VA18

VA07 VA08 VA09 VA10 VA11Quick reporting by picking up right metrics and showing data and Easy content search

VA12VA13 VA14 VA15 VA16 VA17

C) Advanced Analytics Capability

Predictive analysis is more tightly integrated, enabling customers to more easily forecast future conditions based on existing data points, group elements that are statistically similar, and expose outliers.  BI 12c includes the ability to run the free Oracle R distribution on BI Server, and extend existing analytics with custom R scripts, which can point to any engine (R, Oracle Database, Spark, etc.) without needing to change the BI RPD to deliver results.

Misc01

D) In-Memory Analysis

Misc02 Misc03

E) 11g to 12c UPGRADE – Pluggable Model and BAR/BVL

Oracle BI Baseline Validation Tool – Complete New Capability
• A tool that enables the creation of a baseline set of data that is then able to be compared with data from another (or the same) system that may be the result of an upgrade, patch or migration, or any change
• A way to perform regression testing on any two compatible Oracle BIEE environments
–Works within and across 11g and 12c versions
• A way to instill confidence when performing an upgrade, migration or significant change to an existing environment

Misc04The baseline validation tool interfacing both 11g(Pre-Upgrade) and 12c (Post-Upgrade) which will give the capability of easy testing plus validating data set, Logical query pre and post upgrade. It is going to a a very essential feature and reduce lot of testing time and effort for sure. Oracle called this as Pluggable model.

The following modules will be available here:
– Data verification
• Compare result output (i.e. actual numbers or text) from different versions
– Visual verification
• Capture screenshots of reports to check they are visually the same
– BI catalog verification
• Capture object and metadata and compare with the target system
– Logical query verification
• Capture logical query definitions and compare with the target system
– Performance verification
• Capture performance profile to check there’s not degradation

Misc07

F) Multi-Tenancy Model / Multi-Service Instance (MSI) enabled

Multitenancy refers to a principle in software architecture where a single installation of the software runs on one server or clustered servers, serving multiple client organizations.With a multitenant architecture, each client organization operates
independently of other organizations that share the same infrastructure. Multitenancy offers the ability to host multiple companies (even competitors) in one deployment without them knowing of each other.

Misc05 Misc06

G) System Administration and Configuration

  • Single Source for BIPLATFORM schemas. No Information on DB and topology info stored in Database
  • Full offline configuration speed up domain creation
  • Separate OBIEE Installation and Config (it was just reverse than 11g when RCU creation was first step)
  • Chef Capability allow most of the config parameters to be edited
  • One place to edit environment and/or configuration so no more duplication in config files
  • BI 12c will use CAM (not OPMN) to manage system components.All CAM-related configuration is also stored in DOMAIN_HOME.
  • Singleton Data Directory (SDD)– Simple conversion to HA scale-out
  • Zero downtime: All system and application operations should be supported on-line. No requirement for downtime of end-user functionality
  • Support offline configuration: All system and application configuration operations should be off-line. No requirement for run-time mid-tier processes to be started.
  • No more Middleware Home and all under one Oracle_Home.
  • No more OPMN . Everything managed inside weblogic
  • Migration process has been simplified in great extent using BAR files and easy validation tool pre and post migration
  • The Oracle BI Server supports the Fast Application Notification (FAN) event and Fast Connection Failover (FCF) Oracle Database configuration. It is excllent feature to add offline failover of the database connections. Fast Connection Failover enables quick failover when the data source’s Oracle database is not available. According to the documentation, This functionality will run in the background. When an Oracle Business Intelligence query initiated by an analysis user fails due to the Oracle database being unavailable, the query will fail quickly and the user can then retry the query rather than waiting for the database request to time out.
  • Invoke of the WLST from a single location

H) Mobile Analytics

  • Sharp Mobile UI interfacing with rich colors
  • Mobile Indexing data
  • Fast Mobile data query
  • Keyword search (“BI Ask”) empowers users to literally talk to their data, asking questions and having visualizations automatically created as responses, opening up an easy entry point for authoring.  Additionally, the interface for iOS has been completely redesigned; and Mobile BI for Android offers sharing and following for nearby devices, as well as the ability to project any dashboard or story to GoogleCast-enabled devices.

I) Repository enhancements

This is In progress. I will update pretty soon…

— Thanks