Defect #88
closedNew version: Active Record fails when no date is give
0%
Description
When I've tried to create a "new version" for a project without supplying a date I've received this
exception:
ActiveRecord::StatementInvalid in ProjectsController#add_version
SQLite3::SQLException: SQL logic error or missing database: INSERT INTO versions ("created_on", "name",
"project_id", "wiki_page_title", "updated_on", "description",
"effective_date") VALUES
RAILS_ROOT: ./script/../config/..
Application Trace | Framework Trace | Full Trace
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract_adapter.
rb:128:in `log'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:145:in `execute'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:346:in `catch_schema_changes'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:145:in `execute'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:160:in `insert'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1811:in
`create_without_callbacks'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:254:in
`create_without_timestamps'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/timestamp.rb:39:in `create'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1789:in
`create_or_update_without_callbacks'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:242:in
`create_or_update'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1545:in
`save_without_validation'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/validations.rb:752:in
`save_without_transactions'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/database
_statements.rb:59:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:95:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:121:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save'
#{RAILS_ROOT}/app/controllers/projects_controller.rb:178:in `add_version'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract_adapter.
rb:128:in `log'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:145:in `execute'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:346:in `catch_schema_changes'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:145:in `execute'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:160:in `insert'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1811:in
`create_without_callbacks'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:254:in
`create_without_timestamps'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/timestamp.rb:39:in `create'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1789:in
`create_or_update_without_callbacks'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:242:in
`create_or_update'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1545:in
`save_without_validation'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/validations.rb:752:in
`save_without_transactions'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/database
_statements.rb:59:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:95:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:121:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in `send'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in
`perform_action_without_filters'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:632:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:634:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:619:in
`perform_action_without_benchmark'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in
`perform_action_without_rescue'
c:/Program Files/Ruby/lib/ruby/1.8/benchmark.rb:293:in `measure'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in
`perform_action_without_rescue'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/rescue.rb:83:in `perform_action'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in `send'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in
`process_without_filters'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:624:in
`process_without_session_management_support'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/session_management.rb:114:in
`process'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:330:in `process'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in `dispatch'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:113:in `handle_dispatch'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:79:in `service'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:162:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:95:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:92:in `each'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:92:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:23:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:82:in `start'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:63:in `dispatch'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/webrick.rb:59
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require'
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:495:in `require'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:342:in
`new_constants_in'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:495:in `require'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require'
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'
script/server:3
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract_adapter.
rb:128:in `log'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:145:in `execute'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:346:in `catch_schema_changes'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:145:in `execute'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/sqlite_adapter.rb
:160:in `insert'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1811:in
`create_without_callbacks'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:254:in
`create_without_timestamps'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/timestamp.rb:39:in `create'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1789:in
`create_or_update_without_callbacks'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:242:in
`create_or_update'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1545:in
`save_without_validation'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/validations.rb:752:in
`save_without_transactions'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/database
_statements.rb:59:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:95:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:121:in `transaction'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save'
#{RAILS_ROOT}/app/controllers/projects_controller.rb:178:in `add_version'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in `send'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in
`perform_action_without_filters'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:632:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:634:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:619:in
`perform_action_without_benchmark'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in
`perform_action_without_rescue'
c:/Program Files/Ruby/lib/ruby/1.8/benchmark.rb:293:in `measure'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in
`perform_action_without_rescue'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/rescue.rb:83:in `perform_action'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in `send'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in
`process_without_filters'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:624:in
`process_without_session_management_support'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/session_management.rb:114:in
`process'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:330:in `process'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in `dispatch'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:113:in `handle_dispatch'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:79:in `service'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:162:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:95:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:92:in `each'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:92:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:23:in `start'
c:/Program Files/Ruby/lib/ruby/1.8/webrick/server.rb:82:in `start'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/webrick_server.rb:63:in `dispatch'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/webrick.rb:59
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require'
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:495:in `require'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:342:in
`new_constants_in'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:495:in `require'
c:/Program Files/Ruby/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require'
c:/Program Files/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'
script/server:3
Request
Parameters: {"commit"=>"Create", "id"=>"3",
"version"=>{"name"=>"0.2", "description"=>"",
"effective_date"=>""}}
Show session dump
---
:user_id: 1
usersindex_sort:
:order: asc
:key: login
adminprojects_sort:
:order: asc
:key: name
flash: !map:ActionController::Flash::FlashHash {}
Response
Headers: {"cookie"=>[], "Cache-Control"=>"no-cache"}
Updated by Jean-Philippe Lang over 17 years ago
Hi,
Initially, null values for version dates were not allowed.
The change was done in migration 48 but it seems to have no effect
with SQLite, and thus null values are still not allowed with
this database.
I've fixed the initial table creation but if you want to keep
your data, you'll need to:
1. export your data
2. create a new database (with redmine rev 611 or higher), using
rake db:migrate
3. import your data in the new database
Regards