mariadb/fs
unknown 8dd2e5b8d9 Added all changes from old 4.0 version:
PSTACK, libmysqld and MySQL filesystem
UPDATE ... ORDER BY
DELETE ... ORDER BY
New faster fulltext handling
Faster compressed keys



Makefile.am:
  Added support for pstack and libmysqld_dir
acconfig.h:
  MySQL filesystem and PSTACK
acinclude.m4:
  MySQL File system
client/mysql.cc:
  Support for --xml
configure.in:
  Pstack, MySQL FS and libmysqld_dir
include/ft_global.h:
  Faster fulltext
include/my_pthread.h:
  Made c++ safe
include/myisam.h:
  Update for faster fulltext
include/mysql_com.h:
  new my_net_read()
include/violite.h:
  libmysqld
libmysql/net.c:
  New protocol that supports big packets
myisam/Makefile.am:
  Faster fulltext
myisam/ft_parser.c:
  Faster fulltext
myisam/ft_search.c:
  Faster fulltext
myisam/ft_update.c:
  Faster fulltext
myisam/ftdefs.h:
  Faster fulltext
myisam/mi_check.c:
  Faster fulltext
myisam/mi_open.c:
  Faster compressed keys
myisam/mi_search.c:
  Faster compressed keys
myisam/mi_update.c:
  Faster compressed keys
myisam/myisamdef.h:
  Faster compressed keys
myisam/sort.c:
  Faster compressed keys
mysql-test/mysql-test-run.sh:
  --skip-innobase and --skip-bdb
sql/ChangeLog:
  Changelog
sql/Makefile.am:
  PSTACK
sql/mysql_priv.h:
  New ORDER BY options and libmysqld
sql/mysqld.cc:
  PSTACK
sql/net_serv.cc:
  New protocol that supports big packets
sql/share/estonian/errmsg.txt:
  New error messages
sql/sql_base.cc:
  Better list_open_tabels
sql/sql_delete.cc:
  ORDER BY for delete
sql/sql_lex.cc:
  Added language convertation of all strings
sql/sql_parse.cc:
  Changes for libmysqld
  Use new ORDER BY options
sql/sql_show.cc:
  Character set convertations
  Use new list_open_tables function.
sql/sql_update.cc:
  UPDATE ... ORDER BY
sql/sql_yacc.yy:
  Clean up symbol definitions
  DELETE .. ORDER BY
  UPDATE .. ORDER BY
sql/table.h:
  new OPEN_TABLE_LIST structure
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2001-04-11 13:04:03 +02:00
..
CorbaFS.idl Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
database.c Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
dump.sql Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
korbit-kernel-2.4.1-patch Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
libmysqlfs.c Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
libmysqlfs.h Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
Makefile.am Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
my.cnf Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
mysqlcorbafs.c Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
mysqlcorbafs.h Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
mysqlcorbafs_test.c Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
mysqlfsck Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
README Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00
RunServer.sh Added all changes from old 4.0 version: 2001-04-11 13:04:03 +02:00

MySQL Filesystem
Tõnu Samuel - tonu@mysql.com
Some additional information is available on http://no.spam.ee/~tonu/mysqlfs.html

WARNING: Experimental code and known to crash computer.

Instructions, how to get this stuff working:
1. Make sure you have ORBit, includeing development libraries installed. They should be version 0.5.3 or later.
- I am lazy man and use default ones included with my RedHat:
   [root@localhost /root]# rpm -qa | grep ORBit
   ORBit-0.5.3-2
   ORBit-devel-0.5.3-2
   [root@localhost /root]#

2. Prepare kernel to include korbit:
- Get Linux 2.4.1 kernel source. (very possibly this patch works on 2.4.0 without modifications too)
- unpack it
- apply patch named "korbit-kernel-2.4.1-patch" on it.
- make menuconfig
- In section "Networking options":
   ...
   [*]   Kernel ORB (EXPERIMENTAL)
   ...
   <M>     CORBA User-space FileSystem (EXPERIMENTAL)
   ...
- make dep ; make bzlilo ; make modules ; make modules_install
- reboot
- Execute: insmod /lib/modules/$(uname -r)/kernel/net/korbit/modules/CorbaFS/client/corba-corbafs-client.o
  You should see "gethostname() = localhost". Look at known bug 3 in the end of this doc.

3. Make sure MySQL server is working on your system
- On my RedHat 7.0 I execute "/etc/init.d/mysqld start"

4. Prepare MySQL FS daemon
- Get MySQL 4.0 from repository OR get MySQL FS source from http://no.spam.ee/~tonu/mysqlfs.html
- unpack it. In MySQL 4.0 source this is located in directory named "fs". cd into it.
- make
- Execute command "./RunServer" 

5. mount MySQL server to disk tree
- Execute command "mkdir /mnt/mysql" 
- Execute command "mount -t corbafs -o `cat /tmp/mysqlcorbafs.ior` none /mnt/mysql/"
- Check you SQL server content by executing "ls -la /mnt/mysql/"

Known bugs:

1. User bugs. fix user ;)

2. MySQL FS daemon will crash or will be stopped when cobrafs is mounted, then there is no way
to unmount disks anymore. This is korbit business to handle such cases and I had no time to dig
into korbit code.

3. host name returned by gethostname() should be "localhost" or korbit will crash. Also "localhost"
must be first string after 127.0.0.1 in /etc/hosts