[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-developers] Database paradigm
From: |
Jan Marco Alkema |
Subject: |
[GNUnet-developers] Database paradigm |
Date: |
Wed, 4 Dec 2002 18:47:09 -0800 |
Hello gnunet developers,
Database paradigm
The gnunet database is corrupt very often. See appendix A for some
examples. Mine mother, brother, normal end user wont use it if it gets
corrupt on a regular bases.
Mine suggestion is to use ODBC as database interface protocol. Everyone can
use their own database (Oracle, Sybase, Postgress, MySQL). If someone want
to use a flat file structure he should use a flat file implementation of
ODBC.
Iceman has made some other implementation (a three thier solution) :
Foonrip -> C ++ routines -> flatfile driver -> flat file database
Foonrip -> C ++ routines -> mysql driver -> mysql database
Foonrip -> C ++ routines -> access driver -> access database
Foonrip -> C ++ routines -> odbc driver -> ? database
In mine opinion we should use jdbc for the Java client. I see a problem with
jdbc. The client must know what database the server uses. I think that a
field in gnunet-stats will do. If the client knows the database brand he can
select the right jdbc driver.
I see two links to gnunet core. The first is a direct one via the port 2087.
The status values can be printed in a window in the windows (API) client or
on the Java client. The second is the (odbc/jdbc) link to gnunet core. You
insert a distributions, releases, files/audio tracks via inserting records.
You can search for something via inserting a search record in a database.
Gnunet core will perform the request. The results will be stored in a
database which can be retrieved by a select database call by the client
(Windows API/Java).
The risk of not using a real database is to reinvent wheels. Before you
know you want to implement backup and grant facility, etc. Also the gnunet
database will not get corrupt because a real database shuts down properly
when you reboot a system.
I someone one the list has better ideas let me known,
Greeting Jan Marco
P.S. I have configured a new windows server (Pentium 4 2400 Mhz, 512 mb
RIMM, 60 gigabyte hard disk)
I have installed:
Windows 2000 professional
Office 2000
Microsoft visual studio .NET.
McAfee virus scan
Winzip
Mysql 4.0.5 beta-win
Appendix A: Database corrupt examples:
Nov 27 19:03:24 DEBUG: in initStatusCalls
Nov 27 19:03:24 DEBUG: obtaining local IP address from hostname
62.131.97.197
Nov 27 19:03:24 MESSAGE: gnunetd starting
Nov 27 19:03:24 ERROR (Address already in use) binding the TCP listener to
port 2087. No proxy service started.
Trying again in 5 seconds...
Nov 27 19:03:24 DEBUG: I am F3C7C1F4EE44A8BEC009438A7ABE7595A34C881B
Nov 27 19:03:24 INFO: binding address of node
F3C7C1F4EE44A8BEC009438A7ABE7595A34C881B.17
Nov 27 19:03:24 DEBUG: loading applications afs_protocol
Nov 27 19:03:24 DEBUG: space monitor for
/usr/local/gnunet/var/data/content_bloomfilter registered
Nov 27 19:03:24 DEBUG: getting file size of
/usr/local/gnunet/var/data/content_bloomfilter
Nov 27 19:03:24 DEBUG: space monitor for
/usr/local/gnunet/var/data/keyword_bloomfilter registered
Nov 27 19:03:24 DEBUG: getting file size of
/usr/local/gnunet/var/data/keyword_bloomfilter
Nov 27 19:03:24 FATAL: GDBM getDatabase: failed to open database file
/usr/local/gnunet/var/database.gdb with error: Can't be writer
Nov 27 19:03:24 __BREAK__
Nov 28 22:58:01 DEBUG: in initStatusCalls
Nov 28 22:58:01 DEBUG: obtaining local IP address from hostname
212.120.80.89
Nov 28 22:58:01 MESSAGE: gnunetd starting
Nov 28 22:58:01 ERROR (Address already in use) binding the TCP listener to
port 2087. No proxy service started.
Trying again in 5 seconds...
Nov 28 22:58:01 DEBUG: I am EF2F23C97D5C4EFCAA497A1842E56DACBE76484D
Nov 28 22:58:02 INFO: binding address of node
EF2F23C97D5C4EFCAA497A1842E56DACBE76484D.17
Nov 28 22:58:02 DEBUG: loading applications afs_protocol
Nov 28 22:58:03 DEBUG: space monitor for
/usr/local/gnunet/var/data/content_bloomfilter registered
Nov 28 22:58:03 DEBUG: getting file size of
/usr/local/gnunet/var/data/content_bloomfilter
Nov 28 22:58:04 DEBUG: space monitor for
/usr/local/gnunet/var/data/keyword_bloomfilter registered
Nov 28 22:58:04 DEBUG: getting file size of
/usr/local/gnunet/var/data/keyword_bloomfilter
Nov 28 22:58:04 FATAL: GDBM getDatabase: failed to open database file
/usr/local/gnunet/var/database.gdb with error: Can't be writer
Nov 28 22:58:04 __BREAK__
Dec 1 03:40:01 DEBUG: in initStatusCalls
Dec 1 03:40:01 DEBUG: obtaining local IP address from hostname
212.120.80.89
Dec 1 03:40:01 MESSAGE: gnunetd starting
Dec 1 03:40:01 ERROR (Address already in use) binding the TCP listener to
port 2087. No proxy service started.
Trying again in 5 seconds...
Dec 1 03:40:01 DEBUG: I am 317C102BAB8B119CB350D02E7EC78627EA1ED450
Dec 1 03:40:03 INFO: binding address of node
317C102BAB8B119CB350D02E7EC78627EA1ED450.17
Dec 1 03:40:03 DEBUG: loading applications afs_protocol
Dec 1 03:40:03 DEBUG: space monitor for
/usr/local/gnunet/var/data/content_bloomfilter registered
Dec 1 03:40:03 DEBUG: getting file size of
/usr/local/gnunet/var/data/content_bloomfilter
Dec 1 03:40:03 DEBUG: space monitor for
/usr/local/gnunet/var/data/keyword_bloomfilter registered
Dec 1 03:40:03 DEBUG: getting file size of
/usr/local/gnunet/var/data/keyword_bloomfilter
Dec 1 03:40:03 FATAL: GDBM getDatabase: failed to open database file
/usr/local/gnunet/var/database.gdb with error: Can't be writer
Dec 1 03:40:03 __BREAK__
Dec 1 17:41:30 DEBUG: in initStatusCalls
Dec 1 17:41:30 DEBUG: obtaining local IP address from hostname
62.131.97.197
Dec 1 17:41:30 MESSAGE: gnunetd starting
Dec 1 17:41:30 ERROR (Address already in use) binding the TCP listener to
port 2087. No proxy service started.
Trying again in 5 seconds...
Dec 1 17:41:30 DEBUG: I am 1AD32F1A2095AB3E2AFBEB9352A37079550327D2
Dec 1 17:41:30 INFO: binding address of node
1AD32F1A2095AB3E2AFBEB9352A37079550327D2.17
Dec 1 17:41:30 DEBUG: loading applications afs_protocol
Dec 1 17:41:30 DEBUG: space monitor for
/usr/local/gnunet/var/data/content_bloomfilter registered
Dec 1 17:41:30 DEBUG: getting file size of
/usr/local/gnunet/var/data/content_bloomfilter
Dec 1 17:41:30 DEBUG: space monitor for
/usr/local/gnunet/var/data/keyword_bloomfilter registered
Dec 1 17:41:30 DEBUG: getting file size of
/usr/local/gnunet/var/data/keyword_bloomfilter
Dec 1 17:41:30 FATAL: GDBM getDatabase: failed to open database file
/usr/local/gnunet/var/database.gdb with error: Can't be writer
Dec 1 17:41:30 __BREAK__
Dec 2 18:14:16 DEBUG: in initStatusCalls
Dec 2 18:14:16 DEBUG: obtaining local IP address from hostname
62.131.97.197
Dec 2 18:14:16 MESSAGE: gnunetd starting
Dec 2 18:14:16 ERROR (Address already in use) binding the TCP listener to
port 2087. No proxy service started.
Trying again in 5 seconds...
Dec 2 18:14:16 DEBUG: I am E6429FE81B59E1A385B32D34B386C12D6974A773
Dec 2 18:14:16 INFO: binding address of node
E6429FE81B59E1A385B32D34B386C12D6974A773.17
Dec 2 18:14:16 DEBUG: loading applications afs_protocol
Dec 2 18:14:17 DEBUG: space monitor for
/usr/local/gnunet/var/data/content_bloomfilter registered
Dec 2 18:14:17 DEBUG: getting file size of
/usr/local/gnunet/var/data/content_bloomfilter
Dec 2 18:14:20 DEBUG: space monitor for
/usr/local/gnunet/var/data/keyword_bloomfilter registered
Dec 2 18:14:20 DEBUG: getting file size of
/usr/local/gnunet/var/data/keyword_bloomfilter
Dec 2 18:14:20 FATAL: GDBM getDatabase: failed to open database file
/usr/local/gnunet/var/database.gdb with error: Can't be writer
Dec 2 18:14:20 __BREAK__
- [GNUnet-developers] Database paradigm,
Jan Marco Alkema <=