Kouhei Sutou
null+****@clear*****
Sat Aug 3 15:55:09 JST 2013
Kouhei Sutou 2013-08-03 15:55:09 +0900 (Sat, 03 Aug 2013) New Revision: 7ec02fe64b56f9088c5fece38e3b6c93de45fe39 https://github.com/groonga/groonga/commit/7ec02fe64b56f9088c5fece38e3b6c93de45fe39 Message: Extract code that removes fix size column Added files: test/command/suite/column_remove/fix_size/with_index.expected test/command/suite/column_remove/fix_size/with_index.test test/command/suite/column_remove/fix_size/without_index.expected test/command/suite/column_remove/fix_size/without_index.test Modified files: lib/db.c Modified: lib/db.c (+15 -8) =================================================================== --- lib/db.c 2013-08-03 15:49:20 +0900 (3e672fd) +++ lib/db.c 2013-08-03 15:55:09 +0900 (06b684e) @@ -6713,6 +6713,20 @@ _grn_obj_remove_ja(grn_ctx *ctx, grn_obj *obj, grn_obj *db, grn_id id, } static void +_grn_obj_remove_ra(grn_ctx *ctx, grn_obj *obj, grn_obj *db, grn_id id, + const char *path) +{ + remove_index(ctx, obj, GRN_HOOK_SET); + grn_obj_close(ctx, obj); + if (path) { + grn_ja_put(ctx, ((grn_db *)db)->specs, id, NULL, 0, GRN_OBJ_SET, NULL); + grn_obj_delete_by_id(ctx, db, id, GRN_TRUE); + grn_ra_remove(ctx, path); + } + grn_obj_touch(ctx, db, NULL); +} + +static void _grn_obj_remove(grn_ctx *ctx, grn_obj *obj) { grn_id id = GRN_ID_NIL; @@ -6756,14 +6770,7 @@ _grn_obj_remove(grn_ctx *ctx, grn_obj *obj) _grn_obj_remove_ja(ctx, obj, db, id, path); break; case GRN_COLUMN_FIX_SIZE : - remove_index(ctx, obj, GRN_HOOK_SET); - grn_obj_close(ctx, obj); - if (path) { - grn_ja_put(ctx, ((grn_db *)db)->specs, id, NULL, 0, GRN_OBJ_SET, NULL); - grn_obj_delete_by_id(ctx, db, id, GRN_TRUE); - grn_ra_remove(ctx, path); - } - grn_obj_touch(ctx, db, NULL); + _grn_obj_remove_ra(ctx, obj, db, id, path); break; case GRN_COLUMN_INDEX : delete_source_hook(ctx, obj); Added: test/command/suite/column_remove/fix_size/with_index.expected (+20 -0) 100644 =================================================================== --- /dev/null +++ test/command/suite/column_remove/fix_size/with_index.expected 2013-08-03 15:55:09 +0900 (03d84aa) @@ -0,0 +1,20 @@ +table_create Users TABLE_PAT_KEY ShortText +[[0,0.0,0.0],true] +column_create Users age COLUMN_SCALAR UInt8 +[[0,0.0,0.0],true] +table_create Ages TABLE_PAT_KEY UInt8 +[[0,0.0,0.0],true] +column_create Ages users_age COLUMN_INDEX Users age +[[0,0.0,0.0],true] +dump +table_create Users TABLE_PAT_KEY ShortText +column_create Users age COLUMN_SCALAR UInt8 +table_create Ages TABLE_PAT_KEY UInt8 +column_create Ages users_age COLUMN_INDEX Users age + +column_remove Users age +[[0,0.0,0.0],true] +dump +table_create Users TABLE_PAT_KEY ShortText +table_create Ages TABLE_PAT_KEY UInt8 + Added: test/command/suite/column_remove/fix_size/with_index.test (+11 -0) 100644 =================================================================== --- /dev/null +++ test/command/suite/column_remove/fix_size/with_index.test 2013-08-03 15:55:09 +0900 (3c14ad7) @@ -0,0 +1,11 @@ +table_create Users TABLE_PAT_KEY ShortText +column_create Users age COLUMN_SCALAR UInt8 + +table_create Ages TABLE_PAT_KEY UInt8 +column_create Ages users_age COLUMN_INDEX Users age + +dump + +column_remove Users age + +dump Added: test/command/suite/column_remove/fix_size/without_index.expected (+13 -0) 100644 =================================================================== --- /dev/null +++ test/command/suite/column_remove/fix_size/without_index.expected 2013-08-03 15:55:09 +0900 (ca9bfad) @@ -0,0 +1,13 @@ +table_create Users TABLE_PAT_KEY ShortText +[[0,0.0,0.0],true] +column_create Users age COLUMN_SCALAR UInt8 +[[0,0.0,0.0],true] +dump +table_create Users TABLE_PAT_KEY ShortText +column_create Users age COLUMN_SCALAR UInt8 + +column_remove Users age +[[0,0.0,0.0],true] +dump +table_create Users TABLE_PAT_KEY ShortText + Added: test/command/suite/column_remove/fix_size/without_index.test (+8 -0) 100644 =================================================================== --- /dev/null +++ test/command/suite/column_remove/fix_size/without_index.test 2013-08-03 15:55:09 +0900 (2ec953f) @@ -0,0 +1,8 @@ +table_create Users TABLE_PAT_KEY ShortText +column_create Users age COLUMN_SCALAR UInt8 + +dump + +column_remove Users age + +dump -------------- next part -------------- HTML����������������������������...Download