bulk_dependency_eraser 4.2.2 → 4.2.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8efe5bca3c57d245dc00fcb0d04a57bab5dc9eb19d81e55be43a56e6adb7752c
4
- data.tar.gz: b6b2d2bf30e7dd964d5032bd61ed1e57f820bec667dd3435c79567e24d6a0265
3
+ metadata.gz: 5409fc52fbc918546360e196bd06c0be4837f0aa848af8a99aeed4015219f0e7
4
+ data.tar.gz: d3818d4f8c8e2a3be0c81c5e3b37bc0295d2e7ca077c08a45e7ae143975f2f3e
5
5
  SHA512:
6
- metadata.gz: b7981de1665f8c6c7f7c2054c446a09edaa6add210481e091d2034f086eb9703bd619b23de29d03777bb8445b9fc7902329af8ce262204510e0e7695ebe380be
7
- data.tar.gz: 42cfbfdb8ad934d9b4d1a806e9da158e82a2ddb2b38cbee790423c5ff046aa3517370f12bd6e5cad00f6ec7db57fb6ee3082bbcb6faefadc866f6332919a6143
6
+ metadata.gz: 14d334bd9f2baf4008a653c8f19b0544bc32e02e36dea965f6fa08ad3f317ca4e3bff5eb2417aeb70549a54d109341884d87c9af7591c2a258b018d6444d993d
7
+ data.tar.gz: 1f84b22cd3cfadf48d5450225c4cc3cbd4e3302acf15cd6c357904538b7427631a5d735621b3ecf4e574a31184525d9601630c9fd8c939d9e7f10fea6060e573
@@ -192,12 +192,16 @@ module BulkDependencyEraser
192
192
  # If the query has a limit, then we don't want to clobber with batching.
193
193
  if batching_disabled? || !query.where({}).limit_value.nil?
194
194
  # query without batching
195
- query_results = query.pluck(*columns)
195
+ # query_results = query.pluck(*columns)
196
+ query_results = query.pluck(*columns.collect{ |c| "#{query.klass.table_name}.#{c}"})
196
197
  elsif opts_c.disable_batch_ordering || opts_c.disable_batch_ordering_for_klasses.include?(current_klass_name)
197
198
  # query with orderless batching
198
199
  offset = 0
199
200
  loop do
200
- new_query_results = query.offset(offset).limit(batch_size).pluck(*columns)
201
+ # This use-case didn't work. Rails converts the query filter to a left_outer_join, and can't then pull the CTID column in some use-cases
202
+ # new_query_results = query.offset(offset).limit(batch_size).pluck(*columns)
203
+ # This implementation does work. Prevents rails ORM from converting to a join
204
+ new_query_results = query.offset(offset).limit(batch_size).pluck(*columns.collect{ |c| "#{query.klass.table_name}.#{c}"})
201
205
  query_results += new_query_results
202
206
 
203
207
  break if new_query_results.size < batch_size
@@ -208,7 +212,8 @@ module BulkDependencyEraser
208
212
  else
209
213
  # query with ordered batching
210
214
  query.in_batches(of: batch_size) do |subset_query|
211
- query_results += subset_query.pluck(*columns)
215
+ # query_results += subset_query.pluck(*columns)
216
+ query_results += subset_query.pluck(*columns.collect{ |c| "#{query.klass.table_name}.#{c}"})
212
217
  end
213
218
  end
214
219
  end
@@ -1,3 +1,3 @@
1
1
  module BulkDependencyEraser
2
- VERSION = "4.2.2".freeze
2
+ VERSION = "4.2.3".freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bulk_dependency_eraser
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.2
4
+ version: 4.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - benjamin.dana.software.dev@gmail.com