Tuesday, February 23, 2016

Download and Install Python on Windows OS

Python Programming Language Logo
Starting off a new Label here at my blog for Python. It was a decision to brush up my programming skills that I zeroed in on Python and there are quite a handful of reasons for selecting Python over Java/PHP or any other programming language. Recommended read on Quora - Why should I learn Python ? .

First go to the downloads page at Python org website -  https://www.python.org/downloads/ 


We chose to download the latest version of Python as learning was the goal in mind. 

Once you have downloaded the executable file run it and follow the steps as seen below,

Step 1:

Choose Install Now with the two check options ticked. If you uncheck the last option you will have to manually add the Python.exe file path to the PATH variable in your system. Leave this ticked.




Once the installation is complete open up a command prompt window and type in python as seen below,


This will open up the Python interface on a Command Prompt window as seen below,


You can also start the IDLE Environment for Python from the Start menu entry,

The IDLE environment provides a lot of interactive features that are not present when python is opened up from inside CMD. 

Now you are all set and ready to say "Hello World" :)

Monday, February 22, 2016

Group all Textual Attributes under a Key to a Single Column

Requirement: The requirement is to group all Countries under a Region into a single column. Consider the table below, which has a number of countries under a given Region Id.



Expected Output: The expected output is to group all country names under a region into a single column as shown below,



Resolution: There is a pre-default function in Oracle that supports this known as List Aggregate function.

The syntax of List Aggregate Funtion is as below,
SELECT COLUMN,LISTAGG(COLUMN_NAME, '| ') WITHIN GROUP (ORDER BY COLUMN_NAME DESC) ALIAS_NAME
FROM TABLE
GROUP BY COLUMN_NAME
The query for our solution would look as below,
SELECT REGION_ID,LISTAGG(COUNTRY_NAME, '| ') WITHIN GROUP (ORDER BY REGION_ID DESC) REGION_COUNTRY
FROM COUNTRIES
GROUP BY REGION_ID
List Agg Output

Wednesday, February 3, 2016

BEA-090402:OBIEE Boot Identity Not Valid - Authentication Denied [SOLVED]

Issue: We faced the issue on a Linux Server when trying to Start Weblogic Script. 
<Authentication denied: Boot identity not valid; The user name and/or password from the boot identity file (boot.properties) is not valid. The boot identity may have been changed since the boot identity file was created. Please edit and update the boot identity file with the proper values of username and password. The first time the updated boot identity file is used to start the server, these new values are encrypted.>
Cause: This issue could be because the credentials inside the boot.properties file is not valid. This credentials could change while stopping the weblogic server and you are prompted to give password here and if you give the wrong credentials during shutdown it will be written to the boot.properties file.
Issue in Terminal Window
Resolution: The issue can be resolved by changing the password in the boot.properties file and restarting again.

Chrome Update: RC4 Cipher not Supported in Weblogic SSL / OBIEE [SOLVED]

Google Chrome in it's latest update ( Version 48 ) stopped support for the RC4 Cipher. Which would mean that all Weblogic Installations with SSL implementation using this Cipher key will fail to load.

RC4 Cipher was used as a work around when last year during one of chrome's update Diffie-Hellman Public Key had expired. Now after the version 48 update, Google no longer considers the RC4 cipher as secure enough. 

So when you access any page hosted on weblogic using the SSL implemented URL you will get the following error on screen, 

ERROR_SSL_VERSION_OR_CIPHER_MISMATCH 
 The Client and Server don't support a common SSL protocol version or cipher suite. This is likely to be caused when server needs RC4, which is no longer considered secure. 

The resolution for the same is to remove the RC4 Cipher key and add a new key that Google Chrome 48 supports the issue. A friend of mine has documented the resolution at his blog