- 21 Nov, 2006 1 commit
-
-
unknown authored
1) on Mac OS X >=10.3, fcntl() is recommended over fsync (from the man page: "[With fsync()] the disk drive may also re-order the data so that later writes may be present while earlier writes are not. Applications such as databases that require a strict ordering of writes should use F_FULLFSYNC to ensure their data is written in the order they expect"). I have seen two other pieces of software changing from fsync to F_FULLFSYNC on Mac OS X. 2) to make a file creation/deletion/renaming durable on Linux (at least ext2 as I have tested) (see "man fsync"), a fsync() on the directory is needed: new functions to do that, and a flag MY_SYNC_DIR to do it in my_create/my_delete/my_rename. 3) now using this directory syncing when creating he frm if opt_sync_frm, and for Maria's control file when it is created. include/my_sys.h: new flag to my_create/my_delete/my_rename, which asks to sync the directory after the operation is done (currently does nothing except on Linux) libmysql/CMakeLists.txt: my_create() now depends on my_sync() so my_sync is needed for libmysql libmysql/Makefile.shared: my_create() now depends on my_sync() so my_sync is needed for libmysql mysys/my_create.c: my_create() can now sync the directory if asked for mysys/my_delete.c: my_delete() can now sync the directory if asked for mysys/my_open.c: it was a bug that my_close() is done on fd but a positive fd would still be returned, by my_register_filename(). mysys/my_rename.c: my_rename() can now sync the two directories (the one of "from" and the one of "to") if asked for. mysys/my_sync.c: On recent Mac OS X, fcntl(F_FULLFSYNC) is recommended over fsync() (see "man fsync" on Mac OS X 10.3). my_sync_dir(): to sync a directory after a file creation/deletion/ renaming; can be called directly or via MY_SYNC_DIR in my_create/ my_delete/my_rename(). No-op except on Linux (see "man fsync" on Linux). my_sync_dir_from_file(): same as above, just more practical when the caller has a file name but no directory name ready. Should the #warning even be a #error? I mean do we want to release binaries which don't guarantee any durability? sql/log.cc: a TODO for the future. sql/unireg.cc: If we sync the frm it makes sense to also sync its creation in the directory. storage/maria/ma_control_file.c: control file is vital, try to make it to disk
-
- 16 Nov, 2006 2 commits
-
-
unknown authored
#warning to warn (!) about current issues in the pagecache hindering checkpoint (we will have to fix them!). mysys/mf_pagecache.c: fix for compiler warning (signed-ness). #warning to warn (!) about current issues in the pagecache hindering checkpoint (we will have to fix them!).
-
unknown authored
Moving the test_pagecache_ tests from mysys to unittest/mysys. Means fixing includes to work with the new directory, some Makefile.am editing, replacing memset() with bfill(). test_page_cache_*.c renamed to mf_pagecache_*-t.c (-t is the standard suffix for tests in the mytap protocol). Also added plan() and exit_status() calls to tests. Sanja, I put some TODOs for you at the start of mf_pagecache_*.c unittest/mysys/test_file.h: Rename: mysys/test_file.h -> unittest/mysys/test_file.h mysys/Makefile.am: pagecache test files move to top/unittest/mysys mysys/mf_pagecache.c: my_bit.h needed to compile. unittest/mysys/Makefile.am: INCLUDES is a better place for includes than AM_CPPFLAGS (the latter get overriden by prog_CPPFLAGS, which is not desirable here). Adding pagecache's test programs (moved from mysys); test_pagecache_* has been renamed to mf_pagecache*-t (-t is the required suffix for test executables in the mytap framework). unittest/mysys/mf_pagecache_consist.c: fixing includes to work with the new directory. The test must return an exit code informing if any part failed. TODOs for Sanja. unittest/mysys/mf_pagecache_single.c: fixing includes to work with new directory. adding a plan() to account for the number of tests. Adding exit_status() to tell how many tests failed. memset() was giving a compilation warning (implicit declaration etc), properly due to me removing stdio.h etc, so I replaced it with bfill(). TODOs for Sanja. unittest/mysys/test_file.c: moved from mysys (piece of the page cache tests) and includes fixed.
-
- 15 Nov, 2006 1 commit
-
-
unknown authored
storage/maria/CMakeLists.txt: Rename: storage/maria/_MakeLists.txt -> storage/maria/CMakeLists.txt
-
- 14 Nov, 2006 2 commits
- 12 Nov, 2006 3 commits
-
-
unknown authored
fixed bug in the pagecache which lead to assertion in multithread test include/pagecache.h: post review fixes: - comments fixed - types fixed - keyword 'extern' added to all interface functions mysys/mf_pagecache.c: postreview fixes: - comments fixed and added - types fixed - typo fixed Added write locking flag set when we took a block from LRU and going to free it (to prevent locking/using it for write) mysys/test_pagecache_consist.c: pagecache size reduced (to be able reproduce problems found by Guilhem) typo in the comment fixed
-
unknown authored
into janus.mylan:/usr/home/serg/Abk/mysql-maria
-
unknown authored
storage/maria/lockman.c: restore removed lines storage/maria/unittest/lockman2-t.c: fix the plan
-
- 10 Nov, 2006 3 commits
-
-
unknown authored
This makes an expected warning message about the index file's size, go away, as intended. storage/maria/ma_test_all.sh: importing change made to MyISAM's mi_test_all, into Maria's ma_test_all This makes an expected warning message about the index file's size, go away, as intended.
-
unknown authored
into janus.mylan:/usr/home/serg/Abk/mysql-maria
-
unknown authored
storage/maria/tablockman.c: comments. bugfix - a special case in release_locks storage/maria/unittest/lockman1-t.c: updated storage/maria/unittest/lockman2-t.c: new tests
-
- 09 Nov, 2006 1 commit
-
-
unknown authored
storage/maria/unittest/lockman1-t.c: New BitKeeper file ``storage/maria/unittest/lockman1-t.c'' storage/maria/tablockman.c: New BitKeeper file ``storage/maria/tablockman.c'' storage/maria/tablockman.h: New BitKeeper file ``storage/maria/tablockman.h'' storage/maria/unittest/lockman2-t.c: New BitKeeper file ``storage/maria/unittest/lockman2-t.c''
-
- 08 Nov, 2006 1 commit
-
-
unknown authored
the unit test of the control file module. storage/maria/trnman.c: fix for a bug (i has to be in [1..SHORT_TRID_MAX]) storage/maria/unittest/ma_control_file-t.c: corrupted checksum is in buffer[0], not in buffer[1]
-
- 30 Oct, 2006 2 commits
-
-
unknown authored
-
unknown authored
"Changing MI_KEY_BLOCK_LENGTH makes a wrong myisamchk" in the Maria tree as it is really needed to get "ma_test_all" to pass (this bug showed up in Maria first, not in MyISAM). Now ma_test_all does not have corruption messages about test2 anymore, and shows the same output as mi_test_all except that ma_test_all has this at the start: lt-maria_chk: MARIA file test1 lt-maria_chk: warning: Size of indexfile is: 8192 Should be: 16384 MARIA-table 'test1' is usable but should be fixed This was already true before importing the bugfix. Wonder if normal. NOTE: this bugfix is currently in 5.1-engines, in a few days will be in the main 5.1, then we'll merge 5.1 into Maria: this will merge the bugfix into storage/myisam, but there will be no need to apply it to storage/maria again. I just couldn't wait a few days for the 5.1-engines->5.1 merge to be allowed. mysql-test/r/maria.result: result update mysql-test/t/maria.test: test for BUG#22119 storage/maria/ma_check.c: fix for BUG#22119
-
- 27 Oct, 2006 2 commits
-
-
unknown authored
into janus.mylan:/usr/home/serg/Abk/mysql-maria storage/maria/trnman.c: Auto merged
-
unknown authored
--- comments mysys/lf_alloc-pin.c: comments mysys/lf_dynarray.c: comments mysys/lf_hash.c: comments, charset-aware comparison storage/maria/trnman.c: comments storage/maria/unittest/lockman-t.c: test case for a bug unittest/mysys/my_atomic-t.c: removed mistakenly copied line
-
- 23 Oct, 2006 2 commits
- 22 Oct, 2006 1 commit
-
-
unknown authored
NPTL bug in some linux kernels (Bug#22320)
-
- 21 Oct, 2006 2 commits
- 20 Oct, 2006 1 commit
-
-
unknown authored
concurrency bug in lock manager include/my_global.h: compile-time assert macro mysys/my_atomic.c: use compile_time_assert() macro storage/maria/lockman.c: bug in concurrent lockdelete (with retries) storage/maria/trnman.c: more post-review fixes - comments, renames storage/maria/trnman.h: more post-review fixes - comments storage/maria/unittest/lockman-t.c: friendlier error checks storage/maria/unittest/trnman-t.c: friendlier error checks
-
- 19 Oct, 2006 2 commits
- 18 Oct, 2006 1 commit
-
-
unknown authored
storage/maria/trnman.c: comments include/my_dbug.h: make DBUG_ASSERT always a statement storage/maria/lockman.h: comments include/lf.h: lf_pinbox - don't use a fixed-size purgatory. mysys/lf_alloc-pin.c: lf_pinbox - don't use a fixed-size purgatory. mysys/lf_hash.c: lf_pinbox - don't use a fixed-size purgatory. storage/maria/lockman.c: removed IGNORE_ME/UPGDARED matching - it was wrong in the first place. updated for "lf_pinbox - don't use a fixed-size purgatory" storage/maria/unittest/lockman-t.c: IGNORE_ME/UPGRADED pair counting bugtest. more tests unittest/mysys/my_atomic-t.c: lf_pinbox - don't use a fixed-size purgatory.
-
- 15 Oct, 2006 1 commit
-
-
unknown authored
storage/maria/_MakeLists.txt: Rename: storage/maria/CMakeLists.txt -> storage/maria/_MakeLists.txt
-
- 13 Oct, 2006 2 commits
-
-
unknown authored
into janus.mylan:/usr/home/serg/Abk/mysql-maria configure.in: Auto merged include/my_global.h: Auto merged include/my_sys.h: Auto merged mysys/Makefile.am: Auto merged sql/item_func.cc: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/set_var.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_test.cc: Auto merged storage/maria/Makefile.am: Auto merged storage/maria/ha_maria.cc: Auto merged storage/myisam/ha_myisam.cc: Auto merged unittest/Makefile.am: Auto merged unittest/mysys/my_atomic-t.c: merged
-
unknown authored
(lockmanager still fails unit tests) BitKeeper/deleted/.del-Makefile.am~4375ae3d4de2bdf0: Delete: unittest/maria/Makefile.am configure.in: silence up configure warnings, don't generate unittest/maria/Makefile include/atomic/nolock.h: s/LOCK/LOCK_prefix/ include/atomic/x86-gcc.h: s/LOCK/LOCK_prefix/ include/atomic/x86-msvc.h: s/LOCK/LOCK_prefix/ include/lf.h: pin asserts, renames include/my_atomic.h: move cleanup include/my_bit.h: s/uint/uint32/ mysys/lf_dynarray.c: style fixes, split for() in two, remove if()s mysys/lf_hash.c: renames, minor fixes mysys/my_atomic.c: run-time assert -> compile-time assert storage/maria/Makefile.am: lockman here storage/maria/unittest/Makefile.am: new unit tests storage/maria/unittest/trnman-t.c: lots of changes storage/maria/lockman.c: many changes: second meaning of "blocker" portability: s/gettimeofday/my_getsystime/ move mutex/cond out of LOCK_OWNER - it creates a race condition that will be fixed in a separate changeset increment lm->count for every element, not only for distinct ones - because we cannot decrease it for distinct elements only :( storage/maria/lockman.h: move mutex/cond out of LOCK_OWNER storage/maria/trnman.c: move mutex/cond out of LOCK_OWNER atomic-ops to access short_trid_to_trn[] storage/maria/trnman.h: move mutex/cond out of LOCK_OWNER storage/maria/unittest/lockman-t.c: unit stress test
-
- 11 Oct, 2006 1 commit
-
-
unknown authored
as in the main 5.1 (partition and ndb_alter_table fail). mysql-test/r/maria.result: merge from MyISAM mysql-test/r/ps_maria.result: merge from MyISAM mysql-test/t/maria.test: merge from MyISAM sql/mysql_priv.h: fix after wrong merge sql/mysqld.cc: fix after wrong merge sql/set_var.cc: adding _db like other engines have storage/maria/Makefile.am: merge from MyISAM storage/maria/ha_maria.cc: merge from MyISAM storage/maria/ha_maria.h: merge from MyISAM storage/maria/ma_check.c: merge from MyISAM storage/maria/ma_delete.c: merge from MyISAM storage/maria/ma_init.c: maria_inited should rather be my_bool storage/maria/ma_locking.c: merge from MyISAM storage/maria/ma_packrec.c: merge from MyISAM storage/maria/ma_panic.c: maria_panic() should not take mutex if engine has not been inited. storage/maria/ma_rkey.c: merge from MyISAM storage/maria/ma_write.c: merge from MyISAM storage/maria/maria_def.h: merge from MyISAM. maria_inited is needed for maria_panic(). storage/maria/maria_ftdump.c: merge from MyISAM
-
- 10 Oct, 2006 8 commits
-
-
unknown authored
into gbichot3.local:/home/mysql_src/mysql-maria BitKeeper/etc/ignore: auto-union BUILD/SETUP.sh: Auto merged Makefile.am: Auto merged configure.in: Auto merged config/ac-macros/plugins.m4: Auto merged storage/myisammrg/ha_myisammrg.h: Auto merged unittest/Makefile.am: Auto merged BitKeeper/triggers/post-commit: merge include/my_base.h: merge libmysqld/Makefile.am: merge mysql-test/mysql-test-run.pl: merge mysys/Makefile.am: merge sql/Makefile.am: merge sql/handler.h: merge sql/item_func.h: merge sql/mysql_priv.h: merge sql/mysqld.cc: merge sql/set_var.cc: merge sql/set_var.h: merge sql/sql_class.h: merge storage/csv/ha_tina.cc: merge storage/myisam/Makefile.am: merge storage/myisam/ha_myisam.cc: merge storage/myisam/ha_myisam.h: merge storage/myisam/mi_check.c: merge storage/myisam/mi_delete.c: merge storage/myisam/mi_dynrec.c: merge storage/myisam/mi_packrec.c: merge storage/myisam/mi_unique.c: merge storage/myisam/mi_write.c: merge storage/myisam/myisamdef.h: merge
-
unknown authored
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb storage/ndb/tools/restore/restore_main.cpp: Auto merged
-
unknown authored
ndb_restore Return OK even if temporary errors (otherwise mysql-test-run/ndb_restore can fail on really slow machines) storage/ndb/tools/restore/restore_main.cpp: Return OK even if temporary errors
-
unknown authored
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb client/mysqldump.c: Auto merged client/mysqltest.c: Auto merged mysql-test/r/csv.result: Auto merged mysql-test/r/ctype_utf8.result: Auto merged mysql-test/r/func_time.result: Auto merged mysql-test/t/csv.test: Auto merged mysql-test/t/ctype_utf8.test: Auto merged mysql-test/t/func_time.test: Auto merged sql/ha_ndbcluster.cc: Auto merged sql/item_timefunc.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_view.cc: Auto merged sql/table.cc: Auto merged storage/csv/ha_tina.cc: Auto merged storage/innobase/btr/btr0btr.c: Auto merged storage/innobase/buf/buf0buf.c: Auto merged storage/innobase/dict/dict0dict.c: Auto merged storage/innobase/fil/fil0fil.c: Auto merged storage/innobase/fsp/fsp0fsp.c: Auto merged storage/innobase/handler/ha_innodb.cc: Auto merged storage/innobase/include/btr0cur.ic: Auto merged storage/innobase/log/log0log.c: Auto merged storage/innobase/log/log0recv.c: Auto merged storage/innobase/os/os0file.c: Auto merged storage/innobase/row/row0mysql.c: Auto merged storage/innobase/row/row0sel.c: Auto merged storage/innobase/srv/srv0start.c: Auto merged storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp: Auto merged tests/mysql_client_test.c: Auto merged
-
unknown authored
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
-
unknown authored
into perch.ndb.mysql.com:/home/jonas/src/51-work storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: Auto merged storage/ndb/test/ndbapi/testTimeout.cpp: Auto merged
-
unknown authored
fix bug in test prg
-
unknown authored
fix bug in handling of inactive timeout for scan, when all is delivered ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: 1) set timeout if all scans are at api 2) Use c_appl_timeout_value when getting scan timeout ndb/test/ndbapi/testTimeout.cpp: test program
-
- 08 Oct, 2006 1 commit
-
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/engines/mysql-5.1-engines storage/myisammrg/ha_myisammrg.cc: Auto merged
-