[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Some observations



Hi Peter,

since we are speaking about internal programming, patches and such things, we
should take this to the dev list.

On Fri, 15 Dec 2000, Peter Schuller wrote:
> Hello,
> 
> I just installed and compiled Ozone 0.6 on a Debian "woody" system (Linux),
> and Sun's JDK 1.3 (I'm evaluating it for personal and commercial use).
> 
> I have made some observations and have some questions:
> 
> * Whenever a client closes its connection to the server, the following
> exception error is printed on the server side:
> 
>    [warn] (105) InvokeServer: handleClientException(): java.io.EOFException: Expecting code
> 
> Stack trace available. I will look into this myself, but before I do, is
> this a known issue?

Yes. It was (?) a timing problem which should has been fixed. I've added a
sleep(1000) to ExternalDatabase.close(). This fixed the prblem for me and
nobody complained so far. Hmm...

> 
> * Whenever the database is shut down remotely (with the admin tool, as
> suppose to issuing the "q" command on the server), I get the following:
> 
>     [error](840) (null): Env.shutdown(): java.lang.NullPointerException
>     java.lang.NullPointerException
>             at org.ozoneDB.core.Env.shutdown(Env.java:411)
> 	    at org.ozoneDB.core.Server.main(Server.java:150)
> 	   
> I have looked into this somewhat. My first question is, what's up with the
> exception mechanism? :) The trace indicates the exception is thrown at
> Env.java:411, but after looking at the code I am convinced that it is
> *actually* thrown in the TransactionManager.shutdown() method somewhere.
> Unless I'm going crazy, but I don't see how the reference to the transacton
> manager could possible be null when Env.shutdown() gets executed. I will
> look into it further, but I might aswell ask to see if there is a known
> explanation first.
> 
> So, is this a known issue?

No, I normally don't use the admin tool. But I can reproduce the problem.

Peter, I'm half way done making a new admin interface and front-end. I would
like to completely drop the old admin API and concentrate on the new one.
Unfortunately currently I cannot dedicate that much time to this. I could check
in what I've done so far so that you can have a look. What do you think?

> 
> * What's the standard procedure for people who are not part of the
> development team to submit patches? At the very least, I intend to add
> support for JDK 1.3's shutdown hooks, so that it can safely clean up during
> system shutdown.

This would be great.

Make a diff against the latest CVS and send the patch to the dev list. After
one or two valuable patches I will give you commit access to the CVS.

> 
> * I made a very simple half-ass test application that basically creates an
> object in the db and then removes it. I then made it do this 30 times. This
> takes several seconds to complete (in other words, it's extremely slow),
> however CPU utilization during the process is not even notice:able on my
> icewm indicator (5-10% max, probably less). For some reason, the client or
> the server seems to be going into sleep for brief periods of time - I don't
> know how else to explain this. Both client and server is on the same computer.

This one again...

Peter, it is very slow to call a database object from the client. The socket
latency is the bottleneck. Creating/deleting your objects inside a database
omethod (thus inside the server) is around 1000 times faster. Please read docu
on this.

> 
> * Is development active? Mailinglist activity sure seems to be, but the news
> on the website has bee sparse for a while :)

I will remove this f*cking news section. ;) I don't have the time to keep it up
to date.


Falko
-- 
______________________________________________________________________
Falko Braeutigam                              mailto:falko@smb-tec.com
SMB GmbH                                        http://www.smb-tec.com