[Groonga-commit] groonga/groonga at 0b71147 [master] logical_select: log N outputs

Back to archive index

Kouhei Sutou null+****@clear*****
Wed Dec 6 14:28:14 JST 2017


Kouhei Sutou	2017-12-06 14:28:14 +0900 (Wed, 06 Dec 2017)

  New Revision: 0b71147cf127ee613d0bb4f74b82e0b7478c8691
  https://github.com/groonga/groonga/commit/0b71147cf127ee613d0bb4f74b82e0b7478c8691

  Message:
    logical_select: log N outputs

  Modified files:
    plugins/sharding/logical_select.rb
    test/command/suite/sharding/logical_select/limit/negative.expected
    test/command/suite/sharding/logical_select/limit/negative.test
    test/command/suite/sharding/logical_select/limit/positive.expected
    test/command/suite/sharding/logical_select/limit/positive.test
    test/command/suite/sharding/logical_select/offset/negative.expected
    test/command/suite/sharding/logical_select/offset/negative.test
    test/command/suite/sharding/logical_select/offset/positive.expected
    test/command/suite/sharding/logical_select/offset/positive.test
    test/command/suite/sharding/logical_select/offset/with_limit.expected
    test/command/suite/sharding/logical_select/offset/with_limit.test

  Modified: plugins/sharding/logical_select.rb (+5 -1)
===================================================================
--- plugins/sharding/logical_select.rb    2017-12-06 14:06:32 +0900 (106242d47)
+++ plugins/sharding/logical_select.rb    2017-12-06 14:28:14 +0900 (c680997d1)
@@ -125,6 +125,7 @@ module Groonga
             writer.write_table_columns(first_result_set, output_columns)
           end
 
+          n_outputs = 0
           current_offset = context.offset
           current_offset += n_hits if current_offset < 0
           current_limit = context.limit
@@ -139,7 +140,9 @@ module Groonga
           result_sets.each do |result_set|
             if result_set.size > current_offset
               writer.write_table_records(result_set, output_columns, options)
-              current_limit -= result_set.size
+              n_written = [result_set.size - current_offset, current_limit].min
+              current_limit -= n_written
+              n_outputs += n_written
             end
             if current_offset > 0
               current_offset = [current_offset - result_set.size, 0].max
@@ -148,6 +151,7 @@ module Groonga
             options[:offset] = current_offset
             options[:limit] = current_limit
           end
+          query_logger.log(:size, ":", "output(#{n_outputs})")
         end
       end
 

  Modified: test/command/suite/sharding/logical_select/limit/negative.expected (+3 -0)
===================================================================
--- test/command/suite/sharding/logical_select/limit/negative.expected    2017-12-06 14:06:32 +0900 (49513adb6)
+++ test/command/suite/sharding/logical_select/limit/negative.expected    2017-12-06 14:28:14 +0900 (6d0e9d8d8)
@@ -127,3 +127,6 @@ logical_select Logs timestamp   --limit -6
     ]
   ]
 ]
+#>logical_select --limit "-6" --logical_table "Logs" --shard_key "timestamp"
+#:000000000000000 output(4)
+#<000000000000000 rc=0

  Modified: test/command/suite/sharding/logical_select/limit/negative.test (+2 -0)
===================================================================
--- test/command/suite/sharding/logical_select/limit/negative.test    2017-12-06 14:06:32 +0900 (1bc0cb8ac)
+++ test/command/suite/sharding/logical_select/limit/negative.test    2017-12-06 14:28:14 +0900 (612e154d0)
@@ -68,5 +68,7 @@ load --table Logs_20150205
 }
 ]
 
+#@collect-query-log true
 logical_select Logs timestamp \
   --limit -6
+#@collect-query-log false

  Modified: test/command/suite/sharding/logical_select/limit/positive.expected (+3 -0)
===================================================================
--- test/command/suite/sharding/logical_select/limit/positive.expected    2017-12-06 14:06:32 +0900 (c9425dba2)
+++ test/command/suite/sharding/logical_select/limit/positive.expected    2017-12-06 14:28:14 +0900 (a9d9ece5a)
@@ -122,3 +122,6 @@ logical_select Logs timestamp   --limit 3
     ]
   ]
 ]
+#>logical_select --limit "3" --logical_table "Logs" --shard_key "timestamp"
+#:000000000000000 output(3)
+#<000000000000000 rc=0

  Modified: test/command/suite/sharding/logical_select/limit/positive.test (+2 -0)
===================================================================
--- test/command/suite/sharding/logical_select/limit/positive.test    2017-12-06 14:06:32 +0900 (c04640a37)
+++ test/command/suite/sharding/logical_select/limit/positive.test    2017-12-06 14:28:14 +0900 (94174ceac)
@@ -68,5 +68,7 @@ load --table Logs_20150205
 }
 ]
 
+#@collect-query-log true
 logical_select Logs timestamp \
   --limit 3
+#@collect-query-log false

  Modified: test/command/suite/sharding/logical_select/offset/negative.expected (+3 -0)
===================================================================
--- test/command/suite/sharding/logical_select/offset/negative.expected    2017-12-06 14:06:32 +0900 (ed4d2f20c)
+++ test/command/suite/sharding/logical_select/offset/negative.expected    2017-12-06 14:28:14 +0900 (e1f439e87)
@@ -132,3 +132,6 @@ logical_select Logs timestamp   --offset -5
     ]
   ]
 ]
+#>logical_select --logical_table "Logs" --offset "-5" --shard_key "timestamp"
+#:000000000000000 output(5)
+#<000000000000000 rc=0

  Modified: test/command/suite/sharding/logical_select/offset/negative.test (+2 -0)
===================================================================
--- test/command/suite/sharding/logical_select/offset/negative.test    2017-12-06 14:06:32 +0900 (ffbbcd99e)
+++ test/command/suite/sharding/logical_select/offset/negative.test    2017-12-06 14:28:14 +0900 (f26891a2e)
@@ -68,5 +68,7 @@ load --table Logs_20150205
 }
 ]
 
+#@collect-query-log true
 logical_select Logs timestamp \
   --offset -5
+#@collect-query-log false

  Modified: test/command/suite/sharding/logical_select/offset/positive.expected (+3 -0)
===================================================================
--- test/command/suite/sharding/logical_select/offset/positive.expected    2017-12-06 14:06:32 +0900 (980690b4d)
+++ test/command/suite/sharding/logical_select/offset/positive.expected    2017-12-06 14:28:14 +0900 (8cd7f4e10)
@@ -137,3 +137,6 @@ logical_select Logs timestamp   --offset 3
     ]
   ]
 ]
+#>logical_select --logical_table "Logs" --offset "3" --shard_key "timestamp"
+#:000000000000000 output(6)
+#<000000000000000 rc=0

  Modified: test/command/suite/sharding/logical_select/offset/positive.test (+2 -0)
===================================================================
--- test/command/suite/sharding/logical_select/offset/positive.test    2017-12-06 14:06:32 +0900 (625ae2786)
+++ test/command/suite/sharding/logical_select/offset/positive.test    2017-12-06 14:28:14 +0900 (66fc2fc9c)
@@ -68,5 +68,7 @@ load --table Logs_20150205
 }
 ]
 
+#@collect-query-log true
 logical_select Logs timestamp \
   --offset 3
+#@collect-query-log false

  Modified: test/command/suite/sharding/logical_select/offset/with_limit.expected (+3 -0)
===================================================================
--- test/command/suite/sharding/logical_select/offset/with_limit.expected    2017-12-06 14:06:32 +0900 (a54eedd39)
+++ test/command/suite/sharding/logical_select/offset/with_limit.expected    2017-12-06 14:28:14 +0900 (5770a4a16)
@@ -117,3 +117,6 @@ logical_select Logs timestamp   --offset 3   --limit 2
     ]
   ]
 ]
+#>logical_select --limit "2" --logical_table "Logs" --offset "3" --shard_key "timestamp"
+#:000000000000000 output(2)
+#<000000000000000 rc=0

  Modified: test/command/suite/sharding/logical_select/offset/with_limit.test (+2 -0)
===================================================================
--- test/command/suite/sharding/logical_select/offset/with_limit.test    2017-12-06 14:06:32 +0900 (e6dd3e1d2)
+++ test/command/suite/sharding/logical_select/offset/with_limit.test    2017-12-06 14:28:14 +0900 (6683bd485)
@@ -68,6 +68,8 @@ load --table Logs_20150205
 }
 ]
 
+#@collect-query-log true
 logical_select Logs timestamp \
   --offset 3 \
   --limit 2
+#@collect-query-log false
-------------- next part --------------
HTML����������������������������...
URL: https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20171206/b2cec511/attachment-0001.htm 



More information about the Groonga-commit mailing list
Back to archive index