activerecord-oracle_enhanced-adapter 5.2.0 → 5.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f5c56a2903f50e1f4d29ebce73f1d3ecfb8ccc20fdff51530358068c99e74182
4
- data.tar.gz: 1230afe509076a53d1f797ccbdba4d74b29647fdc263f60849d1ae34145e6116
3
+ metadata.gz: fa2bc4f36243959ebbe43179acbb417a7ee8c3256efa3a743b4fcdf6ceb35a42
4
+ data.tar.gz: 16d9bacff337f6634fb5d72e0d13f65dfc9b727ac95f757d3be1484ad6f66e2a
5
5
  SHA512:
6
- metadata.gz: ba4c22c74b3da5cd8768681df7c57aa0b07d1037d13efeecd3588a3487543f79b2d0eea2e7c0fe7fd947aa66d0f339c39ff263bf680831b603c74052fa38e990
7
- data.tar.gz: cc928edfef4189c8ce3ed0e1d1643b2b13369ef052467b21fa7223c03d4a31925b45572e3d60e2ec3b108d12365d601f3e17884eda599586cd869789841c4895
6
+ metadata.gz: 625e0fc67e187b681867359d4576491bbbf2eb14c70f4c455bfa926713aaed6bf1e452acf7a3806f05297eccd444326368c390be170033f0013758cd5c2538e9
7
+ data.tar.gz: 197b8c4ef15c5458e67d1a530ebfce8fa8b2a97f0ccad2037729d59cf6fd867f828303a07d6eef475b60afb4fc83d302fd29aa0f67387657cea441429789d2ab
data/History.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 5.2.1 / 2018-04-15
2
+
3
+ * Changes and bug fixes
4
+ * Memoize if the table needs to prefetch primary key[#1673 #1699 #1700]
5
+
1
6
  ## 5.2.0 / 2018-04-10
2
7
 
3
8
  * Major changes and fixes
data/VERSION CHANGED
@@ -1 +1 @@
1
- 5.2.0
1
+ 5.2.1
@@ -212,6 +212,7 @@ module ActiveRecord
212
212
  super(connection, logger, config)
213
213
  @statements = StatementPool.new(self.class.type_cast_config_to_integer(config[:statement_limit]))
214
214
  @enable_dbms_output = false
215
+ @do_not_prefetch_primary_key = {}
215
216
  end
216
217
 
217
218
  ADAPTER_NAME = "OracleEnhanced".freeze
@@ -427,8 +428,11 @@ module ActiveRecord
427
428
  def prefetch_primary_key?(table_name = nil)
428
429
  return true if table_name.nil?
429
430
  table_name = table_name.to_s
430
- owner, desc_table_name, db_link = @connection.describe(table_name)
431
- do_not_prefetch = !has_primary_key?(table_name, owner, desc_table_name, db_link) || has_primary_key_trigger?(table_name, owner, desc_table_name, db_link)
431
+ do_not_prefetch = @do_not_prefetch_primary_key[table_name]
432
+ if do_not_prefetch.nil?
433
+ owner, desc_table_name, db_link = @connection.describe(table_name)
434
+ @do_not_prefetch_primary_key [table_name] = do_not_prefetch = !has_primary_key?(table_name, owner, desc_table_name, db_link) || has_primary_key_trigger?(table_name, owner, desc_table_name, db_link)
435
+ end
432
436
  !do_not_prefetch
433
437
  end
434
438
 
@@ -96,6 +96,14 @@ describe "OracleEnhancedAdapter" do
96
96
  expect(TestEmployee2.columns.map(&:sql_type)).to eq(@column_sql_types)
97
97
  end
98
98
  end
99
+
100
+ it "should get sequence value at next time" do
101
+ TestEmployee.create!
102
+ expect(@logger.logged(:debug).first).not_to match(/SELECT \"TEST_EMPLOYEES_SEQ\".NEXTVAL FROM dual/im)
103
+ @logger.clear(:debug)
104
+ TestEmployee.create!
105
+ expect(@logger.logged(:debug).first).to match(/SELECT \"TEST_EMPLOYEES_SEQ\".NEXTVAL FROM dual/im)
106
+ end
99
107
  end
100
108
  end
101
109
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-oracle_enhanced-adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.2.0
4
+ version: 5.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Raimonds Simanovskis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-09 00:00:00.000000000 Z
11
+ date: 2018-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord