Saturday, July 20, 2019

The user ID or password that you entered is incorrect - Siebel IP2017 SMC Login Failure

I was not able to login to SMC after a fresh install, the error message displayed was:

---------------------------
Message from webpage
---------------------------
The user ID or password that you entered is incorrect.
---------------------------
OK   
---------------------------


Of course the credentials I was using was the same as the ones provided during installation, but it was not working, regardless of what I tried.

I also tested changing the certificates as it is responsible for 99% of the errors during SMC utilization, but it wasn't the case this time.

So finally what I did to solve the issue was changing the JRE that comes with installation,. I don't know what exactly was wrong, but replacing it by Java8 (64-bit) found on /usr folder (exported as $JAVA_HOME) was enough to get it working properly.

Below the commands I used for it:
cd $ai_location
mv jre jre_orig
ln -s $JAVA_HOME/jre jre


Could not load program sqlplus error on AIX

First time when I finished installing Oracle Client 12.2.0.1 in AIX 7.1 and trying to run a simple ./sqlplus command, the following error was shown:

bash-4.3$ ./sqlplus
Could not load program ./sqlplus:
rtld: 0712-001 Symbol GetQueuedCompletionStatus was referenced
      from module /u01/app/oracle/client/lib/libons.so(), but a runtime definition
            of the symbol was not found.
rtld: 0712-001 Symbol ReadFile was referenced
      from module /u01/app/oracle/client/lib/libons.so(), but a runtime definition
            of the symbol was not found.
rtld: 0712-001 Symbol WriteFile was referenced
      from module /u01/app/oracle/client/lib/libons.so(), but a runtime definition
            of the symbol was not found.
bash-4.3$



It was odd, since the same installation worked with no errors in another machine, so after some research I figured out that IOCP module was not enabled on the server. It can be check by the following command:

bash-4.3$ lsdev | grep iocp

  iocp0       Defined  I/O Completion Ports


As you can see by the output above, iocp is set to Defined, which is the default configuration. In order to have the Oracle Client working properly, one must work with the system admin to have it enabled. The expected output for this command is:

bash-4.3$ lsdev | grep iocp

  iocp0    Available   I/O Completion Ports



Tuesday, April 30, 2019

Error when importing virtual machine in VirtualBox

After having a problem with my external drive, I had to re-import the old images in a new VirtualBox installation and started facing the following error:

Document is empty.
Location: 'D:\VirtualBox VMs\Ubuntu 18.04\Ubuntu 18.04.vbox', line 1 (0), column 1.


Ok, so after navigating to that directory and opening the referred vbox file (Ubuntu 18.04.vbox), I realized it was empty.

Fear not! In the same folder should exist another file with .vbox-prev extension. All you need to do is to delete this 0-byte file, rename the .vbox-prev to .vbox and re-import it.

Best of luck!

Saturday, April 27, 2019

Siebel Install Database Error: set_unicode.sql not found

When doing a fresh install of Siebel version IP19.2 on an Oracle Linux 7.6 server, I faced the following error during the database installation:

UpgradeLog UpgradeInfo 3 0000000254e42d16:0 2019-04-18 19:28:43 Status Message (Executing SQL statements in file /opt/siebel/ses/dbsrvr/oracle/set_unicode.sql ...)
Trace Trace 3 0000000254e42d16:0 2019-04-18 19:28:43 Unable to open file 'set_unicode.sql'.

After a long night of research I figured out that this error was caused by a error that happened during the Siebel binaries installation, as seen in the $SIEBEL_ROOT/cfgtoollogs/oui path:

$ ls -ltr *.err

I found non-zero .err files, so taking a closer look to these files, this is what I found:

java.io.IOException: Cannot run program "/bin/csh": error=2, No such file or directory at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)


With the above error message I was able to identify that the root cause of the error was the lack of c shell installation on my server, so I simply ran:

yum install tcsh

It is important to note that, after installing the c shell lib, I re-installed Siebel from scratch and everything ran smoothly =)

Friday, April 26, 2019

ODBC error 81 in SQLConnect

After installing Oracle Client 12.2.0.1 (32-bit) and Siebel IP17, one of the mandatory steps is to test connectivity to the Database using odbcsql command, like:

odbcsql /u <db_username> /p <db_password> /s <DSN_Name>

But I wasn't able to get it to work, instead I was facing the below error:

Logging into "SiebelInstall_DSN" as "SIEBEL" ...
ODBC error 81 in SQLConnect:
523 80
(native error 0).
Unable to login using specified ODBC parameters.

After some troubleshooting I was able to solve it after creating a symbolic reference for libclnst lib:

cd $ORACLE_HOME/lib
ln -s libclntsh.so.12.1 libclntsh.so






Monday, October 29, 2018

Basic git commands

So you are starting to research about code versioning and heard about git and github?

Below are some very few basic commands that I use to clone a github repository, create a new branch to develop a new feature or fix a bug, add and commit modifications to the branch and push it to github's repository.


# To clone a repository is the same as to download the files from a github repository to your local machine:
git clone <github-repository-address>


# Then you will create a new branch
git checkout -b <new-branch>


# after your development is ready, you add it to git and commit
git add .
git commit -m "<commit message>"


# after the commit is done, change to master and merge it
git checkout master
git merge <new-branch>


# after the merge is done, push it to the remote repository
git push origin master

WARNING: lib not found when converting python script using pyInstaller

When trying to convert a Python script to .exe using pyInstaller, warning message is shown:
WARNING: lib not found: api-ms-win-crt-math-l1-1-0.dll dependency of C:\Program Files (x86)\Python\python.exe


The command line used is:
pyinstaller --onefile --noconsole main.py


Looking for the file, I could find it in the following path:
C:\Program Files (x86)\Java\jre1.8.0_181\bin


pyinstaller version in use is 3.3.1 and the latest one available at the moment is 3.4, so I proceeded on upgrading it.


Firstly uninstalling the current pyinstaller version:
pip uninstall pyinstaller


Then installing the newest and desired version:
pip install pyinstaller


After updating pyInstaller version, build was successfull:
set JAVA_HOME=C:\Program Files (x86)\Java\jre1.8.0_181
set PATH=%JAVA_HOME%\bin:%PATH%
pyinstaller --onefile --noconsole main.py