>Description:

The mysql initialisation fails on coda filesystems.
Apparently CREATE TABLE creates just the *.frm files,
but silently won't create the *.ISM and *ISD, 
resulting in  a subsequent message 
"ERROR: 1033  Incorrect information in file: './mysql/db.frm'"


>How-To-Repeat:

        The problem has been reproduced with both
        mysql-3.22.32 and current 3.23.32 
        (the latter with disable-large-files) 
        on SuSE linux 7.0, kernel 2.2.16, glibc2.1.3

        starting a freshly installed mysqld with 

        /coda/vol/mysql/libexec/mysqld 
                --bootstrap 
                --skip-grant-tables 
                --basedir=/coda/vol/mysql 
                --datadir=/coda/vol/mysql/var 

        and issuing create table bla (bla int); 
        leads to the strace output below. 
        there is another strace for datadir=/tmp/mysql,
        which succeeds.

I am not deep enough into the mysql sources to understand
where exactly the statement fails.

Any help, also on where coda might be the cause, 
is appreciated.

Yours,
Steffen


-----------------------------------------------------
starting a freshly installed mysqld with 

strace /coda/vol/mysql/libexec/mysqld --bootstrap 
       --skip-grant-tables --basedir=/coda/vol/mysql 
       --datadir=/coda/vol/mysql/var 


create table bla (bla int); leads to :



read(0, create table bla (bla int);
"create table bla (bla int);\n", 1024) = 28
access("./mysql/bla.frm", F_OK)         = -1 ENOENT (No such file or directory)
open("./mysql/bla.frm", O_RDWR|O_CREAT|O_TRUNC, 0660) = 5
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
lseek(5, 64, SEEK_SET)                  = 64
write(5, "//\0", 3)                     = 3
write(5, "\0 \0\0", 4)                  = 4
lseek(5, 0, SEEK_END)                   = 4096
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
pwrite(5, "\376\1\7\7\3\0\0\20\1\0\0000\0\0\20\0\6\0\0\0\0\0\0\0\0"..., 64, 0) = 64
pwrite(5, "\0\0\6\0\2\0,\0", 8, 4096)   = 8
lseek(5, 4112, SEEK_SET)                = 4112
write(5, "\376\0\0\0\0\377", 6)         = 6
lseek(5, 8192, SEEK_SET)                = 8192
write(5, "h\1\0\20\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 288) = 288
write(5, "7\0\2\1\2\24)                         "..., 55) = 55
write(5, "\4\4\v\v\2\0\33\200\0\0\0", 11) = 11
write(5, ",", 1)                        = 1
write(5, "bla,\0", 5)                   = 5
close(5)                                = 0
open("./mysql/bla.frm", O_RDONLY)       = 5
read(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
close(5)                                = 0
write(2, "ERROR: 1033  Incorrect informati"..., 62ERROR: 
                 1033  Incorrect information in file: './mysql/bla.frm') = 62



-----------------------------------------------------


With datadir set to an ext2 fs it looks like this:

strace /coda/vol/mysql/libexec/mysqld 
        --bootstrap --skip-grant-tables 
        --basedir=/coda/vol/mysql 
        --datadir=/tmp/mysql

read(0, create table bla (bla int);
"create table bla (bla int);\n", 1024) = 28
access("./mysql/bla.frm", F_OK)         = -1 ENOENT (No such file or directory)
open("./mysql/bla.frm", O_RDWR|O_CREAT|O_TRUNC, 0660) = 5
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
lseek(5, 64, SEEK_SET)                  = 64
write(5, "//\0", 3)                     = 3
write(5, "\0 \0\0", 4)                  = 4
lseek(5, 0, SEEK_END)                   = 4096
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
pwrite(5, "\376\1\7\7\3\0\0\20\1\0\0000\0\0\20\0\6\0\0\0\0\0\0\0\0"..., 64, 0) = 64
pwrite(5, "\0\0\6\0\2\0,\0", 8, 4096)   = 8
lseek(5, 4112, SEEK_SET)                = 4112
write(5, "\376\0\0\0\0\377", 6)         = 6
lseek(5, 8192, SEEK_SET)                = 8192
write(5, "h\1\0\20\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 288) = 288
write(5, "7\0\2\1\2\24)                         "..., 55) = 55
write(5, "\4\4\v\v\2\0\33\200\0\0\0", 11) = 11
write(5, ",", 1)                        = 1
write(5, "bla,\0", 5)                   = 5
close(5)                                = 0
open("./mysql/bla.frm", O_RDONLY)       = 5
read(5, "\376\1\7\7\3\0\0\20\1\0\0000\0\0\20\0\6\0\0\0\0\0\0\0\0"..., 64) = 64
lseek(5, 64, SEEK_SET)                  = 64
read(5, "//\0\0 \0\0", 7)               = 7
lseek(5, 4096, SEEK_SET)                = 4096
read(5, "\0\0\6\0\2\0,\0", 8)           = 8
pread(5, "\376\0\0\0\0\377", 6, 4112)   = 6
lseek(5, 8192, SEEK_SET)                = 8192
read(5, "h\1\0\20\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 288) = 288
read(5, "7\0\2\1\2\24)                         "..., 72) = 72
close(5)                                = 0
lstat("./mysql/bla", 0xbfffc9c4)        = -1 ENOENT (No such file or directory)
open("./mysql/bla.ISM", O_RDWR|O_CREAT|O_TRUNC, 0660) = 5
open("./mysql/bla.ISD", O_RDWR|O_CREAT|O_TRUNC, 0660) = 6
getpid()                                = 602
time(NULL)                              = 981123665
time(NULL)                              = 981123665
write(5, "\376\376\5\2\0\0\250\2\310\0\234\0\0\2\0\0\0\0\0\0\0\0"..., 200) = 200
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 312) = 312
write(5, "\0\4\0\0\0\0\0\0\0\0\0\0\6\0\0\0\377\377\377\377\377\377"..., 156) = 156
write(5, "\0\0\1\0", 4)                 = 4
write(5, "\0\0\4\0", 4)                 = 4
write(5, "\0\0\1\0", 4)                 = 4
lseek(5, 0, SEEK_END)                   = 680
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 344) = 344
close(6)                                = 0
close(5)                                = 0

-----------------------------------------------------


>Fix:
        None.

>Submitter-Id:  <submitter ID>
>Originator:    
>Organization:
  Steffen Neumann                      Computer science is the dangerous 
  [EMAIL PROTECTED]    attempt to overcome human intelligence
>
>MySQL support: [none]
>Severity:      
>Priority:      
>Category:      mysql
>Class:         
>Release:       mysql-3.22.32 (yes)
>Environment:
        
System: OSF1 liszt V4.0 1229 alpha
Machine: alpha
Some paths:  /vol/perl/bin/perl /vol/gnu/bin/make /vol/gnu/bin/gcc /usr/bin/cc
GCC: Reading specs from /vol/gnu/lib/gcc-lib/alpha-dec-osf4.0b/2.95/specs
gcc version 2.95 19990728 (release)
Compilation info: CC='gcc'  CFLAGS=''  CXX='c++'  CXXFLAGS=''  LDFLAGS=''
Configure command: /vol/mysql/src/mysql/mysql-3.22.32/configure  --prefix=/vol/mysql 
--libexecdir=/vol/mysql/lib --localstatedir=/var/spool/mysql --enable-static=no 
--with-libwrap --enable-assembler --enable-strcoll --enable-large-files 
--enable-thread-safe-client --with-comment --without-readline --with-pthread 
--without-bench --with-mysqld-user=mysql
Perl: This is perl, version 5.004_04 built for alpha-dec_osf



---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to