db-torque-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Fischer <Fisc...@seitenbau.net>
Subject Re: initialisation process: registration of Map builders
Date Mon, 20 Dec 2004 14:16:03 GMT





"Henning P. Schmiedehausen" <hps@intermeta.de> schrieb am 20.12.2004
09:59:26:

> Thomas Fischer <Fischer@seitenbau.net> writes:
>
> >4) modify the Peer classes such that the static initializer of any Peer
> >class loads every other Peer class, e.g. by putting in
class.forName(...)
> >calls in the static initializer.
>
> This makes the Torque startup with large schematas as sluggish as the
> Hibernate startup. Acceptable for "start once, run a long time"
> application like server side java, inacceptable for e.g. command line
> tools. Using Hibernate here is a main PITA.
>

Good point. I tested this with the classes in the runtime test (29 Peers at
the moment for me) and after a complete restart of my computer (one year
old P4 2,4GHz) to eliminate disk caching, the engine startup took 800
milliseconds, and the loading of all Peer classes took 3400 milliseconds.
This is more than I expected.

> If you really think of "putting Class.forName()" somewhere, please
> make it _one_ method in e.g. the mapbuilder and let all the peers call
> this method.  I don't want to have a list of n Class.forName()
> statements duplicated in every Peer.
>

Yes, this makes sense, especially as the loading of the classes should be
done only once for all classes and should not be repeated in every static
initializer.

The loading time of the first Peer class can be made smaller if the schema
can be divided into parts which have no fooreign key relation with each
other. then one could initialize the related groups separately. But that
gets complicated....

I am not sure what to do. I would accept a long startup time to ensure a
complete initialisation, but then I am a "server side java" guy.

   Thomas


---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscribe@db.apache.org
For additional commands, e-mail: torque-dev-help@db.apache.org


Mime
View raw message