Commit Graph

680 Commits

Author SHA1 Message Date
Jeremy Kemper
809dd8e87e MySQL: fixes for the bundled mysql.rb driver. References #3160.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3274 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-10 21:38:28 +00:00
Jeremy Kemper
42576fffe2 SQLServer: fix obscure optimistic locking bug, support uniqueidentifier columns, cope with tables names qualified by owner, cope with columns with desc in the name, cope with primary keys with select in the name. Closes #3068, #2930, #3067, #1950, #3057, #3162.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3270 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-10 00:52:41 +00:00
Jeremy Kemper
39b71bb8a1 MySQL: ensure that @config is set.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3264 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-09 23:20:20 +00:00
Jeremy Kemper
a40b6fd034 Fix bundled mysql.rb to correctly check for PROTO_41. Fixed scramble41 with nil password. Fixed change_user with PROTO_41.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3260 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-09 22:59:54 +00:00
Jeremy Kemper
57838bd4c6 Oracle: active? performs a select instead of a commit. References #3133.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3252 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 07:27:48 +00:00
David Heinemeier Hansson
32b27f997b Remove insignificant classes from docs
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3249 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 05:43:54 +00:00
Jeremy Kemper
cf54a71352 MySQL: more robust test for nullified result hashes. References #3124.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3246 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 05:07:45 +00:00
Jeremy Kemper
df901ce345 SQLite: find database file when RAILS_ROOT is a symlink. References #3116.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3244 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:51:18 +00:00
Jeremy Kemper
d496db1388 Reloading an instance refreshes its aggregations as well as its associations. References #3024.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3242 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:46:57 +00:00
David Heinemeier Hansson
e466fc45ca Fixed that using :include together with :conditions array in Base.find would cause NoMethodError (closes #2887) [Paul Hammmond]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3240 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:44:54 +00:00
Jeremy Kemper
c1537e89f8 PostgreSQL: more robust sequence name discovery. References #3087.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3235 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:34:26 +00:00
Jeremy Kemper
bae97ef483 Oracle: use syntax compatible with Oracle 8. References #3131.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3233 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:21:38 +00:00
David Heinemeier Hansson
c7bdd00b86 Fixed RDoc warnings [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3228 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 03:23:31 +00:00
David Heinemeier Hansson
4263490728 Fix has_many :through
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3227 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-07 23:20:11 +00:00
David Heinemeier Hansson
88f9418c77 Dont overwrite the documentation from the real base class
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3223 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-05 23:38:49 +00:00
Jeremy Kemper
3ed6675c68 Clear the connection cache entry when a new connection is established on the same class.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3222 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-05 21:48:23 +00:00
Jeremy Kemper
b13573ed37 Clear connection cache after rolling back transaction.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3221 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-05 19:58:11 +00:00
Jeremy Kemper
0632f5a93e Move dummy active? and reconnect! from sqlite to base adapter. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3219 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-04 06:15:04 +00:00
Jeremy Kemper
dc64887f21 Connection cache to speed up retrieve_connection and get rid of dirty connection marking. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3218 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-04 05:56:49 +00:00
Jeremy Kemper
6c9cfd64ca MySQL: work around ruby-mysql/mysql-ruby inconsistency with mysql.stat. Eliminate usage of mysql.ping because it doesn't guarantee reconnect. Explicitly close and reopen the connection instead. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3216 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-03 23:04:34 +00:00
David Heinemeier Hansson
6abda696b5 Added preliminary support for join models [DHH] Added preliminary support for polymorphic associations [DHH] Refactored associations to use reflections to get DRYer, beware, major refactoring -- double check before deploying anything with this (all tests pass, but..)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3213 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-03 04:29:55 +00:00
David Heinemeier Hansson
57b7532b91 Work-in progress for providing better join model support and polymorphic associations
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3209 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 06:03:43 +00:00
Marcel Molina
2e42167058 Allow validate_uniqueness_of to be scoped by more than just one column. Closes #1559.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3206 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 04:30:46 +00:00
Jeremy Kemper
3d0e3c9290 Firebird: active? and reconnect! methods for handling stale connections. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3205 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 01:19:18 +00:00
Jeremy Kemper
13cfabb2ff Firebird: updated for FireRuby 0.4.0. References #3009.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3202 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 00:37:32 +00:00
Jeremy Kemper
b44720452c PostgreSQL: active? compatibility with the pure-Ruby driver. Still need to move connect into the adapter since postgres-pr doesn't support #reset. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3195 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-28 21:46:34 +00:00
Jeremy Kemper
75d0623b3d MySQL: active? compatibility with the pure-Ruby driver. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3194 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-28 21:00:03 +00:00
Jeremy Kemper
14d50e9da3 Oracle: active? check pings the database rather than testing the last command status. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3189 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-24 19:50:10 +00:00
Jeremy Kemper
6c1a356a1a SQLServer: resolve column aliasing/quoting collision when using limit or offset in an eager find. References #2974.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3184 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-24 07:15:00 +00:00
Jeremy Kemper
2b28575734 Reloading a model doesn't lose track of its connection. References #2996.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3182 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-24 07:01:43 +00:00
Florian Weber
c66ac2102b Fixed bug where using update_attribute after pushing a record to a habtm association of the object caused duplicate rows in the join table. #2888
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3167 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-23 21:03:25 +00:00
Jeremy Kemper
e8f664dde0 MySQL, PostgreSQL: reconnect! also reconfigures the connection. Otherwise, the connection 'loses' its settings if it times out and is reconnected. Closes #2978.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3165 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-22 23:55:04 +00:00
Jeremy Kemper
d21ba5aec9 has_and_belongs_to_many: use JOIN instead of LEFT JOIN. References #2937.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3155 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-21 22:27:19 +00:00
Jeremy Kemper
f1a184fe88 MySQL: introduce :encoding option to specify the character set for client, connection, and results. Only available for MySQL 4.1 and later with the mysql-ruby driver. Do SHOW CHARACTER SET in mysql client to see available encodings. Closes #2975.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3152 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-21 18:51:27 +00:00
Jeremy Kemper
baad1c4cdc Simpler Mysql load test.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3148 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-21 12:47:28 +00:00
Marcel Molina
119155bebb Revert [3130]. Behavior of introducing Kernel.binding causes breakage.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3142 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-21 09:34:10 +00:00
Jeremy Kemper
5177333e70 Use Kernel.binding rather than binding to allow columns of that name. References #2973.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3139 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-21 08:34:50 +00:00
Jeremy Kemper
81c5242f43 r3181@asus: jeremy | 2005-11-19 02:52:24 -0800
Mark connections for verification.  Retrieve connection verifies before returning a connection.  Verification tests whether the connection is marked then reconnects if the connection is inactive.  All active connections are marked for verification after a request is handled.  References #428.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3096 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-19 10:55:11 +00:00
Jeremy Kemper
2ed6d365bb Correct boolean handling in generated reader methods. References #2945.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3092 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-19 09:53:36 +00:00
Jeremy Kemper
b51c3399eb Don't generate read methods for columns whose names are not valid ruby method names. References #2946.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3089 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-19 06:47:26 +00:00
Jeremy Kemper
fd66ccb016 Document :force option to create_table. References #2921.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3075 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-17 20:48:10 +00:00
Jeremy Kemper
86da56a654 Don't add the same conditions twice in has_one finder sql. References #2916.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3074 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-17 20:45:38 +00:00
Marcel Molina
5cb2aa722d Rename Version constant to VERSION. Closes #2802.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3065 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-17 00:32:16 +00:00
Jeremy Kemper
4cd8910279 r3118@asus: jeremy | 2005-11-16 00:32:48 -0800
correct prefetch_primary_key? table_name param


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3053 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-16 08:33:51 +00:00
Jeremy Kemper
9cb02c5317 r3116@asus: jeremy | 2005-11-16 00:17:06 -0800
Introducing the Firebird adapter.  Closes #1874.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3052 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-16 08:18:13 +00:00
Jeremy Kemper
2076dca63f r3095@asus: jeremy | 2005-11-15 22:40:51 -0800
Ticket #1874 - Firebird adapter
 r3107@asus:  jeremy | 2005-11-16 00:06:14 -0800
 quote column aliases
 r3108@asus:  jeremy | 2005-11-16 00:08:12 -0800
 quote columns in construct_conditions_from_arguments.  update sequence_name docs.  introduce prefetched primary keys.
 r3109@asus:  jeremy | 2005-11-16 00:09:08 -0800
 double-quote rather than single-quote sqlite columns
 r3110@asus:  jeremy | 2005-11-16 00:09:56 -0800
 quote column names and use attribute_condition in validates_uniqueness_of
 r3111@asus:  jeremy | 2005-11-16 00:12:24 -0800
 Use QUOTED_TYPE constant in tests
 r3112@asus:  jeremy | 2005-11-16 00:13:28 -0800
 restrict test_inserts_with_pre_and_suffix to those adapters which support migrations
 r3113@asus:  jeremy | 2005-11-16 00:14:09 -0800
 Use QUOTED_TYPE constant in tests
 r3114@asus:  jeremy | 2005-11-16 00:14:30 -0800
 Use QUOTED_TYPE constant in tests


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3051 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-16 08:16:54 +00:00
Jeremy Kemper
c98011bc32 SQLServer: active? and reconnect! methods for handling stale connections. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3045 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-15 15:58:36 +00:00
Jeremy Kemper
e7b65b590a SQLServer: active? and reconnect! methods for handling stale connections. References #428.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3044 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-15 11:35:14 +00:00
Jeremy Kemper
3441dfdb12 Associations handle case-equality more consistently: item.parts.is_a?(Array) and item.parts === Array. Closes #1345.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3043 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-15 10:48:32 +00:00
Jeremy Kemper
fb1efcaf91 SQLServer: insert uses given primary key value if not nil rather than SELECT @@IDENTITY. References #2866.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3035 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-14 22:24:55 +00:00