Sep 22, 2011

Oracle Database Grant

conn sys/oracle as sysdba;

create user dummy identified by dummy;

grant ALL PRIVILEGES to dummy;

Source:http://ss64.com/ora/grant.html

Sep 12, 2011

Java Plugin Install for Linux

Linux Firefox configuration for Java plugin
  1. cd to firefox folder (eg: cd /usr/lib/firefox-3.6)
  2. create new folder called 'plugins' (eg: mkdir plugins, use sudo user if you don't have permissions)
  3. cd plugins
  4. create a symbolic link to java_home/jre/lib/i386/libnpjp2.so (eg: ln -s /usr/java/jdk1.6.0_26/jre/lib/i386 or amd64/libnpjp2.so
  5. restart/start the firefox. ...thats it :-) 
Source: http://www.oracle.com/technetwork/java/javase/manual-plugin-install-linux-136395.html

Sep 6, 2011

USER_MEM_ARGS

export USER_MEM_ARGS="-Xms512m -Xmx1596m -XX:PermSize=512m -XX:MaxPermSize=1024m"

Aug 18, 2011

Adobe Installations in linux (redhat/fedora/oracle linux)

1. yum install flash-plugin - for adobe flash plugin
2. yum install AdobeReader_enu - for adobe reader
3. yum install RealPlayer - for Real Player

Aug 11, 2011

'service autofs start' is not working

It seems to be there is bug 193718 on autofs.
Resolution: update to latest version (autofs.i386 1:5.0.1-0.rc2.156.0.1.el5) using 'yum install autofs'

Mar 3, 2011

JVM Memory Usage

When JVM spends %98 of it`s time to garbage collections and can not free more then %2 of the memory then an "Out of Memory" exception is thrown. Heap size (the memory space where the progam lives) is calculated according to physical memory. The initial heap size will be set to phys_mem / DefaultInitialRAMFraction. DefaultInitialRAMFraction is a command line option with a default value of 64. Similarly the maximum heap size will be set to phys_mem / DefaultMaxRAM. DefaultMaxRAMFraction has a default value of 4.

With my test machine 64 mb heap memory is not enough to hold as much images as I would like to. I increased memory size with this command line option;

-Xms64m -Xmx256m

This sets the initial and maximum size to 64mb and 256mb. The m suffix can be changed with g to represent gigabyte. You can find java 1.5 command line options here.

Although I set initial memory size to 64 mb, JVM doesn`t allocate 64 mb. When JVM starts it`s memory usage is increased slowly to 12 mb and then garbage collected to 1,5 mb and cycled. When I set initial memory to 4 mb it increased to 2 mb at startup then decreased to ~700 kb and cycled in a longer time period. If you are not sure that your application will use too much memory do not give a big initial memory value, JVM tries to increase memory size for nothing because gc cleans it.

Note: The Java object heap has to be allocated in contiguous virtual addresses, for implementation reasons. In 32 bit operating systems only 2gb memory can be addressed as contiguous.

Source: http://weblogs.java.net/blog/2005/04/28/jvm-memory-usage

JVM Heap

1. The OS always allocates contiguous memory space to the JVM
2. When there are more objects created & killed very frequently, the JVM stores them in memory spaces wherever they have free space.
3. This results in a situation called Heap Fragmentation ( same like disk fragmentation ) wherein the heap is fragmented.
4. This makes the JVM not to release the contiguous memory space to OS ( remember, memory is allocated /de-allocated in contiguous memory blocks)

How to Avoid Heap Fragmentation

1.Identify and reduce the frequent creation of unnecessary objects.
2.Compact the Heap by using the option -compactGc option of the JVM ( this comes with a performance penalty )
3. Keep the Max-Heap size setting to as close as possible to the maximum memory required by your JVM

Jan 11, 2011

Jconsole

How to Launch JConsole to connect Weblogic MBeans?

1. Launch Jconsole using below command.
%JAVA_HOME%/bin/jconsole -J-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;%JAVA_HOME%\lib\tools.jar;%WLS_HOME%\server\lib\weblogic.jar -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote (for Windows)
or
jconsole -J-Djava.class.path=$JAVA_HOME/lib/jconsole.jar:$JAVA_HOME/lib/tools.jar:$WLS_HOME/server/lib/weblogic.jar -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote (for Linux)

2. Select Remote radio button on New Connection screen & Enter
service:jmx:t3://:/jndi/weblogic.management.mbeanservers.runtime for Remote process text box

3. Press 'Connect' by providing Username & Password.