From 62b30a1922f12f098043d76336466c89ea37e7bd Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 8 Aug 2007 11:36:41 +0200 Subject: [PATCH] propagation to maria_repair_by_sort() and maria_repair_parallel() of bugfix made to maria_repair() yesterday. Fail "bk delta" (and thus "bk citool") if an added or modified line of a C/C++ file has white space at end of line BitKeeper/triggers/pre-delta: detection gave false alarm on added newline storage/maria/ma_check.c: propagation to maria_repair_by_sort() and maria_repair_parallel() of bugfix made to maria_repair() yesterday. No effect now as those two repair variants are never used with BLOCK_RECORD. --- BitKeeper/triggers/pre-delta | 15 +++++++++++++++ storage/maria/ma_check.c | 8 ++++++++ 2 files changed, 23 insertions(+) diff --git a/BitKeeper/triggers/pre-delta b/BitKeeper/triggers/pre-delta index cd861703bb5..d6afe0905e7 100755 --- a/BitKeeper/triggers/pre-delta +++ b/BitKeeper/triggers/pre-delta @@ -20,3 +20,18 @@ then exit 1 fi +# detect if C/C++ files have new trailing white space +trailingblank=`echo $BK_FILE | egrep '\.(c|.h)'` +if [ -n "$trailingblank" ] +then + trailingblank=`bk diffs $BK_FILE | grep '^> .*[[:space:]]$'` + if [ -n "$trailingblank" ] + then + echo "bk diffs $BK_FILE | grep '^> .*[[:space:]]$'" + echo "reported white space at end of some added/modified lines" + echo "" + echo "Checkin FAILED!" + echo "Fix the problem and retry." + exit 1 + fi +fi diff --git a/storage/maria/ma_check.c b/storage/maria/ma_check.c index 3832b6f6fdd..ae675472cc3 100644 --- a/storage/maria/ma_check.c +++ b/storage/maria/ma_check.c @@ -2752,6 +2752,10 @@ int maria_repair_by_sort(HA_CHECK *param, register MARIA_HA *info, if (info->s->options & (HA_OPTION_CHECKSUM | HA_OPTION_COMPRESS_RECORD)) param->testflag|=T_CALC_CHECKSUM; + if (_ma_flush_table_files(info, MARIA_FLUSH_DATA, FLUSH_FORCE_WRITE, + FLUSH_KEEP)) + goto err; + if (!(sort_info.key_block= alloc_key_blocks(param, (uint) param->sort_key_blocks, @@ -3173,6 +3177,10 @@ int maria_repair_parallel(HA_CHECK *param, register MARIA_HA *info, if (info->s->options & (HA_OPTION_CHECKSUM | HA_OPTION_COMPRESS_RECORD)) param->testflag|=T_CALC_CHECKSUM; + if (_ma_flush_table_files(info, MARIA_FLUSH_DATA, FLUSH_FORCE_WRITE, + FLUSH_KEEP)) + goto err; + /* Quick repair (not touching data file, rebuilding indexes): {