Skip to main content

Posts

Showing posts from November, 2013

Ojdeploy : Tuning exercise

First of all all the tuning I am doing is for out continuous integration server because I build time have hit 25 minutes on the solaris 11 machine (on my desktop the same build it takes 11 minutes). So where I am working is in the "ojdeploy.conf" file located in [jdev location]/jdev/bin Finding most java settings make a difference and mostly Using jrockit I have got it down to 21 minutes AddVMOption -Xmx1g AddVMOption -Xms1g AddVMOption -Xverify:none AddVMOption -Djava.net.preferIPv4Stack=true Fastest solaris build so far is on the standard 32-bit jdk - weighing in at 18 minutes AddVMOption -Dapplication.handle.help=true AddVMOption -Xmx1g AddVMOption -Xms1g AddVMOption -Dsun.awt.disablegrab=false AddVMOption -XX:MaxPermSize=512M SetJavaHome /usr/java AddVMOption -Xverify:none AddVMOption -Djava.net.preferIPv4Stack=true AddVMOption -XX:PermSize=128m will update with my findings but parameters like largePages, parallel gc, -server etc just seem to m

ADF: postChanges delete parent and children in the same transaction programmatically

I was doing a simple mater details delete with some code and no matter what I did the parent delete got called before the child, then I remembered post changes (this.getDBTransaction().postChanges();) and called it after deleting the children. And that is how postChanges saved my life. Code for fun...         Key key = new Key(new Object[] { objectId });         Row[] rows = getParentVO().findByKey(key, 1);         if (rows != null && rows.length > 0) {             ParentVORowImpl parent = (ParentVORowImpl) rows[0];             RowIterator rowIterator = parent.getChildVO();             removeRows(rowIterator);             this.getDBTransaction().postChanges();             parent.remove();             this.getDBTransaction().commit();         }     public void removeRows(RowIterator rowIterator) {         while (rowIterator.hasNext()) {             Row row = rowIterator.next();             row.remove();         }     }