So I've got a model with say 20 entities in it but it takes a very long time to build the SessionFactory. I just put 8 GIG of ram in this MacBook Pro Unibody and memtest seems to have passed all tests successfully so I don't think it's the ram but this is really really. It's similar to when you use to debug java 1.3 without hotspot.
I'm wondering what you can do to speed up the build of the SessionFactory. I have code to serialize it and I'll use it if necessary but I cannot believe the slowness I'm seeing cannot be avoided another way.
With debug logging the processes starts
[main]09 Jan 2010 09:54:16.265 | org.hibernate.cfg.Configuration | INFO | - configuring from resource: xml/model-tst.cfg.xml
[main]09 Jan 2010 10:12:32.424 | org.hibernate.cfg.Configuration | INFO | - Configured SessionFactory: null
As you can see that's 18 minutes... surely that's not normal
[main]09 Jan 2010 10:12:32.691 | org.hibernate.cfg.Configuration | DEBUG | - properties: {show_sql=true, java.vendor=Apple Inc., sun.java.launcher=SUN_STANDARD, hibernate.connection.url=URL, sun.management.compiler=HotSpot 64-Bit Server Compiler, max.pool.size=15, hibernate.dbcp.ps.maxWait=600000, os.name=Mac OS X, sun.boot.class.path=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jsfd.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Frameworks/JavaRuntimeSupport.framework/Resources/Java/JavaRuntimeSupport.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/laf.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/sunrsasign.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jsse.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/charsets.jar, java.util.logging.config.file=/Users/robert/logging.properties, hibernate.dbcp.maxWait=10000, com.sun.management.jmxremote=, java.vm.specification.vendor=Sun Microsystems Inc., java.runtime.version=1.6.0_17-b04-248-10M3025, hibernate.cache.provider_class=net.sf.ehcache.hibernate.SingletonEhCacheProvider, user.name=robert, awt.nativeDoubleBuffering=true, hibernate.dbcp.ps.maxIdle=8, hibernate.dbcp.maxActive=100, idle.timeout=15, hibernate.dbcp.maxIdle=5, user.language=en, sun.boot.library.path=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Libraries, dialect=org.hibernate.dialect.Oracle9Dialect, com.sun.management.jmxremote.port=4001, java.version=1.6.0_17, user.timezone=America/Chicago, sun.arch.data.model=64, APPLICATION_NAME=APP_NAME, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.endorsed.dirs=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/endorsed, java.rmi.server.randomIDs=true, sun.cpu.isalist=, sun.jnu.encoding=MacRoman, file.encoding.pkg=sun.io, file.separator=/, java.specification.name=Java Platform API Specification, java.class.version=50.0, user.country=US, java.home=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home, java.vm.info=mixed mode, os.version=10.6.2, com.sun.management.jmxremote.ssl=false, path.separator=:, java.vm.version=14.3-b01-101, hibernate.connection.password=d.appusr, max.permits=50, java.awt.printerjob=apple.awt.CPrinterJob, sun.io.unicode.encoding=UnicodeLittle, today=12/1/2009, awt.toolkit=apple.awt.CToolkit, hibernate.connection.username=odsapi, com.sun.management.jmxremote.authenticate=false, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, hibernate.dbcp.whenExhausedAction=1, user.home=/Users/robert, java.specification.vendor=Sun Microsystems Inc., logXml=true, hibernate.dbcp.ps.maxActive=8, java.library.path=/Applications/IntelliJ IDEA 9.0.app/Contents/Resources/Java:/System/Library/PrivateFrameworks/JavaApplicationLauncher.framework/Resources:.:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java, java.vendor.url=http://www.apple.com/, hibernate.connection.driver_class=oracle.jdbc.driver.OracleDriver, java.vm.vendor=Apple Inc., gopherProxySet=false, hibernate.dialect=org.hibernate.dialect.Oracle9Dialect, java.runtime.name=Java(TM) SE Runtime Environment, java.class.path=/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/Deploy.bundle/Contents/Resources/Java/deploy.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/dt.jar:/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/Deploy.bundle/Contents/Resources/Java/javaws.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/management-agent.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/sa-jdi.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/alt-rt.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/charsets.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jconsole.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jsse.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/laf.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/apple_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/dnsns.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/localedata.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/sunjce_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/sunpkcs11.jar:/Users/robert/IdeaProjects/code/APP_NAME/target/classes:/Users/robert/.m2/repository/org/hibernate/hibernate/3.2.2.ga/hibernate-3.2.2.ga.jar:/Users/robert/.m2/repository/net/sf/ehcache/ehcache/1.6.2/ehcache-1.6.2.jar:/Users/robert/.m2/repository/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar:/Users/robert/.m2/repository/commons-collections/commons-collections/3.0/commons-collections-3.0.jar:/Users/robert/.m2/repository/javax/transaction/jta/1.0.1B/jta-1.0.1B.jar:/Users/robert/.m2/repository/asm/asm-attrs/1.5.3/asm-attrs-1.5.3.jar:/Users/robert/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar:/Users/robert/.m2/repository/antlr/antlr/2.7.6/antlr-2.7.6.jar:/Users/robert/.m2/repository/cglib/cglib/2.1_3/cglib-2.1_3.jar:/Users/robert/.m2/repository/asm/asm/1.5.3/asm-1.5.3.jar:/Users/robert/.m2/repository/jaxen/jaxen/1.1.1/jaxen-1.1.1.jar:/Users/robert/.m2/repository/jdom/jdom/1.0/jdom-1.0.jar:/Users/robert/.m2/repository/xml-apis/xml-apis/1.3.02/xml-apis-1.3.02.jar:/Users/robert/.m2/repository/xerces/xercesImpl/2.6.2/xercesImpl-2.6.2.jar:/Users/robert/.m2/repository/xom/xom/1.0/xom-1.0.jar:/Users/robert/.m2/repository/xerces/xmlParserAPIs/2.6.2/xmlParserAPIs-2.6.2.jar:/Users/robert/.m2/repository/xalan/xalan/2.7.0/xalan-2.7.0.jar:/Users/robert/.m2/repository/com/ibm/icu/icu4j/2.6.1/icu4j-2.6.1.jar:/Users/robert/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar:/Users/robert/IdeaProjects/code/persistence/target/classes:/Users/robert/.m2/repository/javax/jms/jms/1.1/jms-1.1.jar:/Users/robert/.m2/repository/ojb/db-ojb/1.0.0/db-ojb-1.0.0.jar:/Users/robert/.m2/repository/jdbc/oracle/10g/oracle-10g.jar:/Users/robert/.m2/repository/com/sshtools/j2ssh/0.2.7/j2ssh-0.2.7.jar:/Users/robert/.m2/repository/commons-lang/commons-lang/2.4/commons-lang-2.4.jar:/Users/robert/.m2/repository/velocity/velocity/1.5/velocity-1.5.jar:/Users/robert/.m2/repository/oro/oro/2.0.8/oro-2.0.8.jar:/Users/robert/.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar:/Users/robert/.m2/repository/commons-net/commons-net/1.3.0/commons-net-1.3.0.jar:/Users/robert/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/Users/robert/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar:/Users/robert/.m2/repository/commons-dbcp/commons-dbcp/1.1/commons-dbcp-1.1.jar:/Users/robert/.m2/repository/commons-pool/commons-pool/1.1/commons-pool-1.1.jar:/Users/robert/.m2/repository/javax/sql/jdbc-stdext/2.0/jdbc-stdext-2.0.jar:/Users/robert/.m2/repository/jdbc/as400/5.1.0.1/as400-5.1.0.1.jar:/Users/robert/.m2/repository/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar:/Users/robert/.m2/repository/org/hibernate/hibernate-entitymanager/3.2.1.ga/hibernate-entitymanager-3.2.1.ga.jar:/Users/robert/.m2/repository/org/hibernate/hibernate-annotations/3.2.1.ga/hibernate-annotations-3.2.1.ga.jar:/Users/robert/.m2/repository/jboss/javassist/3.3.ga/javassist-3.3.ga.jar
|