## This 'cumulus4j-test-datanucleus.properties' file should *NOT* be modified to fit
## developer-specific needs!
##
## You can instead place a file named 'cumulus4j-test-datanucleus.properties' into your home
## directory and put those properties into it that you wish to override.
##
## The file located in your home directory will be merged into the configuration and override
## all settings made in this file here.
##
## To remove a property, set it to the special value "_NULL_" (simply leaving it empty will
## override the property's value with an empty string instead of removing it from the map).
##
## See: org.cumulus4j.store.test.framework.TestUtil#loadProperties(...)
##
## Marco :-)

# Not necessary if only DataNucleus in the CLASSPATH
javax.jdo.PersistenceManagerFactoryClass=org.datanucleus.api.jdo.JDOPersistenceManagerFactory

# The setting datanucleus.autoCreateTables is not required, when using cumulus4j (it implies it),
# but it's necessary when switching to non-cumulus4j for testing.
datanucleus.autoCreateTables=true
datanucleus.storeManagerType=cumulus4j
datanucleus.persistenceByReachabilityAtCommit=false
datanucleus.manageRelationships=false
datanucleus.manageRelationshipsChecks=false
datanucleus.plugin.allowUserBundles=true

# These properties are passed through to the backend PMF
# MySQL
#javax.jdo.option.ConnectionDriverName=com.mysql.jdbc.Driver
#javax.jdo.option.ConnectionURL=jdbc:mysql://127.0.0.1/nucleus?useServerPrepStmts=false
#javax.jdo.option.ConnectionURL=jdbc:mysql://127.0.0.1/cumulus4j?useLegacyDatetimeCode=false&serverTimezone=UTC
#javax.jdo.option.ConnectionURL=jdbc:mysql://127.0.0.1/cumulus4j
#javax.jdo.option.ConnectionUserName=root
#javax.jdo.option.ConnectionPassword=

# Derby
javax.jdo.option.ConnectionDriverName=org.apache.derby.jdbc.EmbeddedDriver
javax.jdo.option.ConnectionURL=jdbc:derby:${java.io.tmpdir}/derby/cumulus4j;create=true
javax.jdo.option.ConnectionUserName=root
javax.jdo.option.ConnectionPassword=

# *** cumulus4j ***
# These properties starting with "cumulus4j.datanucleus." or "cumulus4j.javax." are forwarded
# to the backend-PersistenceManagerFactory (without the "cumulus4j."-prefix)

#Indexing CLOBs does not work in Derby => deactivate.
cumulus4j.index.clob.enabled=false

# There are issues (Heisenbugs) with the 2nd-level-cache in DataNucleus 3.0.0-m6 and maybe some
# newer versions. The 2nd-level-cache has been completely refactored at the end of the year 2011. Thus,
# DN 3.0.5 or newer shouldn't be affected anymore and we might thus enable the 2nd-level-cache by default
# in Cumulus4j 1.0.1 or newer, again. But for now, we keep it disabled.
# Marco :-)
# 2012-02-02: The Heisenbugs were obviously related to optimistic transactions and not to the l2-cache.
# And this bug was fixed today (in 1.0.1-SNAPSHOT). I thus re-enable the l2 cache. Marco :-)
#datanucleus.cache.level2.type=none
