activerecord-oracle_enhanced-adapter 1.5.6 → 1.6.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis/oracle/download.sh +14 -0
- data/.travis/oracle/install.sh +31 -0
- data/.travis/setup_accounts.sh +9 -0
- data/.travis.yml +39 -0
- data/Gemfile +8 -8
- data/History.md +189 -0
- data/README.md +388 -178
- data/RUNNING_TESTS.md +11 -6
- data/VERSION +1 -1
- data/activerecord-oracle_enhanced-adapter.gemspec +29 -26
- data/lib/active_record/connection_adapters/{oracle_enhanced_column.rb → oracle_enhanced/column.rb} +14 -63
- data/lib/active_record/connection_adapters/oracle_enhanced/column_dumper.rb +66 -0
- data/lib/active_record/connection_adapters/{oracle_enhanced_connection.rb → oracle_enhanced/connection.rb} +2 -2
- data/lib/active_record/connection_adapters/oracle_enhanced/context_index.rb +347 -0
- data/lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb +260 -0
- data/lib/active_record/connection_adapters/oracle_enhanced/dirty.rb +40 -0
- data/lib/active_record/connection_adapters/{oracle_enhanced_jdbc_connection.rb → oracle_enhanced/jdbc_connection.rb} +13 -4
- data/lib/active_record/connection_adapters/{oracle_enhanced_oci_connection.rb → oracle_enhanced/oci_connection.rb} +11 -5
- data/lib/active_record/connection_adapters/{oracle_enhanced_procedures.rb → oracle_enhanced/procedures.rb} +1 -1
- data/lib/active_record/connection_adapters/{oracle_enhanced_schema_creation.rb → oracle_enhanced/schema_creation.rb} +34 -35
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_definitions.rb +95 -0
- data/lib/active_record/connection_adapters/{oracle_enhanced_schema_dumper.rb → oracle_enhanced/schema_dumper.rb} +14 -37
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_statements.rb +562 -0
- data/lib/active_record/connection_adapters/oracle_enhanced/schema_statements_ext.rb +65 -0
- data/lib/active_record/connection_adapters/{oracle_enhanced_structure_dump.rb → oracle_enhanced/structure_dump.rb} +63 -14
- data/lib/active_record/connection_adapters/oracle_enhanced/version.rb +1 -0
- data/lib/active_record/connection_adapters/oracle_enhanced_adapter.rb +171 -73
- data/lib/active_record/oracle_enhanced/type/integer.rb +13 -0
- data/lib/active_record/oracle_enhanced/type/raw.rb +13 -0
- data/lib/active_record/oracle_enhanced/type/timestamp.rb +11 -0
- data/lib/activerecord-oracle_enhanced-adapter.rb +1 -1
- data/spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb +127 -49
- data/spec/active_record/connection_adapters/oracle_enhanced_connection_spec.rb +46 -5
- data/spec/active_record/connection_adapters/oracle_enhanced_context_index_spec.rb +11 -3
- data/spec/active_record/connection_adapters/oracle_enhanced_cpk_spec.rb +3 -3
- data/spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb +151 -78
- data/spec/active_record/connection_adapters/oracle_enhanced_database_tasks_spec.rb +4 -4
- data/spec/active_record/connection_adapters/oracle_enhanced_dirty_spec.rb +10 -16
- data/spec/active_record/connection_adapters/oracle_enhanced_emulate_oracle_adapter_spec.rb +1 -1
- data/spec/active_record/connection_adapters/oracle_enhanced_procedures_spec.rb +5 -5
- data/spec/active_record/connection_adapters/oracle_enhanced_schema_dump_spec.rb +65 -181
- data/spec/active_record/connection_adapters/oracle_enhanced_schema_statements_spec.rb +114 -11
- data/spec/active_record/connection_adapters/oracle_enhanced_structure_dump_spec.rb +17 -1
- data/spec/spec_config.yaml.template +11 -0
- data/spec/spec_helper.rb +31 -12
- data/spec/support/alter_system_user_password.sql +2 -0
- data/spec/support/create_oracle_enhanced_users.sql +31 -0
- metadata +37 -27
- data/lib/active_record/connection_adapters/oracle_enhanced_column_dumper.rb +0 -77
- data/lib/active_record/connection_adapters/oracle_enhanced_context_index.rb +0 -350
- data/lib/active_record/connection_adapters/oracle_enhanced_database_statements.rb +0 -262
- data/lib/active_record/connection_adapters/oracle_enhanced_dirty.rb +0 -45
- data/lib/active_record/connection_adapters/oracle_enhanced_schema_definitions.rb +0 -197
- data/lib/active_record/connection_adapters/oracle_enhanced_schema_statements.rb +0 -450
- data/lib/active_record/connection_adapters/oracle_enhanced_schema_statements_ext.rb +0 -258
- data/lib/active_record/connection_adapters/oracle_enhanced_version.rb +0 -1
- /data/lib/active_record/connection_adapters/{oracle_enhanced_cpk.rb → oracle_enhanced/cpk.rb} +0 -0
- /data/lib/active_record/connection_adapters/{oracle_enhanced_database_tasks.rb → oracle_enhanced/database_tasks.rb} +0 -0
data/RUNNING_TESTS.md
CHANGED
@@ -16,7 +16,9 @@ to increase process limit and then restart the database (this will be necessary
|
|
16
16
|
Ruby versions
|
17
17
|
-------------
|
18
18
|
|
19
|
-
|
19
|
+
oracle_enhanced is tested with MRI 2.1.x and 2.2.x, and JRuby 1.7.x and 9.0.x.x.
|
20
|
+
|
21
|
+
It is recommended to use [RVM](http://rvm.beginrescueend.com) to run tests with different Ruby implementations.
|
20
22
|
|
21
23
|
Running tests
|
22
24
|
-------------
|
@@ -26,19 +28,22 @@ Running tests
|
|
26
28
|
SQL> CREATE USER oracle_enhanced IDENTIFIED BY oracle_enhanced;
|
27
29
|
SQL> GRANT unlimited tablespace, create session, create table, create sequence, create procedure, create trigger, create view, create materialized view, create database link, create synonym, create type, ctxapp TO oracle_enhanced;
|
28
30
|
|
29
|
-
|
31
|
+
SQL> CREATE USER oracle_enhanced_schema IDENTIFIED BY oracle_enhanced_schema;
|
32
|
+
SQL> GRANT unlimited tablespace, create session, create table, create sequence, create procedure, create trigger, create view, create materialized view, create database link, create synonym, create type, ctxapp TO oracle_enhanced_schema;
|
33
|
+
|
34
|
+
* If you use RVM then switch to corresponding Ruby. It is recommended to create isolated gemsets for test purposes (e.g. rvm create gemset oracle_enhanced)
|
30
35
|
|
31
36
|
* Install bundler with
|
32
37
|
|
33
38
|
gem install bundler
|
34
39
|
|
35
|
-
* Set RAILS_GEM_VERSION to Rails version that you would like to use in oracle_enhanced tests, e.g.
|
36
|
-
|
37
|
-
export RAILS_GEM_VERSION=3.0.3
|
38
|
-
|
39
40
|
* Install necessary gems with
|
40
41
|
|
41
42
|
bundle install
|
43
|
+
|
44
|
+
* Configure database credentials in one of two ways:
|
45
|
+
* copy spec/spec_config.yaml.template to spec/spec_config.yaml and modify as needed
|
46
|
+
* set required environment variables (see DATABASE_NAME in spec_helper.rb)
|
42
47
|
|
43
48
|
* Run tests with
|
44
49
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.6.9
|
@@ -5,12 +5,12 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{activerecord-oracle_enhanced-adapter}
|
8
|
-
s.version = "1.
|
8
|
+
s.version = "1.6.9"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.license = 'MIT'
|
12
12
|
s.authors = [%q{Raimonds Simanovskis}]
|
13
|
-
s.date = %q{
|
13
|
+
s.date = %q{2017-03-29}
|
14
14
|
s.description = %q{Oracle "enhanced" ActiveRecord adapter contains useful additional methods for working with new and legacy Oracle databases.
|
15
15
|
This adapter is superset of original ActiveRecord Oracle adapter.
|
16
16
|
}
|
@@ -30,23 +30,27 @@ This adapter is superset of original ActiveRecord Oracle adapter.
|
|
30
30
|
"activerecord-oracle_enhanced-adapter.gemspec",
|
31
31
|
"lib/active_record/connection_adapters/emulation/oracle_adapter.rb",
|
32
32
|
"lib/active_record/connection_adapters/oracle_enhanced_adapter.rb",
|
33
|
-
"lib/active_record/connection_adapters/
|
34
|
-
"lib/active_record/connection_adapters/
|
35
|
-
"lib/active_record/connection_adapters/
|
36
|
-
"lib/active_record/connection_adapters/
|
37
|
-
"lib/active_record/connection_adapters/
|
38
|
-
"lib/active_record/connection_adapters/
|
39
|
-
"lib/active_record/connection_adapters/
|
40
|
-
"lib/active_record/connection_adapters/
|
41
|
-
"lib/active_record/connection_adapters/
|
42
|
-
"lib/active_record/connection_adapters/
|
43
|
-
"lib/active_record/connection_adapters/
|
44
|
-
"lib/active_record/connection_adapters/
|
45
|
-
"lib/active_record/connection_adapters/
|
46
|
-
"lib/active_record/connection_adapters/
|
47
|
-
"lib/active_record/connection_adapters/
|
48
|
-
"lib/active_record/connection_adapters/
|
49
|
-
"lib/active_record/connection_adapters/
|
33
|
+
"lib/active_record/connection_adapters/oracle_enhanced/column.rb",
|
34
|
+
"lib/active_record/connection_adapters/oracle_enhanced/column_dumper.rb",
|
35
|
+
"lib/active_record/connection_adapters/oracle_enhanced/connection.rb",
|
36
|
+
"lib/active_record/connection_adapters/oracle_enhanced/context_index.rb",
|
37
|
+
"lib/active_record/connection_adapters/oracle_enhanced/cpk.rb",
|
38
|
+
"lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb",
|
39
|
+
"lib/active_record/connection_adapters/oracle_enhanced/dirty.rb",
|
40
|
+
"lib/active_record/connection_adapters/oracle_enhanced/database_tasks.rb",
|
41
|
+
"lib/active_record/connection_adapters/oracle_enhanced/jdbc_connection.rb",
|
42
|
+
"lib/active_record/connection_adapters/oracle_enhanced/oci_connection.rb",
|
43
|
+
"lib/active_record/connection_adapters/oracle_enhanced/procedures.rb",
|
44
|
+
"lib/active_record/connection_adapters/oracle_enhanced/schema_creation.rb",
|
45
|
+
"lib/active_record/connection_adapters/oracle_enhanced/schema_definitions.rb",
|
46
|
+
"lib/active_record/connection_adapters/oracle_enhanced/schema_dumper.rb",
|
47
|
+
"lib/active_record/connection_adapters/oracle_enhanced/schema_statements.rb",
|
48
|
+
"lib/active_record/connection_adapters/oracle_enhanced/schema_statements_ext.rb",
|
49
|
+
"lib/active_record/connection_adapters/oracle_enhanced/structure_dump.rb",
|
50
|
+
"lib/active_record/connection_adapters/oracle_enhanced/version.rb",
|
51
|
+
"lib/active_record/oracle_enhanced/type/integer.rb",
|
52
|
+
"lib/active_record/oracle_enhanced/type/timestamp.rb",
|
53
|
+
"lib/active_record/oracle_enhanced/type/raw.rb",
|
50
54
|
"lib/activerecord-oracle_enhanced-adapter.rb",
|
51
55
|
"spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb",
|
52
56
|
"spec/active_record/connection_adapters/oracle_enhanced_connection_spec.rb",
|
@@ -88,9 +92,9 @@ This adapter is superset of original ActiveRecord Oracle adapter.
|
|
88
92
|
s.specification_version = 3
|
89
93
|
|
90
94
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
91
|
-
s.add_development_dependency(%q<jeweler>, ["~>
|
95
|
+
s.add_development_dependency(%q<jeweler>, ["~> 2.0"])
|
92
96
|
s.add_development_dependency(%q<rspec>, ["~> 2.4"])
|
93
|
-
s.add_development_dependency(%q<activerecord>, ["
|
97
|
+
s.add_development_dependency(%q<activerecord>, ["~> 4.2.1"])
|
94
98
|
s.add_development_dependency(%q<activemodel>, [">= 0"])
|
95
99
|
s.add_development_dependency(%q<activesupport>, [">= 0"])
|
96
100
|
s.add_development_dependency(%q<actionpack>, [">= 0"])
|
@@ -100,9 +104,9 @@ This adapter is superset of original ActiveRecord Oracle adapter.
|
|
100
104
|
s.add_development_dependency(%q<ruby-plsql>, [">= 0.4.4"])
|
101
105
|
s.add_development_dependency(%q<ruby-oci8>, [">= 2.0.4"])
|
102
106
|
else
|
103
|
-
s.add_dependency(%q<jeweler>, ["~>
|
107
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0"])
|
104
108
|
s.add_dependency(%q<rspec>, ["~> 2.4"])
|
105
|
-
s.add_dependency(%q<activerecord>, ["
|
109
|
+
s.add_dependency(%q<activerecord>, ["~> 4.2.1"])
|
106
110
|
s.add_dependency(%q<activemodel>, [">= 0"])
|
107
111
|
s.add_dependency(%q<activesupport>, [">= 0"])
|
108
112
|
s.add_dependency(%q<actionpack>, [">= 0"])
|
@@ -113,9 +117,9 @@ This adapter is superset of original ActiveRecord Oracle adapter.
|
|
113
117
|
s.add_dependency(%q<ruby-oci8>, [">= 2.0.4"])
|
114
118
|
end
|
115
119
|
else
|
116
|
-
s.add_dependency(%q<jeweler>, ["~>
|
120
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0"])
|
117
121
|
s.add_dependency(%q<rspec>, ["~> 2.4"])
|
118
|
-
s.add_dependency(%q<activerecord>, ["
|
122
|
+
s.add_dependency(%q<activerecord>, ["~> 4.2.1"])
|
119
123
|
s.add_dependency(%q<activemodel>, [">= 0"])
|
120
124
|
s.add_dependency(%q<activesupport>, [">= 0"])
|
121
125
|
s.add_dependency(%q<actionpack>, [">= 0"])
|
@@ -126,4 +130,3 @@ This adapter is superset of original ActiveRecord Oracle adapter.
|
|
126
130
|
s.add_dependency(%q<ruby-oci8>, [">= 2.0.4"])
|
127
131
|
end
|
128
132
|
end
|
129
|
-
|
data/lib/active_record/connection_adapters/{oracle_enhanced_column.rb → oracle_enhanced/column.rb}
RENAMED
@@ -2,11 +2,13 @@ module ActiveRecord
|
|
2
2
|
module ConnectionAdapters #:nodoc:
|
3
3
|
class OracleEnhancedColumn < Column
|
4
4
|
|
5
|
-
attr_reader :table_name, :
|
5
|
+
attr_reader :table_name, :nchar, :virtual_column_data_default, :returning_id #:nodoc:
|
6
6
|
|
7
|
-
|
7
|
+
FALSE_VALUES << 'N'
|
8
|
+
TRUE_VALUES << 'Y'
|
9
|
+
|
10
|
+
def initialize(name, default, cast_type, sql_type = nil, null = true, table_name = nil, virtual=false, returning_id=false) #:nodoc:
|
8
11
|
@table_name = table_name
|
9
|
-
@forced_column_type = forced_column_type
|
10
12
|
@virtual = virtual
|
11
13
|
@virtual_column_data_default = default.inspect if virtual
|
12
14
|
@returning_id = returning_id
|
@@ -15,32 +17,20 @@ module ActiveRecord
|
|
15
17
|
else
|
16
18
|
default_value = self.class.extract_value_from_default(default)
|
17
19
|
end
|
18
|
-
super(name, default_value, sql_type, null)
|
20
|
+
super(name, default_value, cast_type, sql_type, null)
|
19
21
|
# Is column NCHAR or NVARCHAR2 (will need to use N'...' value quoting for these data types)?
|
20
22
|
# Define only when needed as adapter "quote" method will check at first if instance variable is defined.
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
def type_cast(value) #:nodoc:
|
26
|
-
case type
|
27
|
-
when :raw
|
28
|
-
OracleEnhancedColumn.string_to_raw(value)
|
29
|
-
when :datetime
|
30
|
-
OracleEnhancedAdapter.emulate_dates ? guess_date_or_time(value) : super
|
31
|
-
when :float
|
32
|
-
!value.nil? ? self.class.value_to_decimal(value) : super
|
33
|
-
else
|
34
|
-
super
|
23
|
+
if sql_type
|
24
|
+
@nchar = true if cast_type.class == ActiveRecord::Type::String && sql_type[0,1] == 'N'
|
25
|
+
@object_type = sql_type.include? '.'
|
35
26
|
end
|
27
|
+
# TODO: Need to investigate when `sql_type` becomes nil
|
36
28
|
end
|
37
29
|
|
38
|
-
def
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
def klass
|
43
|
-
type == :float ? BigDecimal : super
|
30
|
+
def type_cast(value) #:nodoc:
|
31
|
+
return OracleEnhancedColumn::string_to_raw(value) if type == :raw
|
32
|
+
return guess_date_or_time(value) if type == :datetime && OracleEnhancedAdapter.emulate_dates
|
33
|
+
super
|
44
34
|
end
|
45
35
|
|
46
36
|
def virtual?
|
@@ -96,45 +86,6 @@ module ActiveRecord
|
|
96
86
|
|
97
87
|
private
|
98
88
|
|
99
|
-
def simplified_type(field_type)
|
100
|
-
forced_column_type ||
|
101
|
-
case field_type
|
102
|
-
when /decimal|numeric|number/i
|
103
|
-
if OracleEnhancedAdapter.emulate_booleans && field_type.upcase == "NUMBER(1)"
|
104
|
-
:boolean
|
105
|
-
elsif extract_scale(field_type) == 0 ||
|
106
|
-
# if column name is ID or ends with _ID
|
107
|
-
OracleEnhancedAdapter.emulate_integers_by_column_name && OracleEnhancedAdapter.is_integer_column?(name, table_name)
|
108
|
-
:integer
|
109
|
-
elsif field_type.upcase == "NUMBER"
|
110
|
-
OracleEnhancedAdapter.number_datatype_coercion
|
111
|
-
else
|
112
|
-
:decimal
|
113
|
-
end
|
114
|
-
when /raw/i
|
115
|
-
:raw
|
116
|
-
when /char/i
|
117
|
-
if OracleEnhancedAdapter.emulate_booleans_from_strings &&
|
118
|
-
OracleEnhancedAdapter.is_boolean_column?(name, field_type, table_name)
|
119
|
-
:boolean
|
120
|
-
else
|
121
|
-
:string
|
122
|
-
end
|
123
|
-
when /date/i
|
124
|
-
if OracleEnhancedAdapter.emulate_dates_by_column_name && OracleEnhancedAdapter.is_date_column?(name, table_name)
|
125
|
-
:date
|
126
|
-
else
|
127
|
-
:datetime
|
128
|
-
end
|
129
|
-
when /timestamp/i
|
130
|
-
:timestamp
|
131
|
-
when /time/i
|
132
|
-
:datetime
|
133
|
-
else
|
134
|
-
super
|
135
|
-
end
|
136
|
-
end
|
137
|
-
|
138
89
|
def self.extract_value_from_default(default)
|
139
90
|
case default
|
140
91
|
when String
|
@@ -0,0 +1,66 @@
|
|
1
|
+
module ActiveRecord #:nodoc:
|
2
|
+
module ConnectionAdapters #:nodoc:
|
3
|
+
module OracleEnhanced #:nodoc:
|
4
|
+
module ColumnDumper #:nodoc:
|
5
|
+
def self.included(base) #:nodoc:
|
6
|
+
base.class_eval do
|
7
|
+
private
|
8
|
+
alias_method_chain :column_spec, :oracle_enhanced
|
9
|
+
alias_method_chain :prepare_column_options, :oracle_enhanced
|
10
|
+
alias_method_chain :migration_keys, :oracle_enhanced
|
11
|
+
|
12
|
+
def oracle_enhanced_adapter?
|
13
|
+
# return original method if not using 'OracleEnhanced'
|
14
|
+
if (rails_env = defined?(Rails.env) ? Rails.env : (defined?(RAILS_ENV) ? RAILS_ENV : nil)) &&
|
15
|
+
ActiveRecord::Base.configurations[rails_env] &&
|
16
|
+
ActiveRecord::Base.configurations[rails_env]['adapter'] != 'oracle_enhanced'
|
17
|
+
return false
|
18
|
+
else
|
19
|
+
return true
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def column_spec_with_oracle_enhanced(column, types)
|
26
|
+
# return original method if not using 'OracleEnhanced'
|
27
|
+
return column_spec_without_oracle_enhanced(column, types) unless oracle_enhanced_adapter?
|
28
|
+
|
29
|
+
spec = prepare_column_options(column, types)
|
30
|
+
(spec.keys - [:name, :type]).each do |k|
|
31
|
+
key_s = (k == :virtual_type ? "type: " : "#{k.to_s}: ")
|
32
|
+
spec[k] = key_s + spec[k]
|
33
|
+
end
|
34
|
+
spec
|
35
|
+
end
|
36
|
+
|
37
|
+
def prepare_column_options_with_oracle_enhanced(column, types)
|
38
|
+
# return original method if not using 'OracleEnhanced'
|
39
|
+
return prepare_column_options_without_oracle_enhanced(column, types) unless oracle_enhanced_adapter?
|
40
|
+
|
41
|
+
spec = {}
|
42
|
+
spec[:name] = column.name.inspect
|
43
|
+
spec[:type] = column.virtual? ? 'virtual' : column.type.to_s
|
44
|
+
spec[:virtual_type] = column.type.inspect if column.virtual? && column.sql_type != 'NUMBER'
|
45
|
+
spec[:limit] = column.limit.inspect if column.limit != types[column.type][:limit] && column.type != :decimal
|
46
|
+
spec[:precision] = column.precision.inspect if !column.precision.nil?
|
47
|
+
spec[:scale] = column.scale.inspect if !column.scale.nil?
|
48
|
+
spec[:null] = 'false' if !column.null
|
49
|
+
spec[:as] = column.virtual_column_data_default if column.virtual?
|
50
|
+
spec[:default] = schema_default(column) if column.has_default? && !column.virtual?
|
51
|
+
spec[:comment] = column.comment.inspect unless column.comment.nil?
|
52
|
+
spec.delete(:default) if spec[:default].nil?
|
53
|
+
spec
|
54
|
+
end
|
55
|
+
|
56
|
+
def migration_keys_with_oracle_enhanced
|
57
|
+
# TODO `& column_specs.map(&:keys).flatten` should be exetuted here
|
58
|
+
# return original method if not using 'OracleEnhanced'
|
59
|
+
return migration_keys_without_oracle_enhanced unless oracle_enhanced_adapter?
|
60
|
+
|
61
|
+
[:name, :limit, :precision, :scale, :default, :null, :as, :virtual_type, :comment]
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -109,11 +109,11 @@ end
|
|
109
109
|
# if MRI or YARV
|
110
110
|
if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby'
|
111
111
|
ORACLE_ENHANCED_CONNECTION = :oci
|
112
|
-
require 'active_record/connection_adapters/
|
112
|
+
require 'active_record/connection_adapters/oracle_enhanced/oci_connection'
|
113
113
|
# if JRuby
|
114
114
|
elsif RUBY_ENGINE == 'jruby'
|
115
115
|
ORACLE_ENHANCED_CONNECTION = :jdbc
|
116
|
-
require 'active_record/connection_adapters/
|
116
|
+
require 'active_record/connection_adapters/oracle_enhanced/jdbc_connection'
|
117
117
|
else
|
118
118
|
raise "Unsupported Ruby engine #{RUBY_ENGINE}"
|
119
119
|
end
|