[flymine-dev] New properties required, and other changes
Matthew Wakeling
flymine-dev@flymine.org
Wed, 2 Jun 2004 12:55:11 +0100 (BST)
I am just about to check in my change that allows truncated classes in an
ObjectStore, which will allow us to support models with many classes.
However, in order to do this, the build-db task has been changed:
Before, one would write an ANT target like the following to perform the
build-db stuff:
------------- BEGIN old target
<target name="build-db-fulldatatest" depends="compile-main">
<ant antfile="build-model.xml" target="build-db" inheritRefs="true">
<property name="model.name" value="fulldata"/>
<reference torefid="class.path" refid="test.class.path"/>
<property name="db.name" value="db.fulldatatest"/>
</ant>
</target>
------------- END old target
A new property needs to be passed to build-model.xml, like this:
------------- BEGIN new target
<target name="build-db-fulldatatest" depends="compile-main">
<ant antfile="build-model.xml" target="build-db" inheritRefs="true">
<property name="model.name" value="fulldata"/>
<reference torefid="class.path" refid="test.class.path"/>
<property name="db.name" value="db.fulldatatest"/>
<property name="objectstore.name" value="os.fulldatatest"/>
</ant>
</target>
------------- END new target
In addition, new properties are required in intermine.properties in order
to support new tests for the truncated class. A whole new objectstore
called "os.truncunittest" is required, and it should have properties like
this:
------------- BEGIN new properties
db.truncunittest.datasource.class=org.postgresql.jdbc3.Jdbc3PoolingDataSource
db.truncunittest.datasource.dataSourceName=db.truncunittest
db.truncunittest.datasource.serverName=<your computer>
db.truncunittest.datasource.databaseName=trunctest
db.truncunittest.datasource.user=<you>
db.truncunittest.datasource.password=<something>
db.truncunittest.datasource.maxConnections=10
db.truncunittest.driver=org.postgresql.Driver
db.truncunittest.platform=PostgreSQL
os.truncunittest.class=org.intermine.objectstore.intermine.ObjectStoreInterMineImpl
os.truncunittest.alias=intermine
os.truncunittest.intermine.db=db.truncunittest
os.truncunittest.intermine.logfile=executeLog
os.truncunittest.intermine.truncatedClasses=org.intermine.model.InterMineObject
os.truncunittest.model=testmodel
osw.truncunittest.class=org.intermine.objectstore.intermine.ObjectStoreWriterInterMineImpl
osw.truncunittest.os=os.truncunittest
osw.truncunittest.batchWriter=org.intermine.sql.writebatch.BatchWriterSimpleImpl
------------- END new properties
The new objectstore particularly needs to have its own database separate
from db.unittest. It is also recommended that os.unittest has a separate
database from os.fulldatatest. I have set this up in the default
properties, so you should only need to add the following to your
intermine.properties:
------------- BEGIN new properties
db.truncunittest.datasource.servername=<your computer>
db.truncunittest.datasource.user=<you>
db.truncunittest.datasource.password=<something>
db.fulldatatest.datasource.servername=<your computer>
db.fulldatatest.datasource.user=<you>
db.fulldatatest.datasource.password=<something>
------------- END new properties
You will also need to createdb trunctest and fulldatatest.
Matthew
--
"Argue not with dragons, for thou art crunchy and go well with brie."
-- Unknown