----------------------------------------------------------------
Mon Jan 07 23:30:20 PST 2013:
Booting Derby version The Apache Software Foundation - Apache Derby - 10.9.1.0 - (1344872): instance a816c00e-013c-1911-2686-000003d87098 
on database directory memory:/Users/mahadev/workspace/ambari-workspace/ambari-git/ambari-server/myDB  with class loader sun.misc.Launcher$AppClassLoader@27a8c4e7 
Loaded from file:/Users/mahadev/.m2/repository/org/apache/derby/derby/10.9.1.0/derby-10.9.1.0.jar
java.vendor=Apple Inc.
java.runtime.version=1.6.0_26-b03-384-10M3425
user.dir=/Users/mahadev/workspace/ambari-workspace/ambari-git/ambari-server
derby.system.home=null
Database Class Loader started - derby.database.classpath=''
