Thanks Alex, For people who haven't seen the posts in the Open Discussion Forum, the background was that Alex proposed to develop a server monitor along the lines of similar services in other database engines. I responded that two new developments are underway:
a) better information will be available from each database through system tables b) one server will serve several database Campbell suggested the JMX, which I think is a good idea And I asked Alex about the information he wants to provide, which he has listed below. ----------------------- My response is: Some of the information that Alex has listed can be made available for each database. Some information cannot be provided because of the way Java works. For example Java doesn't provide information on the amount of memory used by an object. A third type of information can be gathered via system calls for the JVM. As the Server instance has direct access to the Database instances it is running, all information can be retrieved by direct calls to the database. I suggest we start with the framework for getting the information from the monitor. After that, we can provide any information that can be provided via direct method calls to database instances. It is actually not a good idea to plan things so that it doesn't affect our code etc. All new developments should be properly integrated, otherwise they would cause more work in the long run. The information to be provided in the extended system tables already includes all the current database and cache properties. We can easily extend that to anything that is available internally. Fred -------------------------------------- Alex wrote: Hey, I think to discuss more details about the server monitor this is a better place. Fred. Thanks for your infos. I have not looked closely to the code of hsqldb to tell you some details of what I was thinking, but may be some ideas as a design discussion. I want to write something that will affect you as less as possible. So I think the most important information are the memory usage, the last called satement and proberly some information about the database. Most of this information I can get with the JDBC calls or proberly with writing a new stored procedure which will be run from inside the JVM of the server. To fetch the statements that are used or may be the count of connected users and so on, I thought of a small patch where I can redirect the output of the server.silent output. Proberly with a Logger as Listener. You know my database is meanwhile 64MB large and the most rows are only in two tables. So to know how long a special statement needs is a good start to do some performance optimizign stuff. The first version of the monitor should only be a lean solution, so that we can extend it later easyly. In this point I stick to the ideas of XP, do what you need now and nothing more. What kind of information do you plan to provide in the extended system tables? So as answer to your questions: The monitor will need information about - the memory usage of the Server - the memory usage of one table/index - the query time for a statement - the number of connected users - the number of parallel running processes If we can, I think the best access method would be a stored procedure or a wrapper of the Server class, so that there will be no change at your code at all. The JMX discussion can be a interessting new topic for me. Why not. I've never done something with it before but I think it can't be to complicate. What do you think Alex ------------------------------------------------------- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com _______________________________________________ hsqldb-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/hsqldb-developers