tgbyte-activerecord-jdbc-adapter 1.2.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. data/.gitignore +22 -0
  2. data/.travis.yml +8 -0
  3. data/Gemfile +14 -0
  4. data/Gemfile.lock +40 -0
  5. data/History.txt +488 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.rdoc +199 -0
  8. data/Rakefile +60 -0
  9. data/activerecord-jdbc-adapter.gemspec +23 -0
  10. data/bench/bench_attributes.rb +13 -0
  11. data/bench/bench_attributes_new.rb +14 -0
  12. data/bench/bench_create.rb +12 -0
  13. data/bench/bench_find_all.rb +12 -0
  14. data/bench/bench_find_all_mt.rb +25 -0
  15. data/bench/bench_model.rb +85 -0
  16. data/bench/bench_new.rb +12 -0
  17. data/bench/bench_new_valid.rb +12 -0
  18. data/bench/bench_valid.rb +13 -0
  19. data/lib/active_record/connection_adapters/derby_adapter.rb +1 -0
  20. data/lib/active_record/connection_adapters/h2_adapter.rb +1 -0
  21. data/lib/active_record/connection_adapters/hsqldb_adapter.rb +1 -0
  22. data/lib/active_record/connection_adapters/informix_adapter.rb +1 -0
  23. data/lib/active_record/connection_adapters/jdbc_adapter.rb +1 -0
  24. data/lib/active_record/connection_adapters/jndi_adapter.rb +1 -0
  25. data/lib/active_record/connection_adapters/mssql_adapter.rb +1 -0
  26. data/lib/active_record/connection_adapters/mysql2_adapter.rb +1 -0
  27. data/lib/active_record/connection_adapters/mysql_adapter.rb +1 -0
  28. data/lib/active_record/connection_adapters/oracle_adapter.rb +1 -0
  29. data/lib/active_record/connection_adapters/postgresql_adapter.rb +1 -0
  30. data/lib/active_record/connection_adapters/sqlite3_adapter.rb +1 -0
  31. data/lib/activerecord-jdbc-adapter.rb +8 -0
  32. data/lib/arel/engines/sql/compilers/db2_compiler.rb +9 -0
  33. data/lib/arel/engines/sql/compilers/derby_compiler.rb +6 -0
  34. data/lib/arel/engines/sql/compilers/h2_compiler.rb +6 -0
  35. data/lib/arel/engines/sql/compilers/hsqldb_compiler.rb +15 -0
  36. data/lib/arel/engines/sql/compilers/jdbc_compiler.rb +6 -0
  37. data/lib/arel/engines/sql/compilers/mssql_compiler.rb +46 -0
  38. data/lib/arel/visitors/compat.rb +13 -0
  39. data/lib/arel/visitors/db2.rb +17 -0
  40. data/lib/arel/visitors/derby.rb +32 -0
  41. data/lib/arel/visitors/firebird.rb +24 -0
  42. data/lib/arel/visitors/hsqldb.rb +26 -0
  43. data/lib/arel/visitors/sql_server.rb +46 -0
  44. data/lib/arjdbc.rb +24 -0
  45. data/lib/arjdbc/db2.rb +2 -0
  46. data/lib/arjdbc/db2/adapter.rb +510 -0
  47. data/lib/arjdbc/derby.rb +7 -0
  48. data/lib/arjdbc/derby/adapter.rb +358 -0
  49. data/lib/arjdbc/derby/connection_methods.rb +19 -0
  50. data/lib/arjdbc/discover.rb +92 -0
  51. data/lib/arjdbc/firebird.rb +2 -0
  52. data/lib/arjdbc/firebird/adapter.rb +136 -0
  53. data/lib/arjdbc/h2.rb +4 -0
  54. data/lib/arjdbc/h2/adapter.rb +54 -0
  55. data/lib/arjdbc/h2/connection_methods.rb +13 -0
  56. data/lib/arjdbc/hsqldb.rb +4 -0
  57. data/lib/arjdbc/hsqldb/adapter.rb +184 -0
  58. data/lib/arjdbc/hsqldb/connection_methods.rb +15 -0
  59. data/lib/arjdbc/informix.rb +3 -0
  60. data/lib/arjdbc/informix/adapter.rb +138 -0
  61. data/lib/arjdbc/informix/connection_methods.rb +11 -0
  62. data/lib/arjdbc/jdbc.rb +2 -0
  63. data/lib/arjdbc/jdbc/adapter.rb +356 -0
  64. data/lib/arjdbc/jdbc/adapter_java.jar +0 -0
  65. data/lib/arjdbc/jdbc/base_ext.rb +15 -0
  66. data/lib/arjdbc/jdbc/callbacks.rb +44 -0
  67. data/lib/arjdbc/jdbc/column.rb +47 -0
  68. data/lib/arjdbc/jdbc/compatibility.rb +51 -0
  69. data/lib/arjdbc/jdbc/connection.rb +134 -0
  70. data/lib/arjdbc/jdbc/connection_methods.rb +16 -0
  71. data/lib/arjdbc/jdbc/core_ext.rb +24 -0
  72. data/lib/arjdbc/jdbc/discover.rb +18 -0
  73. data/lib/arjdbc/jdbc/driver.rb +35 -0
  74. data/lib/arjdbc/jdbc/extension.rb +47 -0
  75. data/lib/arjdbc/jdbc/java.rb +14 -0
  76. data/lib/arjdbc/jdbc/jdbc.rake +131 -0
  77. data/lib/arjdbc/jdbc/missing_functionality_helper.rb +88 -0
  78. data/lib/arjdbc/jdbc/quoted_primary_key.rb +28 -0
  79. data/lib/arjdbc/jdbc/railtie.rb +9 -0
  80. data/lib/arjdbc/jdbc/rake_tasks.rb +10 -0
  81. data/lib/arjdbc/jdbc/require_driver.rb +16 -0
  82. data/lib/arjdbc/jdbc/type_converter.rb +126 -0
  83. data/lib/arjdbc/mimer.rb +2 -0
  84. data/lib/arjdbc/mimer/adapter.rb +142 -0
  85. data/lib/arjdbc/mssql.rb +4 -0
  86. data/lib/arjdbc/mssql/adapter.rb +477 -0
  87. data/lib/arjdbc/mssql/connection_methods.rb +31 -0
  88. data/lib/arjdbc/mssql/limit_helpers.rb +101 -0
  89. data/lib/arjdbc/mssql/lock_helpers.rb +72 -0
  90. data/lib/arjdbc/mssql/tsql_helper.rb +61 -0
  91. data/lib/arjdbc/mysql.rb +4 -0
  92. data/lib/arjdbc/mysql/adapter.rb +505 -0
  93. data/lib/arjdbc/mysql/connection_methods.rb +28 -0
  94. data/lib/arjdbc/oracle.rb +3 -0
  95. data/lib/arjdbc/oracle/adapter.rb +428 -0
  96. data/lib/arjdbc/oracle/connection_methods.rb +12 -0
  97. data/lib/arjdbc/postgresql.rb +4 -0
  98. data/lib/arjdbc/postgresql/adapter.rb +825 -0
  99. data/lib/arjdbc/postgresql/connection_methods.rb +23 -0
  100. data/lib/arjdbc/sqlite3.rb +4 -0
  101. data/lib/arjdbc/sqlite3/adapter.rb +389 -0
  102. data/lib/arjdbc/sqlite3/connection_methods.rb +35 -0
  103. data/lib/arjdbc/sybase.rb +2 -0
  104. data/lib/arjdbc/sybase/adapter.rb +46 -0
  105. data/lib/arjdbc/version.rb +8 -0
  106. data/lib/generators/jdbc/USAGE +10 -0
  107. data/lib/generators/jdbc/jdbc_generator.rb +9 -0
  108. data/lib/jdbc_adapter.rb +2 -0
  109. data/lib/jdbc_adapter/rake_tasks.rb +3 -0
  110. data/lib/jdbc_adapter/version.rb +3 -0
  111. data/lib/pg.rb +26 -0
  112. data/pom.xml +57 -0
  113. data/rails_generators/jdbc_generator.rb +15 -0
  114. data/rails_generators/templates/config/initializers/jdbc.rb +7 -0
  115. data/rails_generators/templates/lib/tasks/jdbc.rake +8 -0
  116. data/rakelib/bundler_ext.rb +11 -0
  117. data/rakelib/compile.rake +23 -0
  118. data/rakelib/db.rake +39 -0
  119. data/rakelib/rails.rake +41 -0
  120. data/src/java/arjdbc/db2/DB2RubyJdbcConnection.java +62 -0
  121. data/src/java/arjdbc/derby/DerbyModule.java +324 -0
  122. data/src/java/arjdbc/h2/H2RubyJdbcConnection.java +70 -0
  123. data/src/java/arjdbc/informix/InformixRubyJdbcConnection.java +74 -0
  124. data/src/java/arjdbc/jdbc/AdapterJavaService.java +68 -0
  125. data/src/java/arjdbc/jdbc/JdbcConnectionFactory.java +36 -0
  126. data/src/java/arjdbc/jdbc/RubyJdbcConnection.java +1326 -0
  127. data/src/java/arjdbc/jdbc/SQLBlock.java +48 -0
  128. data/src/java/arjdbc/mssql/MssqlRubyJdbcConnection.java +127 -0
  129. data/src/java/arjdbc/mysql/MySQLModule.java +134 -0
  130. data/src/java/arjdbc/mysql/MySQLRubyJdbcConnection.java +161 -0
  131. data/src/java/arjdbc/oracle/OracleRubyJdbcConnection.java +85 -0
  132. data/src/java/arjdbc/postgresql/PostgresqlRubyJdbcConnection.java +82 -0
  133. data/src/java/arjdbc/sqlite3/Sqlite3RubyJdbcConnection.java +126 -0
  134. data/test/abstract_db_create.rb +135 -0
  135. data/test/activerecord/connection_adapters/type_conversion_test.rb +31 -0
  136. data/test/activerecord/connections/native_jdbc_mysql/connection.rb +25 -0
  137. data/test/activerecord/jall.sh +7 -0
  138. data/test/activerecord/jtest.sh +3 -0
  139. data/test/db/db2.rb +11 -0
  140. data/test/db/derby.rb +12 -0
  141. data/test/db/h2.rb +11 -0
  142. data/test/db/hsqldb.rb +13 -0
  143. data/test/db/informix.rb +11 -0
  144. data/test/db/jdbc.rb +12 -0
  145. data/test/db/jndi_config.rb +40 -0
  146. data/test/db/logger.rb +3 -0
  147. data/test/db/mssql.rb +9 -0
  148. data/test/db/mysql.rb +10 -0
  149. data/test/db/oracle.rb +34 -0
  150. data/test/db/postgres.rb +9 -0
  151. data/test/db/sqlite3.rb +11 -0
  152. data/test/db2_reset_column_information_test.rb +8 -0
  153. data/test/db2_simple_test.rb +66 -0
  154. data/test/derby_migration_test.rb +68 -0
  155. data/test/derby_multibyte_test.rb +12 -0
  156. data/test/derby_reset_column_information_test.rb +8 -0
  157. data/test/derby_row_locking_test.rb +9 -0
  158. data/test/derby_simple_test.rb +139 -0
  159. data/test/generic_jdbc_connection_test.rb +29 -0
  160. data/test/h2_change_column_test.rb +68 -0
  161. data/test/h2_simple_test.rb +41 -0
  162. data/test/has_many_through.rb +79 -0
  163. data/test/helper.rb +87 -0
  164. data/test/hsqldb_simple_test.rb +6 -0
  165. data/test/informix_simple_test.rb +48 -0
  166. data/test/jdbc_common.rb +28 -0
  167. data/test/jndi_callbacks_test.rb +36 -0
  168. data/test/jndi_test.rb +25 -0
  169. data/test/manualTestDatabase.rb +191 -0
  170. data/test/models/add_not_null_column_to_table.rb +9 -0
  171. data/test/models/auto_id.rb +15 -0
  172. data/test/models/data_types.rb +30 -0
  173. data/test/models/entry.rb +40 -0
  174. data/test/models/mixed_case.rb +22 -0
  175. data/test/models/reserved_word.rb +15 -0
  176. data/test/models/string_id.rb +17 -0
  177. data/test/models/thing.rb +16 -0
  178. data/test/models/validates_uniqueness_of_string.rb +19 -0
  179. data/test/mssql_db_create_test.rb +26 -0
  180. data/test/mssql_identity_insert_test.rb +19 -0
  181. data/test/mssql_ignore_system_views_test.rb +27 -0
  182. data/test/mssql_legacy_types_test.rb +58 -0
  183. data/test/mssql_limit_offset_test.rb +136 -0
  184. data/test/mssql_multibyte_test.rb +18 -0
  185. data/test/mssql_null_test.rb +14 -0
  186. data/test/mssql_reset_column_information_test.rb +8 -0
  187. data/test/mssql_row_locking_sql_test.rb +159 -0
  188. data/test/mssql_row_locking_test.rb +9 -0
  189. data/test/mssql_simple_test.rb +55 -0
  190. data/test/mysql_db_create_test.rb +27 -0
  191. data/test/mysql_index_length_test.rb +58 -0
  192. data/test/mysql_info_test.rb +123 -0
  193. data/test/mysql_multibyte_test.rb +10 -0
  194. data/test/mysql_nonstandard_primary_key_test.rb +42 -0
  195. data/test/mysql_reset_column_information_test.rb +8 -0
  196. data/test/mysql_simple_test.rb +125 -0
  197. data/test/oracle_reset_column_information_test.rb +8 -0
  198. data/test/oracle_simple_test.rb +18 -0
  199. data/test/oracle_specific_test.rb +83 -0
  200. data/test/postgres_db_create_test.rb +32 -0
  201. data/test/postgres_drop_db_test.rb +16 -0
  202. data/test/postgres_information_schema_leak_test.rb +29 -0
  203. data/test/postgres_mixed_case_test.rb +29 -0
  204. data/test/postgres_native_type_mapping_test.rb +89 -0
  205. data/test/postgres_nonseq_pkey_test.rb +38 -0
  206. data/test/postgres_reserved_test.rb +22 -0
  207. data/test/postgres_reset_column_information_test.rb +8 -0
  208. data/test/postgres_schema_search_path_test.rb +48 -0
  209. data/test/postgres_simple_test.rb +167 -0
  210. data/test/postgres_table_alias_length_test.rb +15 -0
  211. data/test/postgres_type_conversion_test.rb +34 -0
  212. data/test/row_locking.rb +90 -0
  213. data/test/simple.rb +717 -0
  214. data/test/sqlite3_reset_column_information_test.rb +8 -0
  215. data/test/sqlite3_simple_test.rb +316 -0
  216. data/test/sybase_jtds_simple_test.rb +28 -0
  217. data/test/sybase_reset_column_information_test.rb +8 -0
  218. metadata +275 -0
data/.gitignore ADDED
@@ -0,0 +1,22 @@
1
+ pkg
2
+ *.gem
3
+ *.tgz
4
+ derby-testdb*
5
+ derby.log
6
+ test.*
7
+ doc
8
+ build.xml
9
+ nbproject
10
+ TAGS
11
+ *~
12
+ *.log
13
+ patches*
14
+ *#
15
+ .stgit-edit.txt
16
+ /.classpath
17
+ /.project
18
+ /bin
19
+ /jndi_test/jdbc/.bindings
20
+ target
21
+ /test/fscontext.jar
22
+ /test/providerutil.jar
data/.travis.yml ADDED
@@ -0,0 +1,8 @@
1
+ rvm:
2
+ - jruby
3
+ env:
4
+ - JRUBY_OPTS=
5
+ - JRUBY_OPTS=--1.9
6
+ branches:
7
+ only:
8
+ - master
data/Gemfile ADDED
@@ -0,0 +1,14 @@
1
+ source "http://rubygems.org"
2
+
3
+ # This may wreak havoc on the lockfile, but we need a way to test
4
+ # different AR versions
5
+ gem 'activerecord', ENV['AR_VERSION']
6
+
7
+ gem 'rake'
8
+
9
+ gem 'jruby-openssl', :group => :development
10
+
11
+ group :test do
12
+ gem 'ruby-debug'
13
+ gem 'mocha'
14
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,40 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ activemodel (3.2.1)
5
+ activesupport (= 3.2.1)
6
+ builder (~> 3.0.0)
7
+ activerecord (3.2.1)
8
+ activemodel (= 3.2.1)
9
+ activesupport (= 3.2.1)
10
+ arel (~> 3.0.0)
11
+ tzinfo (~> 0.3.29)
12
+ activesupport (3.2.1)
13
+ i18n (~> 0.6)
14
+ multi_json (~> 1.0)
15
+ arel (3.0.0)
16
+ bouncy-castle-java (1.5.0146.1)
17
+ builder (3.0.0)
18
+ columnize (0.3.1)
19
+ i18n (0.6.0)
20
+ jruby-openssl (0.7.5)
21
+ bouncy-castle-java (>= 1.5.0146.1)
22
+ mocha (0.9.8)
23
+ rake
24
+ multi_json (1.0.4)
25
+ rake (0.9.2.2)
26
+ ruby-debug (0.10.4)
27
+ columnize (>= 0.1)
28
+ ruby-debug-base (~> 0.10.4.0)
29
+ ruby-debug-base (0.10.4-java)
30
+ tzinfo (0.3.31)
31
+
32
+ PLATFORMS
33
+ java
34
+
35
+ DEPENDENCIES
36
+ activerecord
37
+ jruby-openssl
38
+ mocha
39
+ rake
40
+ ruby-debug
data/History.txt ADDED
@@ -0,0 +1,488 @@
1
+ == 1.2.2 (01/27/12)
2
+
3
+ - Thanks George Murphy and Dwayne Litzenberger for their significant
4
+ work this release!
5
+ - AR 3.2.x compatibility via #156 (thanks George Murphy)
6
+ - #152: Bunch of derby and mssql fixes (thanks Dwayne Litzenberger)
7
+ - #137: Fix configure_arel2_visitors for vanilla JDBC adapters
8
+ - #136: query cache fix
9
+ - #138: error message improvement for #table_structure (threez)
10
+ - #130, #139: sqlite3 should log inserts (Uwe Kubosch)
11
+ - #141 column queries logging (George Murphy)
12
+ - #142 MySQL fixes for AR 3-1-stable tests (George Murphy)
13
+ - #147, #149 Improve speed of PG metadata queries (George Murphy)
14
+ - #148 PostgreSQL fixes for AR 3-1-stable tests (George Murphy)
15
+ - #128, #129 Fix for invalid :limit on date columns in schema.rb (Lenny Marks)
16
+ - #144 Stop using ParseDate (not 1.9 friendly) (Bill Koch)
17
+ - #146 Upgrade PG drivers (David Kellum)
18
+ - #150 avoid 'TypeError: can't dup Fixnum' for performance (Bruce Adams)
19
+
20
+ == 1.2.1 (11/23/11)
21
+
22
+ - #117: Skip ? substitution when no bind parameters are given
23
+ - #115: Work around bug in ResultSetMetaData in SQLite
24
+ - Enhance the 'change_column' in H2 adapter to support additional options
25
+ - Deal with changes in RubyBigDecimal in trunk
26
+ - Decimal with scale zero handling (George Murphy)
27
+ - Fix blob handling for SQLite3 since SQLiteJDBC does not support
28
+ getBinary (Jean-Dominique Morani)
29
+
30
+ == 1.2.0 (09/13/11)
31
+
32
+ - Support for Rails 3.1
33
+ - Improvements to index usage on PostgreSQL (albertosaurus and
34
+ pazustep)
35
+ - Compatibility: tested with Rails 2.3, 3.0 and 3.1
36
+
37
+ == 1.1.3 (07/26/11)
38
+
39
+ - Remove AR version < 3 guard around some caching methods (sugg. invadersmustdie)
40
+ - Small bug in arjdbc/discover logic, thanks autotelik.
41
+ - Added bigint serial support + some testcases for native type mapping (postgres only)
42
+ - mssql: use subscript instead of #first. (Kim Toms)
43
+ - #71: fix yield called out of block error
44
+ - Silence Rake::DSL warnings for Rake > 0.9
45
+
46
+ == 1.1.2 (06/20/11)
47
+
48
+ - Update version of H2 driver from 1.1.107 to 1.3.153 (Ketan
49
+ Padegaonkar, Jeremy Stephens)
50
+ - Fix errors in db:test:clone_structure with PostgreSQL (Andrea Campi)
51
+ - Fixing limit for sqlServer2000 if primary key is not named 'id'
52
+ (Luca Simone)
53
+ - DB2: define jdbc_columns (fixes table_exists? bug) (Nick Kreucher)
54
+ - ACTIVERECORD_JDBC-152 - omitting limit when dumping bytea fields
55
+ (Gregor Schmidt)
56
+ - Postgres doesn't support a limit for bytea columns (Alex Tambellini)
57
+ - JRUBY-5642: Default to schema public if no schema given for postgres
58
+ (Anthony Juckel)
59
+ - Sqlite3 supports float data type so use float (Alex Tambellini)
60
+ - GH #21: Now using sqlite3 driver from
61
+ http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC (thanks Ukabu)
62
+ - GH #65: PG: Respect integer sizes (Alex Tambellini)
63
+ - GH #59: PG: Properly escape bytea-escaped string
64
+ - GH #53: oracle: allow configuration of schema through schema: key
65
+ - GH #50: PG: support multiple schema in search_path (Daniel
66
+ Schreiber)
67
+ - GH #25: Reload ArJdbc.column_types if number of constants changed
68
+ - GH #47: Allow table statistics for indexes to be approximate; speeds
69
+ up Oracle
70
+ - GH #67: Change primary_keys to use the same catalog/schema/table
71
+ separation logic as columns_internal (Marcus Brito). This change
72
+ allows set_table_name to specify a custom schema.
73
+ - GH #49: mssql: quote table names like column names
74
+ - GH #56: mssql: Fix 'select 1' behavior introduced by AR 3.0.7
75
+ - GH #55: Make decimal columns with no precision or scale stay
76
+ decimals
77
+ - GH #45: Add Arel limit support for Firebird (Systho))
78
+ - GH #39: PG: allow negative integer default values
79
+ - GH #19: Make a stub Mysql::Error class
80
+ - ACTIVERECORD_JDBC-148: mssql: Ensure regex doesn't match 'from' in a
81
+ field name
82
+ - GH#31: mssql: Remove extra code breaking mssql w/o limit
83
+ - ACTIVERECORD_JDBC-156: mssql: Logic fix for detecting select_count?
84
+
85
+ == 1.1.1 (01/14/11)
86
+
87
+ - Arel 2.0.7 compatibility: fix bugs arising from use of Arel 2.0.7 +
88
+ ArJdbc 1.1.0.
89
+ - Gracefully handle changes to limit in Arel's AST
90
+ - Avoid conflict with Arel 2.0.7's mssql visitor
91
+ - Upgrade to PostgreSQL 9.0.801 JDBC drivers (David Kellum)
92
+
93
+ == 1.1.0 (12/09/10)
94
+
95
+ - Don't narrow platform to '-java' only: revert back to 0.9.2 where
96
+ ar-jdbc can be installed under any Ruby (for easier Bundler/Warbler
97
+ usage and less confusion on rubygems.org).
98
+ - Upgrade MySQL execute code to use RETURN_GENERATED_KEYS.
99
+ - Upgrade to MySQL driver version 5.1.13
100
+ - Add multi-statement support, idea from oruen. For databases that
101
+ support it, you can now do:
102
+ results = Model.connection.execute("select 1; select 2")
103
+ and receive back an array of multiple result set arrays. For use with
104
+ MySQL, you need to add
105
+ options:
106
+ allowMultiQueries: true
107
+ in database.yml.
108
+ - ACTIVERECORD_JDBC-144: Fix limits appearing in schema dump for some
109
+ datatypes (Uwe Kubosch)
110
+ - Fixes for DB2 limit/offset
111
+ - Fix rake db:create for 'jdbc' adapter (Joeri Samson)
112
+ - add create/drop database methods to h2 adapter (sahglie)
113
+ - Use connection getDatabaseProductName instead of getClass.getName
114
+ when detecting JNDI dialects (Denis Odorcic)
115
+ - ACTIVERECORD_JDBC-146: Fix create_table to not append encoding (Marc Slemko)
116
+ - All green on SQLite3 Rails master ActiveRecord tests
117
+ - ACTIVERECORD_JDBC-140: Sync postgres add/change column code from Rails master
118
+ - ACTIVERECORD_JDBC-139: TEXT/DATE on PostgreSQL should not have limits
119
+
120
+ == 1.0.3 (11/29/10)
121
+
122
+ - ACTIVERECORD_JDBC-143: Implement table_exists? fixing association
123
+ table names with schema prefixes
124
+ - Cleanup of column code for hsqldb (Denis Odorcic)
125
+ - Rails 3.0.3 support - add Arel 2 visitors for all adapters
126
+ - Fix MySQL date types to not have limits (Chris Lowder)
127
+ - ACTIVERECORD_JDBC-141: Better schema support in H2
128
+
129
+ == 1.0.2
130
+
131
+ - ACTIVERECORD_JDBC-134: Fix conflicting adapter/column superclasses
132
+ - ACTIVERECORD_JDBC-135: Fix regression on PG with boolean and :limit
133
+ - Slew of Derby fixes courtesy of Denis Odorcic
134
+
135
+ == 1.0.1
136
+
137
+ - Fix db:test:purge issue affecting all adapters in 1.0.0 due to
138
+ incorrect fix to JRUBY-5081 in 8b4b9c5
139
+
140
+ == 1.0.0
141
+
142
+ - Thanks to David Kellum, Dmitry Denisov, Dwayne Litzenberger, Gregor
143
+ Schmidt, James Walker, John Duff, Joshua Suggs, Nicholas J Kreucher,
144
+ Peter Donald, Geoff Longman, Uwe Kubosch, Youhei Kondou, Michael
145
+ Pitman, Alex B, and Ryan Bell for their contributions to this
146
+ release.
147
+ - BIG set of DB2 updates (Thanks Nick Kreucher)
148
+ - Deprecate jdbc_adapter/rake_tasks
149
+ - (1.0.0.beta1)
150
+ - Make database-specific extensions only load when necessary
151
+ - Allow for discovery of database extensions outside of ar-jdbc
152
+ proper. This should allow for custom database development to be
153
+ developed and released without relying on AR-JDBC core.
154
+ - Get AR's own tests running as close to 100% as possible. MySQL is
155
+ currently 100%, SQLite3 is close.
156
+ - JRUBY-4876: Bump up Derby's max index name length (Uwe Kubosch)
157
+ - (1.0.0.beta2)
158
+ - 98 commits since beta1
159
+ - MSSQL updates from dlitz and realityforge
160
+ - ACTIVERECORD_JDBC-131: Fix string slug issue for DB2 (Youhei Kondou)
161
+ - JRUBY-1642: Don't use H2 INFORMATION_SCHEMA in table or column
162
+ searches
163
+ - JRUBY-4972: Attempt to deal with type(0)/:limit => 0 by not setting
164
+ it808e213
165
+ - JRUBY-5040: Fix issue with limits on timestamps in MySQL
166
+ - JRUBY-3555: Allow setting Derby schema with 'schema:' option
167
+ - ACTIVERECORD_JDBC-98: Make sure we actuall raise an error when
168
+ inappropriately configured
169
+ - ACTIVERECORD_JDBC-112: Add schema dumper tests for already-fixed
170
+ MySQL type limits
171
+ - ACTIVERECORD_JDBC-113: Fix PG float precision issue
172
+ - ACTIVERECORD_JDBC-103: Fix decimal options for PG add/change column
173
+ (Michael Pitman)
174
+ - ACTIVERECORD_JDBC-127: Fix quoting of Date vs. Time(stamp) for
175
+ Oracle (Lenny Marks)
176
+ - Oracle: Sort out the NUMBER vs NUMBER(x) vs NUMBER(x,y) situation.
177
+ - JRUBY-3051: Think we finally got the PG mixed-case patches applied.
178
+ - JRUBY-5081: Consolidate code for dropping DB via postgres
179
+ - ACTIVERECORD_JDBC-101: Add override of LONGVARCHAR => CLOB for
180
+ informix
181
+ - ACTIVERECORD_JDBC-107: Fix MySQL update_all issue on AR 2.3
182
+ - ACTIVERECORD_JDBC-124: Filter out special _row_num column
183
+ - ACTIVERECORD_JDBC-126: Fix sql 2000 limit/offset per Michael Pitman
184
+ - ACTIVERECORD_JDBC-125: Add tweak to limit/offset code for HABTM
185
+ queries (alex b)
186
+ - ACTIVERECORD_JDBC-129: Don't have limits for text, binary or bit
187
+ fields
188
+ - (1.0.0 final)
189
+ - Fix a few more SQLite3 AR tests
190
+ - SQLite3: handle ":memory:" database
191
+ - Release new SQLite3 driver 3.6.14.2 and new Derby driver 10.6.2.1
192
+
193
+ == 0.9.7
194
+
195
+ - JRUBY-4781: Fix multiple database connection collision issue w/
196
+ Oracle
197
+ - ACTIVERECORD_JDBC-115: Support SAVEPOINTS for MySQL and PG so that
198
+ nested transactions can be faked
199
+ - ACTIVERECORD_JDBC-116: Handle schema.table better for MySQL (thanks
200
+ Dilshod Mukhtarov)
201
+ - Fix 'Wrong # of arguments (2 for 1)' issue with #create_database for
202
+ MySQL and AR 3.0
203
+ - SQLServer 2000 support (thanks Jay McGaffigan)
204
+
205
+ == 0.9.6
206
+
207
+ - The Oracle release!
208
+ - Oracle should be working much better with this release. Also updated
209
+ to work with Rails 3.
210
+ - Get all unit tests running cleanly on Oracle, fixing previous
211
+ datetime/timezone issues.
212
+ - ACTIVERECORD_JDBC-83: Add :sequence_start_value option to
213
+ create_table, following oracle_enhanced adapter
214
+ - ACTIVERECORD_JDBC-33: Don't double-quote table names in oracle
215
+ - ACTIVERECORD_JDBC-17: Fix Oracle primary keys so that /^NUMBER$/ => :integer
216
+ - Fix remaining blockers ACTIVERECORD_JDBC-82, JRUBY-3675,
217
+ ACTIVERECORD_JDBC-22, ACTIVERECORD_JDBC-27, JRUBY-4759
218
+
219
+ == 0.9.5
220
+
221
+ - The MSSQL release, courtesy of Mike Williams and Lonely
222
+ Planet.
223
+ - JRuby + AR-JDBC is now seen as the hassle-free way of using Rails
224
+ with SQLServer!
225
+ - Many fixes for MSSQL, including ACTIVERECORD_JDBC-18,
226
+ ACTIVERECORD_JDBC-41, ACTIVERECORD_JDBC-56, ACTIVERECORD_JDBC-94,
227
+ ACTIVERECORD_JDBC-99, JRUBY-3805, JRUBY-3793, JRUBY-4221
228
+ - All tests pass on Rails 3.0.0.beta3!
229
+
230
+ == 0.9.4
231
+
232
+ - ACTIVERECORD_JDBC-96: DB2 JdbcSpec cannot dump schema correctly
233
+ (Youhei Kondou)
234
+ - ACTIVERECORD_JDBC-97: Dont use Rails 3 deprecated constants (David
235
+ Calavera)
236
+ - Updates for rake db:schema:dump compatibility with Rails 2.3+ and
237
+ MySQL (Joakim Kolsj�)
238
+ - Rails 3.0.0.beta2 compatibility
239
+ - Return of Derby, H2, Hsqldb support (requires AR >= 3.0.0.beta2)
240
+
241
+ == 0.9.3
242
+
243
+ - Rails 3 compatibility
244
+ - PLEASE NOTE: ActiveRecord in Rails 3 has changed in a way that
245
+ doesn't allow non-standard DBs (such as the Derby and H2 embedded
246
+ DBs) to work. We're investigating the effort required to support
247
+ these databases and hope to have something for a future release.
248
+ - ACTIVERECORD_JDBC-91: Fix schema search path for PostgreSQL (Alex
249
+ Kuebo)
250
+ - ACTIVERECORD_JDBC-87: DB2 ID insert fix (Youhei Kondou)
251
+ - ACTIVERECORD_JDBC-90: MSSQL fix for DATEs (jlangenauer)
252
+ - ACTIVERECORD_JDBC-93: Fix string IDs for sqlite3, hsql/h2 (moser)
253
+ - ACTIVERECORD_JDBC-86: Fix Derby queries starting with VALUES (Dwayne Litzenberger)
254
+ - ACTIVERECORD_JDBC-95: Fix INSERT ... RETURNING for PostgreSQL
255
+
256
+ == 0.9.2
257
+
258
+ - The main, highly awaited fix for this release is a solution to the
259
+ rake db:create/db:drop issue. The main change is a new 'jdbc' rails
260
+ generator that should be run once to prepare a Rails application to
261
+ use JDBC. The upside of this generator is that you no longer will
262
+ need to alter database.yml for JDBC. See the README.txt for details.
263
+ - Cleanup and reconnect if errors occur during begin/rollback
264
+ (Jean-Dominique Morani, Christian Seiler)
265
+ - ACTIVERECORD_JDBC-1: Add #drop_database method for oracle (does the
266
+ same thing as recreate_database)
267
+ - Sqlite3 and MSSQL fixes (Jean-Dominique Morani)
268
+ - JRUBY-3512: Treat LONGVARCHAR as a CLOB for Mssql
269
+ - JRUBY-3624: Upgrade Derby to 10.5.3.0 and add native limit/offset
270
+ support (Christopher Saunders)
271
+ - JRUBY-3616: Fix postgres non-sequence primary keys (David Kellum)
272
+ - JRUBY-3669: Fix Oracle case with unconfigured schema (Dan Powell)
273
+ - Fixed quote_column_name of jdbc_oracle to accept numbers (Marcelo
274
+ Murad)
275
+ - Fix for mysql tables with non standard primary keys such that the
276
+ schema dump is correct (Nick Zalabak)
277
+ - MSSQL fixes from Mike Luu:
278
+ - add support for MSSQL uniqueidentifier datatype
279
+ - always quote strings using unicode identifier for MSSQL
280
+ - Changes primary_key generation to use always instead of by default
281
+ for DB2 (Amos King)
282
+ - Improves the SQLite adapter by fixing rename_column, change_column,
283
+ change_column_default, changing remove_column, and adding
284
+ remove_columns (Ryan Baumann)
285
+ - More oracle love courtesy Ben Browning and Jens Himmelreich
286
+ - JRUBY-3608: Add missing change_column_null method for postgres
287
+ - JRUBY-3508: Fix quoting of integer and float columns
288
+
289
+ == 0.9.1
290
+
291
+ - We did a lot of internal cleanup this release in the hopes of
292
+ simplifying the code and increasing performance.
293
+ - Many SQLite updates (thanks Nils Christian Haugen)
294
+ - JRUBY-2912: Fix MSSQL create/drop database (Joern Hartmann)
295
+ - JRUBY-2767: Mistake in selecting identity with H2/HSQLDB
296
+ - JRUBY-2884: jdbc_postgre.rb issue handling nil booleans (also a fix
297
+ for hsqldb/h2) + tests
298
+ - JRUBY-2995: activerecord jdbc derby adapter should quote columns
299
+ called 'year'
300
+ - JRUBY-2897: jdbc_postgre.rb needs microsecond support
301
+ - JRUBY-3282: Upgrade to derby 10.4.2.0 to allow unique constraints
302
+ with nullable columns
303
+ - Update h2 from 1.0.63 to 1.1.107 in driver
304
+ - JRUBY-3026: [Derby] Allow select/delete/update conditions with
305
+ comparison to NULL using '='
306
+ - JRUBY-2996: ...(actually this fixes only remaining issue of this bug
307
+ which was symbols making into quote were exploding
308
+ - JRUBY-2691: Update sybase driver to pass simple unit tests with jtds
309
+ and verify it works with the new dialect keyword. patch by Leigh
310
+ Kennedy
311
+ - Make :float type work on h2,hsql [returned as string]. Make :float
312
+ work on hsqldb (no paren value supported). Make REAL_TYPE just
313
+ return RubyFloat
314
+ - JRUBY-3222: Upgrade #type_to_sql to variation of AR 2.1.2 version
315
+ - Add patch supplied in JRUBY-3489 (patch by Jean-Dominique Morani)
316
+ - Various Oracle fixes by edsono
317
+ - JRUBY-2688: Don't hard-code MySQL connection character encoding to
318
+ utf8
319
+
320
+ == 0.9
321
+
322
+ - Now updated to support ActiveRecord 2.2. JNDI-based connections will
323
+ automatically connect/disconnect for every AR connection pool
324
+ checkout/checkin. For best results, set your pool: parameter >= the
325
+ actual maximum size of the JNDI connection pool. (We'll look at how
326
+ to eliminate the need to configure AR's pool in the future.)
327
+ - NEW! Informix support courtesy of Javier Fernandez-Ivern.
328
+ - Backport another Oracle CLOB issue, thanks Edson C�sar.
329
+ - Rubyforge #22018: chomp final trailing semicolon for oracle
330
+ - JRUBY-2848: Fix NPE error in set_native_database_types
331
+ - Rework oracle lob saving callback to be Rails 2.1 friendly (assist
332
+ from court3nay)
333
+ - JRUBY-2715: Add create/drop database methods to Postgres (Peter Williams)
334
+ - JRUBY-3183: Fix structure dump for Postgres (Ryan Bell)
335
+ - JRUBY-3184: recreate_database for test database working for PG (Ryan Bell)
336
+ - JRUBY-3186: disable referential integrity for PG (Ryan Bell)
337
+ - Authoritative repository now hosted at
338
+ git://github.com/nicksieger/activerecord-jdbc-adapter.git; rubyforge
339
+ svn trunk cleaned out.
340
+
341
+ == 0.8.2
342
+
343
+ - Added an optional config key called :dialect. Using :dialect allows you to
344
+ override the default SQL dialect for the driver class being used. There are
345
+ a few cases for this:
346
+ - Using using Sybase w/ the jTDS driver.
347
+ - Using rebranded drivers.
348
+ - It makes more sense to use :dialect, rather then :driver when using JNDI.
349
+ - JRUBY-2619: Typo with :test config causing problems with dev database (Igor Minar)
350
+ - 20524, JRUBY-2612: Since when did I think that there was a #true? method on Object?
351
+
352
+ == 0.8.1
353
+
354
+ - Now sporting a JDBC sqlite3 adapter! Thanks Joseph Athman.
355
+ - Added support for InterSystems Cache database (Ryan Bell)
356
+ - Fix for JRUBY-2256
357
+ - JRUBY-1638, JRUBY-2404, JRUBY-2463: schema.table handling and Oracle NUMBER fixes (Darcy Schultz & Jesse Hu)
358
+ - Add structure dump and other DDL-ish for DB2 (courtesy abedra and stuarthalloway)
359
+ - Fix missing quote_table_name function under Rails 1.2.6 and earlier
360
+ - Small tweaks to jdbc.rake to select proper config
361
+ - JRUBY-2011: Fix MSSQL string un-quoting issue (Silvio Fonseca)
362
+ - JRUBY-1977, 17427: Fix information_schema select issue with MSSQL (Matt Burke)
363
+ - 20479: Improve get_table_name for MSSQL (Aslak Hellesøy)
364
+ - 20243: numerics improvements for MSSQL (Aslak Hellesøy)
365
+ - 20172: don't quote table names for MSSQL (Thor Marius Henrichsen)
366
+ - 19729: check for primary key existence in postgres during insert (Martin Luder)
367
+ - JRUBY-2297, 18846: retrying failing SQL statements is harmful when not autocommitting (Craig McMillan)
368
+ - 10021: very preliminary sybase support. (Mark Atkinson) Not usable until collision w/ sqlserver driver is resolved.
369
+ - JRUBY-2312, JRUBY-2319, JRUBY-2322: Oracle timestamping issues (Jesse Hu & Michael König)
370
+ - JRUBY-2422: Fix MySQL referential integrity and rollback issues
371
+ - JRUBY-2382: mysql string quoting fails with ArrayIndexOutofBoundsException
372
+
373
+ == 0.8
374
+
375
+ - NOTE: This release is only compatible with JRuby 1.1RC3 or later.
376
+ - Because of recent API changes in trunk in preparation for JRuby 1.1, this release is not
377
+ backward compatible with previous JRuby releases. Hence the version bump.
378
+ - Internal: convert Java methods to be defined with annotations
379
+ - Fix problem with reserved words coming back pre-quoted from #indexes in postgres
380
+ - JRUBY-2205: Fix N^2 allocation of bytelists for mysql quoting (taw)
381
+ - Attempt a fix for Rubyforge 18059
382
+ - Upgrade derby to 10.3.2.1
383
+ - Fix db:create etc. in the case where JDBC is loaded in Rails' preinitializer.rb
384
+ - Fix db:drop to actually work
385
+ - Fix for Rubyforge #11567 (Matt Williams)
386
+
387
+ == 0.7.2
388
+
389
+ - JRUBY-1905: add_column for derby, hsqldb, and postgresql (Stephen Bannasch)
390
+ - Fix db:create for JDBC
391
+ - Support Rails 2 with the old "require 'jdbc_adapter'" approach
392
+ - JRUBY-1966: Instead of searching for just tables, search for views and tables.
393
+ - JRUBY-1583: DB2 numeric quoting (Ryan Shillington)
394
+ - JRUBY-1634: Oracle DATE type mapping (Daniel Wintschel)
395
+ - JRUBY-1543: rename_column issue with more recent MySQL drivers (Oliver Schmelzle)
396
+ - Rubyforge #15074: ConnectionAdapters::JdbcAdapter.indexes is missing name and
397
+ schema_name parameters in the method signature (Igor Minar)
398
+ - Rubyforge #13558: definition for the indexes method (T Meyarivan)
399
+ - JRUBY-2051: handle schemaname and tablename more correctly for columns
400
+ - JRUBY-2102: Postgres Adapter cannot handle datetime type (Rainer Hahnekamp)
401
+ - JRUBY-2018: Oracle behind ActiveRecord-JDBC fails with "Invalid column index" (K Venkatasubramaniyan)
402
+ - JRUBY-2012: jdbc_mysql structure dump fails for mysql views (Tyler Jennings)
403
+
404
+ == 0.7.1
405
+
406
+ - Add adapter and driver for H2 courtesy of Caleb Land
407
+ - Fix "undefined method `last' for {}:Hash" error introduced with new Rake 0.8.1 (JRUBY-1859)
408
+
409
+ == 0.7
410
+
411
+ - PLEASE NOTE: This release is not compatible with JRuby releases earlier than
412
+ 1.0.3 or 1.1b2. If you must use JRuby 1.0.2 or earlier, please install the
413
+ 0.6 release.
414
+ - Release coincides with JRuby 1.0.3 and JRuby 1.1b2 releases
415
+ - Simultaneous support for JRuby trunk and 1.0 branch
416
+ - Get rid of log_no_bench method, so we time SQL execution again.
417
+ - Implement #select_rows
418
+ - MySQL migration and quoting updates
419
+
420
+ == 0.6
421
+
422
+ - Gem is renamed to "activerecord-jdbc-adapter" to follow new conventions
423
+ introduced in Rails 2.0 for third-party adapters. Rails 2.0 compatibility is
424
+ introduced.
425
+ - Add dependency on ActiveRecord >= 1.14 (from the Rails 1.1.x release)
426
+ - New drivers (jdbc-XXX) and adapter (activerecord-jdbcXXX-adapter) gems
427
+ available separately. See the README.txt file for details.
428
+ - Plain "jdbc" driver is still available if you want to use the full
429
+ driver/url way of specifying the driver.
430
+ - More bugfixes to Oracle and SQLServer courtesy of Ola & ThoughtWorks
431
+
432
+ == 0.5
433
+
434
+ - Release coincides with JRuby 1.0.1 release
435
+ - It is no longer necessary to specify :driver and :url configuration
436
+ parameters for the mysql, postgresql, oracle, derby, hsqldb, and h2
437
+ adapters. The previous configuration is still valid and compatible, but for
438
+ new applications, this makes it possible to use the exact same database.yml
439
+ configuration as Rails applications running under native Ruby.
440
+ - JDBC drivers can now be dynamically loaded by Ruby code, without being on
441
+ the classpath prior to launching JRuby. Simply use "require
442
+ 'jdbc-driver.jar'" in JRuby code to add it to the runtime classpath.
443
+ - Updates to HSQL, MS SQLServer, Postgres, Oracle and Derby adapters
444
+
445
+ == 0.4
446
+
447
+ - Release coincides with JRuby 1.0 release
448
+ - Shoring up PostgreSQL (courtesy Dudley Flanders) and HSQL (courtesy Matthew
449
+ Williams)
450
+ - Fix timestamps on Oracle to use DATE (as everything else)
451
+ - Derby fixes: Fix for open result set issue, better structure dump, quoting,
452
+ column type changing
453
+ - Sybase type recognition fix (courtesy Dean Mao)
454
+
455
+ == 0.3.1
456
+
457
+ - Derby critical fixes shortly after 0.3
458
+
459
+ == 0.3
460
+
461
+ - Release coincides with JRuby 1.0.0RC1 release
462
+ - Improvements for Derby, Postgres, and Oracle, all of which are running
463
+ > 95% of AR tests
464
+
465
+ == 0.2.4
466
+
467
+ - Release coincides with JRuby 0.9.9 release
468
+ - JRuby 0.9.9 is required
469
+ - MySQL close to 100% working
470
+ - Derby improvements
471
+ - DECIMAL/NUMERIC/FLOAT/REAL bugs fixed with type recognition for Oracle,
472
+ Postgres, etc.
473
+ - HSQLDB has regressed this release and may not be functioning; we'll get it
474
+ fixed for the next one
475
+
476
+ == 0.2.3
477
+
478
+ - Release coincides (and compatible) with JRuby 0.9.8 release
479
+ - 8 bugs fixed: see http://rubyurl.com/0Da
480
+ - Improvements and compatibility fixes for Rails 1.2.x
481
+
482
+ == 0.2.1, 0.2.2
483
+
484
+ - Early releases, added better support for multiple databases
485
+
486
+ == 0.0.1
487
+
488
+ - Initial, very alpha release