Commit 17326e55d5dbbd8a64e51a54e781066b0af60426

Authored by Andrew Kane
1 parent e6e032f9

Prefer mode: :async in docs

Showing 2 changed files with 15 additions and 10 deletions   Show diff stats
@@ -1453,7 +1453,7 @@ end @@ -1453,7 +1453,7 @@ end
1453 For large data sets, you can use background jobs to parallelize reindexing. 1453 For large data sets, you can use background jobs to parallelize reindexing.
1454 1454
1455 ```ruby 1455 ```ruby
1456 -Product.reindex(async: true) 1456 +Product.reindex(mode: :async)
1457 # {index_name: "products_production_20170111210018065"} 1457 # {index_name: "products_production_20170111210018065"}
1458 ``` 1458 ```
1459 1459
@@ -1478,7 +1478,7 @@ Searchkick.reindex_status(index_name) @@ -1478,7 +1478,7 @@ Searchkick.reindex_status(index_name)
1478 You can also have Searchkick wait for reindexing to complete 1478 You can also have Searchkick wait for reindexing to complete
1479 1479
1480 ```ruby 1480 ```ruby
1481 -Product.reindex(async: {wait: true}) 1481 +Product.reindex(mode: :async, wait: true)
1482 ``` 1482 ```
1483 1483
1484 You can use [ActiveJob::TrafficControl](https://github.com/nickelser/activejob-traffic_control) to control concurrency. Install the gem: 1484 You can use [ActiveJob::TrafficControl](https://github.com/nickelser/activejob-traffic_control) to control concurrency. Install the gem:
@@ -1504,7 +1504,7 @@ This will allow only 3 jobs to run at once. @@ -1504,7 +1504,7 @@ This will allow only 3 jobs to run at once.
1504 You can specify a longer refresh interval while reindexing to increase performance. 1504 You can specify a longer refresh interval while reindexing to increase performance.
1505 1505
1506 ```ruby 1506 ```ruby
1507 -Product.reindex(async: true, refresh_interval: "30s") 1507 +Product.reindex(mode: :async, refresh_interval: "30s")
1508 ``` 1508 ```
1509 1509
1510 **Note:** This only makes a noticable difference with parallel reindexing. 1510 **Note:** This only makes a noticable difference with parallel reindexing.
test/reindex_test.rb
@@ -161,7 +161,7 @@ class ReindexTest < Minitest::Test @@ -161,7 +161,7 @@ class ReindexTest < Minitest::Test
161 store_names ["Product A"], reindex: false 161 store_names ["Product A"], reindex: false
162 reindex = nil 162 reindex = nil
163 perform_enqueued_jobs do 163 perform_enqueued_jobs do
164 - reindex = Product.reindex(async: true) 164 + reindex = Product.reindex(mode: :async)
165 assert_search "product", [], conversions: false 165 assert_search "product", [], conversions: false
166 end 166 end
167 167
@@ -180,7 +180,7 @@ class ReindexTest < Minitest::Test @@ -180,7 +180,7 @@ class ReindexTest < Minitest::Test
180 180
181 reindex = nil 181 reindex = nil
182 perform_enqueued_jobs do 182 perform_enqueued_jobs do
183 - reindex = Product.reindex(async: true) 183 + reindex = Product.reindex(mode: :async)
184 end 184 end
185 185
186 index = Searchkick::Index.new(reindex[:index_name]) 186 index = Searchkick::Index.new(reindex[:index_name])
@@ -194,7 +194,7 @@ class ReindexTest < Minitest::Test @@ -194,7 +194,7 @@ class ReindexTest < Minitest::Test
194 store_names ["Product A"], reindex: false 194 store_names ["Product A"], reindex: false
195 195
196 capture_io do 196 capture_io do
197 - Product.reindex(async: {wait: true}) 197 + Product.reindex(mode: :async, wait: true)
198 end 198 end
199 199
200 assert_search "product", ["Product A"] 200 assert_search "product", ["Product A"]
@@ -205,7 +205,7 @@ class ReindexTest < Minitest::Test @@ -205,7 +205,7 @@ class ReindexTest < Minitest::Test
205 205
206 reindex = nil 206 reindex = nil
207 perform_enqueued_jobs do 207 perform_enqueued_jobs do
208 - reindex = Sku.reindex(async: true) 208 + reindex = Sku.reindex(mode: :async)
209 assert_search "sku", [], conversions: false 209 assert_search "sku", [], conversions: false
210 end 210 end
211 211
@@ -217,7 +217,7 @@ class ReindexTest < Minitest::Test @@ -217,7 +217,7 @@ class ReindexTest < Minitest::Test
217 end 217 end
218 218
219 def test_full_refresh_interval 219 def test_full_refresh_interval
220 - reindex = Product.reindex(refresh_interval: "30s", async: true, import: false) 220 + reindex = Product.reindex(refresh_interval: "30s", mode: :async, import: false)
221 index = Searchkick::Index.new(reindex[:index_name]) 221 index = Searchkick::Index.new(reindex[:index_name])
222 assert_nil Product.search_index.refresh_interval 222 assert_nil Product.search_index.refresh_interval
223 assert_equal "30s", index.refresh_interval 223 assert_equal "30s", index.refresh_interval
@@ -244,10 +244,15 @@ class ReindexTest < Minitest::Test @@ -244,10 +244,15 @@ class ReindexTest < Minitest::Test
244 244
245 def test_full_partial_async 245 def test_full_partial_async
246 store_names ["Product A"] 246 store_names ["Product A"]
  247 + Product.reindex(:search_name, mode: :async)
  248 + assert_search "product", ["Product A"]
  249 + end
  250 +
  251 + def test_wait_not_async
247 error = assert_raises(ArgumentError) do 252 error = assert_raises(ArgumentError) do
248 - Product.reindex(:search_name, async: true) 253 + Product.reindex(wait: false)
249 end 254 end
250 - assert_match "unsupported keywords: :async", error.message 255 + assert_equal "wait only available in :async mode", error.message
251 end 256 end
252 257
253 def test_callbacks_false 258 def test_callbacks_false