fluent-plugin-droonga 0.9.0 → 0.9.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +3 -0
- data/Gemfile +8 -1
- data/fluent-plugin-droonga.gemspec +2 -2
- data/lib/droonga/adapter.rb +39 -0
- data/lib/droonga/adapter_runner.rb +99 -0
- data/lib/droonga/catalog/base.rb +11 -11
- data/lib/droonga/catalog/dataset.rb +54 -0
- data/lib/droonga/catalog/version1.rb +1 -1
- data/lib/droonga/collector.rb +5 -7
- data/lib/droonga/collector_plugin.rb +7 -7
- data/lib/droonga/command.rb +36 -0
- data/lib/droonga/{plugin/input_adapter/crud.rb → command_repository.rb} +14 -8
- data/lib/droonga/dispatcher.rb +86 -54
- data/lib/droonga/distributed_command_planner.rb +183 -0
- data/lib/droonga/distributor.rb +43 -17
- data/lib/droonga/handler.rb +13 -72
- data/lib/droonga/handler_message.rb +5 -5
- data/lib/droonga/handler_messenger.rb +4 -1
- data/lib/droonga/handler_plugin.rb +2 -2
- data/lib/droonga/handler_runner.rb +104 -0
- data/lib/droonga/input_message.rb +4 -4
- data/lib/droonga/legacy_pluggable.rb +66 -0
- data/lib/droonga/{input_adapter.rb → legacy_plugin.rb} +27 -22
- data/lib/droonga/{plugin_repository.rb → legacy_plugin_repository.rb} +2 -4
- data/lib/droonga/message_matcher.rb +101 -0
- data/lib/droonga/{input_adapter_plugin.rb → planner.rb} +14 -10
- data/lib/droonga/planner_plugin.rb +54 -0
- data/lib/droonga/pluggable.rb +9 -45
- data/lib/droonga/plugin.rb +9 -33
- data/lib/droonga/plugin/collector/basic.rb +2 -0
- data/lib/droonga/plugin/collector/search.rb +31 -37
- data/lib/droonga/plugin/{handler/groonga/table_remove.rb → metadata/adapter_message.rb} +23 -18
- data/lib/droonga/plugin/{handler/search.rb → metadata/handler_action.rb} +19 -15
- data/lib/droonga/plugin/metadata/input_message.rb +39 -0
- data/lib/droonga/plugin/planner/crud.rb +49 -0
- data/lib/droonga/plugin/{distributor → planner}/distributed_search_planner.rb +62 -70
- data/lib/droonga/plugin/{distributor → planner}/groonga.rb +11 -32
- data/lib/droonga/plugin/{distributor → planner}/search.rb +5 -5
- data/lib/droonga/plugin/{distributor → planner}/watch.rb +15 -6
- data/lib/droonga/plugin_loader.rb +10 -0
- data/lib/droonga/plugin_registerable.rb +34 -10
- data/lib/droonga/plugin_registry.rb +58 -0
- data/lib/droonga/plugins/crud.rb +124 -0
- data/lib/droonga/plugins/error.rb +50 -0
- data/lib/droonga/{output_adapter_plugin.rb → plugins/groonga.rb} +9 -13
- data/lib/droonga/plugins/groonga/column_create.rb +123 -0
- data/lib/droonga/plugins/groonga/generic_command.rb +65 -0
- data/lib/droonga/{plugin/output_adapter/groonga.rb → plugins/groonga/generic_response.rb} +16 -15
- data/lib/droonga/plugins/groonga/select.rb +124 -0
- data/lib/droonga/plugins/groonga/table_create.rb +106 -0
- data/lib/droonga/plugins/groonga/table_remove.rb +57 -0
- data/lib/droonga/plugins/search.rb +40 -0
- data/lib/droonga/plugins/watch.rb +156 -0
- data/lib/droonga/processor.rb +8 -10
- data/lib/droonga/searcher.rb +14 -4
- data/lib/droonga/searcher/mecab_filter.rb +67 -0
- data/lib/droonga/session.rb +5 -5
- data/lib/droonga/test.rb +1 -1
- data/lib/droonga/test/stub_handler_message.rb +1 -1
- data/lib/droonga/test/{stub_distributor.rb → stub_planner.rb} +1 -1
- data/lib/droonga/worker.rb +7 -8
- data/lib/fluent/plugin/out_droonga.rb +0 -1
- data/sample/cluster/catalog.json +2 -4
- data/sample/mecab_filter/data.grn +7 -0
- data/sample/mecab_filter/ddl.grn +7 -0
- data/sample/mecab_filter/search_with_mecab_filter.json +21 -0
- data/sample/mecab_filter/search_without_mecab_filter.json +21 -0
- data/test/command/config/default/catalog.json +2 -5
- data/test/command/suite/search/error/no-query.expected +13 -0
- data/test/command/suite/search/error/no-query.test +7 -0
- data/test/command/suite/search/error/unknown-source.expected +26 -0
- data/test/command/suite/watch/subscribe.expected +3 -3
- data/test/command/suite/watch/unsubscribe.expected +3 -3
- data/test/unit/catalog/test_dataset.rb +385 -0
- data/test/unit/catalog/test_version1.rb +111 -45
- data/test/unit/fixtures/catalog/version1.json +0 -3
- data/test/unit/helper.rb +2 -1
- data/test/unit/helper/distributed_search_planner_helper.rb +83 -0
- data/test/unit/plugin/collector/test_basic.rb +233 -376
- data/test/unit/plugin/collector/test_search.rb +8 -17
- data/test/unit/plugin/planner/search_planner/test_basic.rb +120 -0
- data/test/unit/plugin/planner/search_planner/test_group_by.rb +573 -0
- data/test/unit/plugin/planner/search_planner/test_output.rb +388 -0
- data/test/unit/plugin/planner/search_planner/test_sort_by.rb +938 -0
- data/test/unit/plugin/{distributor → planner}/test_search.rb +20 -75
- data/test/unit/{plugin/handler → plugins/crud}/test_add.rb +11 -11
- data/test/unit/plugins/groonga/select/test_adapter_input.rb +213 -0
- data/test/unit/{plugin/output_adapter/groonga/test_select.rb → plugins/groonga/select/test_adapter_output.rb} +12 -13
- data/test/unit/{plugin/handler → plugins}/groonga/test_column_create.rb +20 -5
- data/test/unit/{plugin/handler → plugins}/groonga/test_table_create.rb +5 -0
- data/test/unit/{plugin/handler → plugins}/groonga/test_table_remove.rb +8 -1
- data/test/unit/{plugin/handler → plugins}/test_groonga.rb +5 -5
- data/test/unit/{plugin/handler → plugins}/test_search.rb +21 -5
- data/test/unit/{plugin/handler → plugins}/test_watch.rb +29 -10
- data/{lib/droonga/command_mapper.rb → test/unit/test_command_repository.rb} +16 -22
- data/test/unit/{test_plugin.rb → test_legacy_plugin.rb} +3 -3
- data/test/unit/{test_plugin_repository.rb → test_legacy_plugin_repository.rb} +3 -3
- data/test/unit/test_message_matcher.rb +137 -0
- metadata +86 -66
- data/bin/grn2jsons +0 -82
- data/lib/droonga/distribution_planner.rb +0 -76
- data/lib/droonga/distributor_plugin.rb +0 -95
- data/lib/droonga/output_adapter.rb +0 -53
- data/lib/droonga/plugin/collector/groonga.rb +0 -83
- data/lib/droonga/plugin/distributor/crud.rb +0 -84
- data/lib/droonga/plugin/handler/add.rb +0 -109
- data/lib/droonga/plugin/handler/forward.rb +0 -75
- data/lib/droonga/plugin/handler/groonga.rb +0 -99
- data/lib/droonga/plugin/handler/groonga/column_create.rb +0 -106
- data/lib/droonga/plugin/handler/groonga/table_create.rb +0 -91
- data/lib/droonga/plugin/handler/watch.rb +0 -108
- data/lib/droonga/plugin/input_adapter/groonga.rb +0 -49
- data/lib/droonga/plugin/input_adapter/groonga/select.rb +0 -63
- data/lib/droonga/plugin/output_adapter/crud.rb +0 -51
- data/lib/droonga/plugin/output_adapter/groonga/select.rb +0 -54
- data/lib/groonga_command_converter.rb +0 -143
- data/sample/fluentd.conf +0 -8
- data/test/unit/plugin/distributor/test_search_planner.rb +0 -1102
- data/test/unit/plugin/input_adapter/groonga/test_select.rb +0 -248
- data/test/unit/test_command_mapper.rb +0 -44
- data/test/unit/test_groonga_command_converter.rb +0 -242
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fluent-plugin-droonga
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.9.
|
|
4
|
+
version: 0.9.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Droonga Project
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2014-
|
|
11
|
+
date: 2014-02-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: fluentd
|
|
@@ -181,8 +181,7 @@ dependencies:
|
|
|
181
181
|
description: Droonga(distributed Groonga) plugin for Fluent event collector
|
|
182
182
|
email:
|
|
183
183
|
- droonga@groonga.org
|
|
184
|
-
executables:
|
|
185
|
-
- grn2jsons
|
|
184
|
+
executables: []
|
|
186
185
|
extensions: []
|
|
187
186
|
extra_rdoc_files: []
|
|
188
187
|
files:
|
|
@@ -199,21 +198,23 @@ files:
|
|
|
199
198
|
- benchmark/watch/benchmark-notify.sh
|
|
200
199
|
- benchmark/watch/benchmark-publish.rb
|
|
201
200
|
- benchmark/watch/benchmark-scan.rb
|
|
202
|
-
- bin/grn2jsons
|
|
203
201
|
- doc/text/news.md
|
|
204
202
|
- fluent-plugin-droonga.gemspec
|
|
203
|
+
- lib/droonga/adapter.rb
|
|
204
|
+
- lib/droonga/adapter_runner.rb
|
|
205
205
|
- lib/droonga/catalog.rb
|
|
206
206
|
- lib/droonga/catalog/base.rb
|
|
207
|
+
- lib/droonga/catalog/dataset.rb
|
|
207
208
|
- lib/droonga/catalog/version1.rb
|
|
208
209
|
- lib/droonga/catalog_loader.rb
|
|
209
210
|
- lib/droonga/catalog_observer.rb
|
|
210
211
|
- lib/droonga/collector.rb
|
|
211
212
|
- lib/droonga/collector_plugin.rb
|
|
212
|
-
- lib/droonga/
|
|
213
|
+
- lib/droonga/command.rb
|
|
214
|
+
- lib/droonga/command_repository.rb
|
|
213
215
|
- lib/droonga/dispatcher.rb
|
|
214
|
-
- lib/droonga/
|
|
216
|
+
- lib/droonga/distributed_command_planner.rb
|
|
215
217
|
- lib/droonga/distributor.rb
|
|
216
|
-
- lib/droonga/distributor_plugin.rb
|
|
217
218
|
- lib/droonga/engine.rb
|
|
218
219
|
- lib/droonga/event_loop.rb
|
|
219
220
|
- lib/droonga/farm.rb
|
|
@@ -223,65 +224,70 @@ files:
|
|
|
223
224
|
- lib/droonga/handler_message.rb
|
|
224
225
|
- lib/droonga/handler_messenger.rb
|
|
225
226
|
- lib/droonga/handler_plugin.rb
|
|
226
|
-
- lib/droonga/
|
|
227
|
-
- lib/droonga/input_adapter_plugin.rb
|
|
227
|
+
- lib/droonga/handler_runner.rb
|
|
228
228
|
- lib/droonga/input_message.rb
|
|
229
|
+
- lib/droonga/legacy_pluggable.rb
|
|
230
|
+
- lib/droonga/legacy_plugin.rb
|
|
231
|
+
- lib/droonga/legacy_plugin_repository.rb
|
|
229
232
|
- lib/droonga/logger.rb
|
|
233
|
+
- lib/droonga/message_matcher.rb
|
|
230
234
|
- lib/droonga/message_pack_packer.rb
|
|
231
235
|
- lib/droonga/message_processing_error.rb
|
|
232
236
|
- lib/droonga/message_pusher.rb
|
|
233
237
|
- lib/droonga/message_receiver.rb
|
|
234
|
-
- lib/droonga/output_adapter.rb
|
|
235
|
-
- lib/droonga/output_adapter_plugin.rb
|
|
236
238
|
- lib/droonga/output_message.rb
|
|
237
239
|
- lib/droonga/partition.rb
|
|
240
|
+
- lib/droonga/planner.rb
|
|
241
|
+
- lib/droonga/planner_plugin.rb
|
|
238
242
|
- lib/droonga/pluggable.rb
|
|
239
243
|
- lib/droonga/plugin.rb
|
|
240
244
|
- lib/droonga/plugin/collector/basic.rb
|
|
241
|
-
- lib/droonga/plugin/collector/groonga.rb
|
|
242
245
|
- lib/droonga/plugin/collector/search.rb
|
|
243
|
-
- lib/droonga/plugin/
|
|
244
|
-
- lib/droonga/plugin/
|
|
245
|
-
- lib/droonga/plugin/
|
|
246
|
-
- lib/droonga/plugin/
|
|
247
|
-
- lib/droonga/plugin/
|
|
248
|
-
- lib/droonga/plugin/
|
|
249
|
-
- lib/droonga/plugin/
|
|
250
|
-
- lib/droonga/plugin/
|
|
251
|
-
- lib/droonga/plugin/handler/groonga/column_create.rb
|
|
252
|
-
- lib/droonga/plugin/handler/groonga/table_create.rb
|
|
253
|
-
- lib/droonga/plugin/handler/groonga/table_remove.rb
|
|
254
|
-
- lib/droonga/plugin/handler/search.rb
|
|
255
|
-
- lib/droonga/plugin/handler/watch.rb
|
|
256
|
-
- lib/droonga/plugin/input_adapter/crud.rb
|
|
257
|
-
- lib/droonga/plugin/input_adapter/groonga.rb
|
|
258
|
-
- lib/droonga/plugin/input_adapter/groonga/select.rb
|
|
259
|
-
- lib/droonga/plugin/output_adapter/crud.rb
|
|
260
|
-
- lib/droonga/plugin/output_adapter/groonga.rb
|
|
261
|
-
- lib/droonga/plugin/output_adapter/groonga/select.rb
|
|
246
|
+
- lib/droonga/plugin/metadata/adapter_message.rb
|
|
247
|
+
- lib/droonga/plugin/metadata/handler_action.rb
|
|
248
|
+
- lib/droonga/plugin/metadata/input_message.rb
|
|
249
|
+
- lib/droonga/plugin/planner/crud.rb
|
|
250
|
+
- lib/droonga/plugin/planner/distributed_search_planner.rb
|
|
251
|
+
- lib/droonga/plugin/planner/groonga.rb
|
|
252
|
+
- lib/droonga/plugin/planner/search.rb
|
|
253
|
+
- lib/droonga/plugin/planner/watch.rb
|
|
262
254
|
- lib/droonga/plugin_loader.rb
|
|
263
255
|
- lib/droonga/plugin_registerable.rb
|
|
264
|
-
- lib/droonga/
|
|
256
|
+
- lib/droonga/plugin_registry.rb
|
|
257
|
+
- lib/droonga/plugins/crud.rb
|
|
258
|
+
- lib/droonga/plugins/error.rb
|
|
259
|
+
- lib/droonga/plugins/groonga.rb
|
|
260
|
+
- lib/droonga/plugins/groonga/column_create.rb
|
|
261
|
+
- lib/droonga/plugins/groonga/generic_command.rb
|
|
262
|
+
- lib/droonga/plugins/groonga/generic_response.rb
|
|
263
|
+
- lib/droonga/plugins/groonga/select.rb
|
|
264
|
+
- lib/droonga/plugins/groonga/table_create.rb
|
|
265
|
+
- lib/droonga/plugins/groonga/table_remove.rb
|
|
266
|
+
- lib/droonga/plugins/search.rb
|
|
267
|
+
- lib/droonga/plugins/watch.rb
|
|
265
268
|
- lib/droonga/processor.rb
|
|
266
269
|
- lib/droonga/replier.rb
|
|
267
270
|
- lib/droonga/searcher.rb
|
|
271
|
+
- lib/droonga/searcher/mecab_filter.rb
|
|
268
272
|
- lib/droonga/server.rb
|
|
269
273
|
- lib/droonga/session.rb
|
|
270
274
|
- lib/droonga/sweeper.rb
|
|
271
275
|
- lib/droonga/test.rb
|
|
272
|
-
- lib/droonga/test/stub_distributor.rb
|
|
273
276
|
- lib/droonga/test/stub_handler.rb
|
|
274
277
|
- lib/droonga/test/stub_handler_message.rb
|
|
275
278
|
- lib/droonga/test/stub_handler_messenger.rb
|
|
279
|
+
- lib/droonga/test/stub_planner.rb
|
|
276
280
|
- lib/droonga/time_formatter.rb
|
|
277
281
|
- lib/droonga/watch_schema.rb
|
|
278
282
|
- lib/droonga/watcher.rb
|
|
279
283
|
- lib/droonga/worker.rb
|
|
280
284
|
- lib/fluent/plugin/out_droonga.rb
|
|
281
|
-
- lib/groonga_command_converter.rb
|
|
282
285
|
- sample/cluster/catalog.json
|
|
283
286
|
- sample/cluster/fluentd.conf
|
|
284
|
-
- sample/
|
|
287
|
+
- sample/mecab_filter/data.grn
|
|
288
|
+
- sample/mecab_filter/ddl.grn
|
|
289
|
+
- sample/mecab_filter/search_with_mecab_filter.json
|
|
290
|
+
- sample/mecab_filter/search_without_mecab_filter.json
|
|
285
291
|
- test/command/config/default/catalog.json
|
|
286
292
|
- test/command/config/default/fluentd.conf
|
|
287
293
|
- test/command/fixture/documents.jsons
|
|
@@ -347,6 +353,8 @@ files:
|
|
|
347
353
|
- test/command/suite/search/error/deeply-cyclic-source.test
|
|
348
354
|
- test/command/suite/search/error/missing-source-parameter.expected
|
|
349
355
|
- test/command/suite/search/error/missing-source-parameter.test
|
|
356
|
+
- test/command/suite/search/error/no-query.expected
|
|
357
|
+
- test/command/suite/search/error/no-query.test
|
|
350
358
|
- test/command/suite/search/error/unknown-source.expected
|
|
351
359
|
- test/command/suite/search/error/unknown-source.test
|
|
352
360
|
- test/command/suite/search/group/count.expected
|
|
@@ -386,6 +394,7 @@ files:
|
|
|
386
394
|
- test/performance/watch/feed.json
|
|
387
395
|
- test/performance/watch/fluentd.conf
|
|
388
396
|
- test/performance/watch/subscribe.json
|
|
397
|
+
- test/unit/catalog/test_dataset.rb
|
|
389
398
|
- test/unit/catalog/test_version1.rb
|
|
390
399
|
- test/unit/fixtures/array.grn
|
|
391
400
|
- test/unit/fixtures/catalog/version1.json
|
|
@@ -393,6 +402,7 @@ files:
|
|
|
393
402
|
- test/unit/fixtures/reference/array.grn
|
|
394
403
|
- test/unit/fixtures/reference/hash.grn
|
|
395
404
|
- test/unit/helper.rb
|
|
405
|
+
- test/unit/helper/distributed_search_planner_helper.rb
|
|
396
406
|
- test/unit/helper/fixture.rb
|
|
397
407
|
- test/unit/helper/plugin_helper.rb
|
|
398
408
|
- test/unit/helper/sandbox.rb
|
|
@@ -400,24 +410,27 @@ files:
|
|
|
400
410
|
- test/unit/helper/watch_helper.rb
|
|
401
411
|
- test/unit/plugin/collector/test_basic.rb
|
|
402
412
|
- test/unit/plugin/collector/test_search.rb
|
|
403
|
-
- test/unit/plugin/
|
|
404
|
-
- test/unit/plugin/
|
|
405
|
-
- test/unit/plugin/
|
|
406
|
-
- test/unit/plugin/
|
|
407
|
-
- test/unit/plugin/
|
|
408
|
-
- test/unit/
|
|
409
|
-
- test/unit/
|
|
410
|
-
- test/unit/
|
|
411
|
-
- test/unit/
|
|
412
|
-
- test/unit/
|
|
413
|
-
- test/unit/
|
|
413
|
+
- test/unit/plugin/planner/search_planner/test_basic.rb
|
|
414
|
+
- test/unit/plugin/planner/search_planner/test_group_by.rb
|
|
415
|
+
- test/unit/plugin/planner/search_planner/test_output.rb
|
|
416
|
+
- test/unit/plugin/planner/search_planner/test_sort_by.rb
|
|
417
|
+
- test/unit/plugin/planner/test_search.rb
|
|
418
|
+
- test/unit/plugins/crud/test_add.rb
|
|
419
|
+
- test/unit/plugins/groonga/select/test_adapter_input.rb
|
|
420
|
+
- test/unit/plugins/groonga/select/test_adapter_output.rb
|
|
421
|
+
- test/unit/plugins/groonga/test_column_create.rb
|
|
422
|
+
- test/unit/plugins/groonga/test_table_create.rb
|
|
423
|
+
- test/unit/plugins/groonga/test_table_remove.rb
|
|
424
|
+
- test/unit/plugins/test_groonga.rb
|
|
425
|
+
- test/unit/plugins/test_search.rb
|
|
426
|
+
- test/unit/plugins/test_watch.rb
|
|
414
427
|
- test/unit/run-test.rb
|
|
415
|
-
- test/unit/
|
|
416
|
-
- test/unit/
|
|
428
|
+
- test/unit/test_command_repository.rb
|
|
429
|
+
- test/unit/test_legacy_plugin.rb
|
|
430
|
+
- test/unit/test_legacy_plugin_repository.rb
|
|
431
|
+
- test/unit/test_message_matcher.rb
|
|
417
432
|
- test/unit/test_message_pack_packer.rb
|
|
418
433
|
- test/unit/test_output.rb
|
|
419
|
-
- test/unit/test_plugin.rb
|
|
420
|
-
- test/unit/test_plugin_repository.rb
|
|
421
434
|
- test/unit/test_sweeper.rb
|
|
422
435
|
- test/unit/test_time_formatter.rb
|
|
423
436
|
- test/unit/test_watch_schema.rb
|
|
@@ -511,6 +524,8 @@ test_files:
|
|
|
511
524
|
- test/command/suite/search/error/deeply-cyclic-source.test
|
|
512
525
|
- test/command/suite/search/error/missing-source-parameter.expected
|
|
513
526
|
- test/command/suite/search/error/missing-source-parameter.test
|
|
527
|
+
- test/command/suite/search/error/no-query.expected
|
|
528
|
+
- test/command/suite/search/error/no-query.test
|
|
514
529
|
- test/command/suite/search/error/unknown-source.expected
|
|
515
530
|
- test/command/suite/search/error/unknown-source.test
|
|
516
531
|
- test/command/suite/search/group/count.expected
|
|
@@ -550,6 +565,7 @@ test_files:
|
|
|
550
565
|
- test/performance/watch/feed.json
|
|
551
566
|
- test/performance/watch/fluentd.conf
|
|
552
567
|
- test/performance/watch/subscribe.json
|
|
568
|
+
- test/unit/catalog/test_dataset.rb
|
|
553
569
|
- test/unit/catalog/test_version1.rb
|
|
554
570
|
- test/unit/fixtures/array.grn
|
|
555
571
|
- test/unit/fixtures/catalog/version1.json
|
|
@@ -557,6 +573,7 @@ test_files:
|
|
|
557
573
|
- test/unit/fixtures/reference/array.grn
|
|
558
574
|
- test/unit/fixtures/reference/hash.grn
|
|
559
575
|
- test/unit/helper.rb
|
|
576
|
+
- test/unit/helper/distributed_search_planner_helper.rb
|
|
560
577
|
- test/unit/helper/fixture.rb
|
|
561
578
|
- test/unit/helper/plugin_helper.rb
|
|
562
579
|
- test/unit/helper/sandbox.rb
|
|
@@ -564,24 +581,27 @@ test_files:
|
|
|
564
581
|
- test/unit/helper/watch_helper.rb
|
|
565
582
|
- test/unit/plugin/collector/test_basic.rb
|
|
566
583
|
- test/unit/plugin/collector/test_search.rb
|
|
567
|
-
- test/unit/plugin/
|
|
568
|
-
- test/unit/plugin/
|
|
569
|
-
- test/unit/plugin/
|
|
570
|
-
- test/unit/plugin/
|
|
571
|
-
- test/unit/plugin/
|
|
572
|
-
- test/unit/
|
|
573
|
-
- test/unit/
|
|
574
|
-
- test/unit/
|
|
575
|
-
- test/unit/
|
|
576
|
-
- test/unit/
|
|
577
|
-
- test/unit/
|
|
584
|
+
- test/unit/plugin/planner/search_planner/test_basic.rb
|
|
585
|
+
- test/unit/plugin/planner/search_planner/test_group_by.rb
|
|
586
|
+
- test/unit/plugin/planner/search_planner/test_output.rb
|
|
587
|
+
- test/unit/plugin/planner/search_planner/test_sort_by.rb
|
|
588
|
+
- test/unit/plugin/planner/test_search.rb
|
|
589
|
+
- test/unit/plugins/crud/test_add.rb
|
|
590
|
+
- test/unit/plugins/groonga/select/test_adapter_input.rb
|
|
591
|
+
- test/unit/plugins/groonga/select/test_adapter_output.rb
|
|
592
|
+
- test/unit/plugins/groonga/test_column_create.rb
|
|
593
|
+
- test/unit/plugins/groonga/test_table_create.rb
|
|
594
|
+
- test/unit/plugins/groonga/test_table_remove.rb
|
|
595
|
+
- test/unit/plugins/test_groonga.rb
|
|
596
|
+
- test/unit/plugins/test_search.rb
|
|
597
|
+
- test/unit/plugins/test_watch.rb
|
|
578
598
|
- test/unit/run-test.rb
|
|
579
|
-
- test/unit/
|
|
580
|
-
- test/unit/
|
|
599
|
+
- test/unit/test_command_repository.rb
|
|
600
|
+
- test/unit/test_legacy_plugin.rb
|
|
601
|
+
- test/unit/test_legacy_plugin_repository.rb
|
|
602
|
+
- test/unit/test_message_matcher.rb
|
|
581
603
|
- test/unit/test_message_pack_packer.rb
|
|
582
604
|
- test/unit/test_output.rb
|
|
583
|
-
- test/unit/test_plugin.rb
|
|
584
|
-
- test/unit/test_plugin_repository.rb
|
|
585
605
|
- test/unit/test_sweeper.rb
|
|
586
606
|
- test/unit/test_time_formatter.rb
|
|
587
607
|
- test/unit/test_watch_schema.rb
|
data/bin/grn2jsons
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
|
-
# -*- coding: utf-8 -*-
|
|
3
|
-
#
|
|
4
|
-
# Copyright (C) 2013 Droonga Project
|
|
5
|
-
#
|
|
6
|
-
# This library is free software; you can redistribute it and/or
|
|
7
|
-
# modify it under the terms of the GNU Lesser General Public
|
|
8
|
-
# License version 2.1 as published by the Free Software Foundation.
|
|
9
|
-
#
|
|
10
|
-
# This library is distributed in the hope that it will be useful,
|
|
11
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
13
|
-
# Lesser General Public License for more details.
|
|
14
|
-
#
|
|
15
|
-
# You should have received a copy of the GNU Lesser General Public
|
|
16
|
-
# License along with this library; if not, write to the Free Software
|
|
17
|
-
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
18
|
-
|
|
19
|
-
require "groonga_command_converter"
|
|
20
|
-
require "json"
|
|
21
|
-
require "ostruct"
|
|
22
|
-
require "optparse"
|
|
23
|
-
|
|
24
|
-
options = OpenStruct.new
|
|
25
|
-
option_parser = OptionParser.new do |parser|
|
|
26
|
-
parser.on("-i=ID", "--id=ID",
|
|
27
|
-
"base id. (optional)") do |id|
|
|
28
|
-
options.id = id
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
parser.on("-d=DATE", "--date=DATE",
|
|
32
|
-
"date. (optional)") do |date|
|
|
33
|
-
options.date = date
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
parser.on("-r=REPLYTO", "--reply-to=REPLYTO",
|
|
37
|
-
"value of replyTo field.") do |reply_to|
|
|
38
|
-
options.reply_to = reply_to
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
parser.on("-s=DATASET", "--dataset=DATASET",
|
|
42
|
-
"dataset.") do |dataset|
|
|
43
|
-
options.dataset = dataset
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
args = option_parser.parse!(ARGV)
|
|
47
|
-
|
|
48
|
-
if options.dataset.nil?
|
|
49
|
-
raise "You must specify the name of the dataset by --dataset option."
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
convert_options = {
|
|
53
|
-
:id => options.id,
|
|
54
|
-
:date => options.date,
|
|
55
|
-
:reply_to => options.reply_to,
|
|
56
|
-
:dataset => options.dataset,
|
|
57
|
-
}
|
|
58
|
-
converter = Droonga::GroongaCommandConverter.new(convert_options)
|
|
59
|
-
|
|
60
|
-
source_file = args[0]
|
|
61
|
-
result_file = args[1]
|
|
62
|
-
|
|
63
|
-
input = nil
|
|
64
|
-
if source_file.nil?
|
|
65
|
-
input = STDIN.read
|
|
66
|
-
else
|
|
67
|
-
input = File.read(source_file)
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
result_file = args[1]
|
|
71
|
-
|
|
72
|
-
if result_file.nil?
|
|
73
|
-
converter.convert(input) do |command|
|
|
74
|
-
puts(JSON.generate(command))
|
|
75
|
-
end
|
|
76
|
-
else
|
|
77
|
-
File.open("w", result_file) do |file|
|
|
78
|
-
converter.convert(input) do |command|
|
|
79
|
-
file.puts(JSON.generate(command))
|
|
80
|
-
end
|
|
81
|
-
end
|
|
82
|
-
end
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
#
|
|
3
|
-
# Copyright (C) 2013 Droonga Project
|
|
4
|
-
#
|
|
5
|
-
# This library is free software; you can redistribute it and/or
|
|
6
|
-
# modify it under the terms of the GNU Lesser General Public
|
|
7
|
-
# License version 2.1 as published by the Free Software Foundation.
|
|
8
|
-
#
|
|
9
|
-
# This library is distributed in the hope that it will be useful,
|
|
10
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
-
# Lesser General Public License for more details.
|
|
13
|
-
#
|
|
14
|
-
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
-
# License along with this library; if not, write to the Free Software
|
|
16
|
-
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
17
|
-
|
|
18
|
-
require "tsort"
|
|
19
|
-
|
|
20
|
-
module Droonga
|
|
21
|
-
class DistributionPlanner
|
|
22
|
-
class UndefinedInputError < StandardError
|
|
23
|
-
attr_reader :input
|
|
24
|
-
def initialize(input)
|
|
25
|
-
@input = input
|
|
26
|
-
super("undefined input assigned: <#{input}>")
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
class CyclicComponentsError < StandardError
|
|
31
|
-
attr_reader :components
|
|
32
|
-
def initialize(components)
|
|
33
|
-
@components = components
|
|
34
|
-
super("cyclic components found: <#{components}>")
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
include TSort
|
|
39
|
-
|
|
40
|
-
def initialize(dispatcher, components)
|
|
41
|
-
@dispatcher = dispatcher
|
|
42
|
-
@components = components
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
def plan
|
|
46
|
-
@dependency = {}
|
|
47
|
-
@components.each do |component|
|
|
48
|
-
@dependency[component] = component["inputs"]
|
|
49
|
-
next unless component["outputs"]
|
|
50
|
-
component["outputs"].each do |output|
|
|
51
|
-
@dependency[output] = [component]
|
|
52
|
-
end
|
|
53
|
-
end
|
|
54
|
-
components = []
|
|
55
|
-
each_strongly_connected_component do |cs|
|
|
56
|
-
raise CyclicComponentsError.new(cs) if cs.size > 1
|
|
57
|
-
components.concat(cs) unless cs.first.is_a? String
|
|
58
|
-
end
|
|
59
|
-
components
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
private
|
|
63
|
-
def tsort_each_node(&block)
|
|
64
|
-
@dependency.each_key(&block)
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
def tsort_each_child(node, &block)
|
|
68
|
-
if node.is_a? String and @dependency[node].nil?
|
|
69
|
-
raise UndefinedInputError.new(node)
|
|
70
|
-
end
|
|
71
|
-
if @dependency[node]
|
|
72
|
-
@dependency[node].each(&block)
|
|
73
|
-
end
|
|
74
|
-
end
|
|
75
|
-
end
|
|
76
|
-
end
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
#
|
|
3
|
-
# Copyright (C) 2013 Droonga Project
|
|
4
|
-
#
|
|
5
|
-
# This library is free software; you can redistribute it and/or
|
|
6
|
-
# modify it under the terms of the GNU Lesser General Public
|
|
7
|
-
# License version 2.1 as published by the Free Software Foundation.
|
|
8
|
-
#
|
|
9
|
-
# This library is distributed in the hope that it will be useful,
|
|
10
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
-
# Lesser General Public License for more details.
|
|
13
|
-
#
|
|
14
|
-
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
-
# License along with this library; if not, write to the Free Software
|
|
16
|
-
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
17
|
-
|
|
18
|
-
require "droonga/plugin"
|
|
19
|
-
|
|
20
|
-
module Droonga
|
|
21
|
-
class DistributorPlugin < Plugin
|
|
22
|
-
extend PluginRegisterable
|
|
23
|
-
|
|
24
|
-
def initialize(distributor)
|
|
25
|
-
super()
|
|
26
|
-
@distributor = distributor
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def distribute(message)
|
|
30
|
-
@distributor.distribute(message)
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
def scatter_all(message, key)
|
|
34
|
-
messages = [reducer(message), gatherer(message), scatterer(message, key)]
|
|
35
|
-
distribute(messages)
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
def broadcast_all(message)
|
|
39
|
-
messages = [reducer(message), gatherer(message), broadcaster(message)]
|
|
40
|
-
distribute(messages)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
private
|
|
44
|
-
def process_error(command, error, arguments)
|
|
45
|
-
if error.is_a?(MessageProcessingError)
|
|
46
|
-
raise error
|
|
47
|
-
else
|
|
48
|
-
super
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
def scatterer(message, key)
|
|
53
|
-
{
|
|
54
|
-
"command" => message["type"],
|
|
55
|
-
"dataset" => message["dataset"],
|
|
56
|
-
"body" => message["body"],
|
|
57
|
-
"key" => key,
|
|
58
|
-
"type" => "scatter",
|
|
59
|
-
"outputs" => [],
|
|
60
|
-
"replica" => "all",
|
|
61
|
-
"post" => true
|
|
62
|
-
}
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
def broadcaster(message)
|
|
66
|
-
{
|
|
67
|
-
"command" => message["type"],
|
|
68
|
-
"dataset" => message["dataset"],
|
|
69
|
-
"body" => message["body"],
|
|
70
|
-
"type" => "broadcast",
|
|
71
|
-
"outputs" => [],
|
|
72
|
-
"replica" => "all",
|
|
73
|
-
"post" => true
|
|
74
|
-
}
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
def reducer(message)
|
|
78
|
-
{
|
|
79
|
-
"type" => "reduce",
|
|
80
|
-
"body" => {},
|
|
81
|
-
"inputs" => [],
|
|
82
|
-
"outputs" => [],
|
|
83
|
-
}
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
def gatherer(message)
|
|
87
|
-
{
|
|
88
|
-
"type" => "gather",
|
|
89
|
-
"body" => {},
|
|
90
|
-
"inputs" => [],
|
|
91
|
-
"post" => true,
|
|
92
|
-
}
|
|
93
|
-
end
|
|
94
|
-
end
|
|
95
|
-
end
|