Michael Schoen
2006-Jun-19 22:52 UTC
Rails AR/Oracle Unit Test: [4460] failed (getting worse)
"bitsweat" has kicked AR/Oracle while it was down...
http://dev.rubyonrails.org/changeset/4460
------------------------------------------------------------------------
r4460 | bitsweat | 2006-06-19 15:48:51 -0700 (Mon, 19 Jun 2006) | 17 lines
r4644@asus: jeremy | 2006-06-16 14:57:03 -0700
locking
r4645@asus: jeremy | 2006-06-17 12:41:30 -0700
missing reply fixture
r4646@asus: jeremy | 2006-06-19 13:05:23 -0700
Use a per-thread (rather than global) transaction mutex so you may execute
concurrent transactions on separate connections.
r4647@asus: jeremy | 2006-06-19 13:07:23 -0700
PostgreSQL: introduce allow_concurrency option which determines whether to use
blocking or asynchronous #execute. Adapters with blocking #execute will deadlock
Ruby threads. The default value is ActiveRecord::Base.allow_concurrency.
r4648@asus: jeremy | 2006-06-19 13:08:40 -0700
Pass the default allow_concurrency when instantiating new connections.
r4649@asus: jeremy | 2006-06-19 13:11:12 -0700
Break out concurrent transaction tests and run them for PostgreSQLAdapter only
(need to fork or system(''some_test_script'') for the other
adapters)
r4650@asus: jeremy | 2006-06-19 13:42:48 -0700
Row locking. Provide a locking clause with the :lock finder option or true for
the default "FOR UPDATE".
r4661@asus: jeremy | 2006-06-19 15:36:51 -0700
excise the junk mutex
------------------------------------------------------------------------
U activerecord/test/locking_test.rb
U activerecord/test/threaded_connections_test.rb
U activerecord/test/transactions_test.rb
U
activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb
U
activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb
U activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb
U activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb
U activerecord/lib/active_record/transactions.rb
U activerecord/lib/active_record/fixtures.rb
U activerecord/lib/active_record/base.rb
U activerecord/CHANGELOG
U .
Updated to revision 4460.
1) Failure:
test_to_xml(BasicsTest) [./test/base_test.rb:1239]:
<false> is not true.
2) Error:
test_add_column_not_null_with_default(MigrationTest):
ActiveRecord::StatementInvalid: OCIError: ORA-01400: cannot insert NULL into
("ARUNIT"."TESTINGS"."ID"): insert into testings
(foo) values (''hello'')
./test/../lib/active_record/connection_adapters/abstract_adapter.rb:120:in
`log''
./test/../lib/active_record/connection_adapters/oracle_adapter.rb:277:in
`execute''
./test/migration_test.rb:176:in
`test_add_column_not_null_with_default''
3) Failure:
test_sane_find_with_lock(PessimisticLockingTest) [./test/locking_test.rb:76]:
Exception raised:
Class: <ActiveRecord::StatementInvalid>
Message: <"OCIError: ORA-02014: cannot select FOR UPDATE from view with
DISTINCT, GROUP BY, etc.: select * from (select raw_sql_.*, rownum raw_rnum_
from (SELECT * FROM people WHERE (people.id = 1) ) raw_sql_ where rownum <=
1) where raw_rnum_ > 0 FOR UPDATE">
---Backtrace---
./test/../lib/active_record/connection_adapters/abstract_adapter.rb:120:in
`log''
./test/../lib/active_record/connection_adapters/oracle_adapter.rb:277:in
`execute''
./test/../lib/active_record/connection_adapters/oracle_adapter.rb:477:in
`select''
./test/../lib/active_record/connection_adapters/oracle_adapter.rb:268:in
`select_all''
./test/../lib/active_record/base.rb:416:in `find_by_sql''
./test/../lib/active_record/base.rb:950:in `find_every''
./test/../lib/active_record/base.rb:944:in `find_initial''
./test/../lib/active_record/base.rb:978:in `find_one''
./test/../lib/active_record/base.rb:967:in `find_from_ids''
./test/../lib/active_record/base.rb:408:in `find''
./test/locking_test.rb:79:in `test_sane_find_with_lock''
./test/../lib/active_record/base.rb:899:in `with_scope''
./test/locking_test.rb:78:in `test_sane_find_with_lock''
./test/../lib/active_record/connection_adapters/abstract/database_statements.rb:51:in
`transaction''
./test/../lib/active_record/transactions.rb:86:in `transaction''
./test/locking_test.rb:77:in `test_sane_find_with_lock''
./test/locking_test.rb:76:in `test_sane_find_with_lock''
---------------
898 tests, 3148 assertions, 2 failures, 1 errors
rake aborted!
Command failed with status (1): [/usr/pkg/ruby184/bin/ruby -Ilib:test:test/...]
(See full trace by running task with --trace)