[Groonga-commit] groonga/groonga at 79fbe2d [master] logical_table_remove: simplify

Zurück zum Archiv-Index

Kouhei Sutou null+****@clear*****
Tue Aug 30 16:19:20 JST 2016


Kouhei Sutou	2016-08-30 16:19:20 +0900 (Tue, 30 Aug 2016)

  New Revision: 79fbe2dcd923c42f85c4eec4ebb2be7182ac93ac
  https://github.com/groonga/groonga/commit/79fbe2dcd923c42f85c4eec4ebb2be7182ac93ac

  Message:
    logical_table_remove: simplify

  Modified files:
    plugins/sharding/logical_table_remove.rb
    test/command/suite/sharding/logical_table_remove/broken/table/default.expected
    test/command/suite/sharding/logical_table_remove/broken/table/dependent.expected
    test/command/suite/sharding/logical_table_remove/broken/table_and_column/default.expected
    test/command/suite/sharding/logical_table_remove/broken/table_and_column/dependent.expected

  Modified: plugins/sharding/logical_table_remove.rb (+13 -8)
===================================================================
--- plugins/sharding/logical_table_remove.rb    2016-08-30 16:18:03 +0900 (9fbe693)
+++ plugins/sharding/logical_table_remove.rb    2016-08-30 16:19:20 +0900 (147b1a4)
@@ -67,7 +67,18 @@ module Groonga
       end
 
       def remove_table(shard, table)
-        if table.nil? and @force
+        if table.nil?
+          unless @force
+            if context.rc == Context::RC::SUCCESS.to_i
+              error_class = InvalidArgument
+            else
+              rc = Context::RC.find(context.rc)
+              error_class = rc.error_class
+            end
+            message = "[logical_table_remove] table is broken: " +
+                      "<#{shard.table_name}>: #{context.error_message}"
+            raise error_class, message
+          end
           context.clear_error
         end
 
@@ -107,13 +118,7 @@ module Groonga
         end
 
         if table.nil?
-          if @force
-            remove_table_force(shard.table_name)
-          else
-            message = "[logical_table_remove] table is broken: " +
-                      "<#{shard.table_name}>"
-            raise InvalidArgument, message
-          end
+          remove_table_force(shard.table_name)
         else
           options = {:dependent => @dependent}
           if @force

  Modified: test/command/suite/sharding/logical_table_remove/broken/table/default.expected (+10 -1)
===================================================================
--- test/command/suite/sharding/logical_table_remove/broken/table/default.expected    2016-08-30 16:18:03 +0900 (aa55751)
+++ test/command/suite/sharding/logical_table_remove/broken/table/default.expected    2016-08-30 16:19:20 +0900 (0e6e629)
@@ -48,7 +48,16 @@ load --table Logs_20150204
 ]
 [[0,0.0,0.0],3]
 logical_table_remove Logs timestamp   --min "2015-02-04 00:00:00"   --min_border "include"
-[[[-22,0.0,0.0],"[logical_table_remove] table is broken: <Logs_20150204>"]]
+[
+  [
+    [
+      -65,
+      0.0,
+      0.0
+    ],
+    "[logical_table_remove] table is broken: <Logs_20150204>: [io][open] file size is too small: <8>(required: >= 64): <db/db.000011"
+  ]
+]
 #|e| [io][open] file size is too small: <8>(required: >= 64): <db/db.0000110>
 #|e| grn_ctx_at: failed to open object: <272>(<Logs_20150204>):<51>(<table:no_key>)
 dump

  Modified: test/command/suite/sharding/logical_table_remove/broken/table/dependent.expected (+1 -1)
===================================================================
--- test/command/suite/sharding/logical_table_remove/broken/table/dependent.expected    2016-08-30 16:18:03 +0900 (85cf29b)
+++ test/command/suite/sharding/logical_table_remove/broken/table/dependent.expected    2016-08-30 16:19:20 +0900 (a750aef)
@@ -55,7 +55,7 @@ logical_table_remove Logs timestamp   --min "2015-02-04 00:00:00"   --min_border
       0.0,
       0.0
     ],
-    "incompatible file format: <[io][open] file size is too small: <8>(required: >= 64): <db/db.0000110>>(-65)"
+    "[logical_table_remove] table is broken: <Logs_20150204>: [io][open] file size is too small: <8>(required: >= 64): <db/db.000011"
   ]
 ]
 #|e| [io][open] file size is too small: <8>(required: >= 64): <db/db.0000110>

  Modified: test/command/suite/sharding/logical_table_remove/broken/table_and_column/default.expected (+10 -1)
===================================================================
--- test/command/suite/sharding/logical_table_remove/broken/table_and_column/default.expected    2016-08-30 16:18:03 +0900 (aa55751)
+++ test/command/suite/sharding/logical_table_remove/broken/table_and_column/default.expected    2016-08-30 16:19:20 +0900 (0e6e629)
@@ -48,7 +48,16 @@ load --table Logs_20150204
 ]
 [[0,0.0,0.0],3]
 logical_table_remove Logs timestamp   --min "2015-02-04 00:00:00"   --min_border "include"
-[[[-22,0.0,0.0],"[logical_table_remove] table is broken: <Logs_20150204>"]]
+[
+  [
+    [
+      -65,
+      0.0,
+      0.0
+    ],
+    "[logical_table_remove] table is broken: <Logs_20150204>: [io][open] file size is too small: <8>(required: >= 64): <db/db.000011"
+  ]
+]
 #|e| [io][open] file size is too small: <8>(required: >= 64): <db/db.0000110>
 #|e| grn_ctx_at: failed to open object: <272>(<Logs_20150204>):<51>(<table:no_key>)
 dump

  Modified: test/command/suite/sharding/logical_table_remove/broken/table_and_column/dependent.expected (+1 -1)
===================================================================
--- test/command/suite/sharding/logical_table_remove/broken/table_and_column/dependent.expected    2016-08-30 16:18:03 +0900 (85cf29b)
+++ test/command/suite/sharding/logical_table_remove/broken/table_and_column/dependent.expected    2016-08-30 16:19:20 +0900 (a750aef)
@@ -55,7 +55,7 @@ logical_table_remove Logs timestamp   --min "2015-02-04 00:00:00"   --min_border
       0.0,
       0.0
     ],
-    "incompatible file format: <[io][open] file size is too small: <8>(required: >= 64): <db/db.0000110>>(-65)"
+    "[logical_table_remove] table is broken: <Logs_20150204>: [io][open] file size is too small: <8>(required: >= 64): <db/db.000011"
   ]
 ]
 #|e| [io][open] file size is too small: <8>(required: >= 64): <db/db.0000110>
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Zurück zum Archiv-Index