[Groonga-commit] groonga/groonga [master] fix columns aren't renamed bug in grn_table_rename(). fixes #1167

Back to archive index

null+****@clear***** null+****@clear*****
2011年 11月 22日 (火) 14:11:02 JST


Kouhei Sutou	2011-11-22 05:11:02 +0000 (Tue, 22 Nov 2011)

  New Revision: 838851d6d29f90f47d4e510c353ddc3b47c560ac

  Log:
    fix columns aren't renamed bug in grn_table_rename(). fixes #1167

  Modified files:
    lib/db.c
    test/unit/core/test-rename.c

  Modified: lib/db.c (+5 -5)
===================================================================
--- lib/db.c    2011-11-22 04:57:48 +0000 (3780916)
+++ lib/db.c    2011-11-22 05:11:02 +0000 (dd15d26)
@@ -6186,11 +6186,11 @@ grn_table_rename(grn_ctx *ctx, grn_obj *table, const char *name, unsigned name_s
   GRN_API_ENTER;
   if (GRN_OBJ_TABLEP(table) && DB_OBJ(table)->id &&
       !(DB_OBJ(table)->id & GRN_OBJ_TMP_OBJECT)) {
-    if (!(rc = grn_obj_rename(ctx, table, name, name_size))) {
-      grn_hash *cols;
-      if ((cols = grn_hash_create(ctx, NULL, sizeof(grn_id), 0,
-                                  GRN_OBJ_TABLE_HASH_KEY|GRN_HASH_TINY))) {
-        if (grn_table_columns(ctx, table, "", 0, (grn_obj *)cols)) {
+    grn_hash *cols;
+    if ((cols = grn_hash_create(ctx, NULL, sizeof(grn_id), 0,
+                                GRN_OBJ_TABLE_HASH_KEY|GRN_HASH_TINY))) {
+      if (grn_table_columns(ctx, table, "", 0, (grn_obj *)cols)) {
+        if (!(rc = grn_obj_rename(ctx, table, name, name_size))) {
           grn_id *key;
           char fullname[GRN_PAT_MAX_KEY_SIZE];
           memcpy(fullname, name, name_size);

  Modified: test/unit/core/test-rename.c (+1 -3)
===================================================================
--- test/unit/core/test-rename.c    2011-11-22 04:57:48 +0000 (6c163cf)
+++ test/unit/core/test-rename.c    2011-11-22 05:11:02 +0000 (40a3831)
@@ -87,8 +87,6 @@ test_table(void)
 {
   const gchar *actual;
 
-  cut_omit("grn_table_rename() isn't implemented yet.");
-
   assert_send_commands("table_create Sites TABLE_PAT_KEY ShortText\n"
                        "column_create Sites link COLUMN_SCALAR Sites\n"
                        "load --table Sites\n"
@@ -115,7 +113,7 @@ test_table(void)
   cut_assert_equal_string("[[[3],"
                           "[[\"_id\",\"UInt32\"],"
                            "[\"_key\",\"ShortText\"],"
-                           "[\"link\",\"Sites\"]],"
+                           "[\"link\",\"URLs\"]],"
                           "[1,\"groonga.org\",\"razil.jp\"],"
                           "[3,\"qwik.jp/senna/\",\"\"],"
                           "[2,\"razil.jp\",\"qwik.jp/senna/\"]]]",




Groonga-commit メーリングリストの案内
Back to archive index