aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Merge branch 'release/0.9' into rails-3-developLouise Crow2013-04-24-4257/+7515
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Gemfile.lock app/controllers/public_body_controller.rb app/mailers/track_mailer.rb app/views/request/_hidden_correspondence.html.erb app/views/request/_sidebar.html.erb app/views/request/hidden.html.erb app/views/request/new_please_describe.html.erb app/views/request/preview.html.erb app/views/user/show.html.erb config/environment.rb config/routes.rb spec/controllers/public_body_controller_spec.rb
| * Bump alaveteli versionrelease/0.9Louise Crow2013-04-24-1/+1
| |
| * Fix string interpolation param.Louise Crow2013-04-24-1/+1
| |
| * Make sure raw emails are loaded before running integration specLouise Crow2013-04-23-0/+1
| |
| * Translation files re-pulled from transifex.Louise Crow2013-04-23-145/+163
| |
| * Translation file format fixes.Louise Crow2013-04-23-3/+3
| |
| * Results of running bundle exec rake gettext:store_model_attributes, followed ↵Louise Crow2013-04-23-41/+34
| | | | | | | | by bundle exec rake gettext:find
| * Merge latest translations from Transifex with new interpolation format.Louise Crow2013-04-23-383/+3768
| |
| * Add changes for release 0.9Louise Crow2013-04-23-0/+10
| |
| * Restore call to N_Louise Crow2013-04-23-1/+1
| |
| * Remove method restriction on describe_state - as noted later in the ↵Louise Crow2013-04-23-1/+1
| | | | | | | | routes.rb file, the usual REST method expectations don't work with the post_redirect mechanism.
| * Fix the deadlock on dealing with incoming emailMark Longair2013-04-18-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #336 There was an occasional deadlock when two emails for the same request came in near-simultaneously; two processes would be started via script/mailin, each to deal with one email which are both updating the same InfoRequest. The error would look like: 2013-04-07 09:19:03 BST [13398]: [2-1] DETAIL: Process 13398 waits for ShareLock on transaction 36193647; blocked by process 13397. Process 13397 waits for ExclusiveLock on tuple (390,35) of relation 32918788 of database 32918687; blocked by process 13398. Process 13398: UPDATE "info_requests" SET "updated_at" = '2013-04-07 08:19:02.139515', "awaiting_description" = 't' WHERE "id" = 156200 Process 13397: UPDATE "info_requests" SET "updated_at" = '2013-04-07 08:19:02.143624', "awaiting_description" = 't' WHERE "id" = 156200 This arose from the following section of code: ActiveRecord::Base.transaction do raw_email = RawEmail.new incoming_message.raw_email = raw_email incoming_message.info_request = self incoming_message.save! raw_email.data = raw_email_data raw_email.save! self.awaiting_description = true params = { :incoming_message_id => incoming_message.id } if !rejected_reason.empty? params[:rejected_reason] = rejected_reason.to_str end self.log_event("response", params) self.save! end Matthew Somerville explained what was happening here in the issue report; to repeat his explanation from the bug report, both processes enter the transaction block and acquire a ShareLock on self with: incoming_message.info_request = self incoming_message.save! However, in order to update the self.awaiting_description field of the InfoRequest, with: self.awaiting_description = true [...] self.save! ... the ShareLock needs to be upgraded to an ExclusiveLock, but both will wait until the other's ShareLock is released, which would only happen at the end of the transaction. We can avoid this deadlock by using SELECT ... FOR UPDATE for the row in info_requests. In Rails 3.2.0 there is ActiveRecord support for this (via with_lock and lock! on a model instance) but so as not to require upgrading rails, I'm just using raw SQL.
| * Also silence network unreachable errors.Louise Crow2013-04-17-6/+6
| |
| * Translation cleanup.Louise Crow2013-04-16-1738/+1679
| |
| * Remove trailing space.Louise Crow2013-04-16-27/+27
| |
| * Remove duplicate translation string.Louise Crow2013-04-16-3/+0
| |
| * Remove extra translation stringLouise Crow2013-04-16-3/+0
| |
| * Remove extra quoteLouise Crow2013-04-16-1/+1
| |
| * Add missing quote escapingLouise Crow2013-04-16-1/+1
| |
| * Fix up broken translation msgidLouise Crow2013-04-16-2/+1
| |
| * Update outgoing message signoff translationLouise Crow2013-04-16-1/+1
| |
| * Remove duplicate string resulting from stripping link from around text.Louise Crow2013-04-16-84/+9
| |
| * Update locale file to use new variable interpolation format.Louise Crow2013-04-16-85/+82
| |
| * Merge branch 'feature/final-consistent-translation-interpolation' into developLouise Crow2013-04-16-2784/+2786
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: app/models/outgoing_message.rb app/views/general/search.rhtml app/views/public_body/list.rhtml app/views/public_body/show.rhtml app/views/public_body/view_email.rhtml app/views/request/_after_actions.rhtml app/views/request/_followup.rhtml app/views/request/_sidebar.rhtml app/views/request/new.rhtml app/views/request/select_authority.rhtml app/views/request/upload_response.rhtml locale/aln/app.po locale/app.pot locale/ar/app.po locale/bs/app.po locale/ca/app.po locale/cs/app.po locale/cy/app.po locale/de/app.po locale/en/app.po locale/en_IE/app.po locale/es/app.po locale/eu/app.po locale/fr/app.po locale/gl/app.po locale/hu_HU/app.po locale/id/app.po locale/nb_NO/app.po locale/pt_BR/app.po locale/ro_RO/app.po locale/sl/app.po locale/sq/app.po locale/sr@latin/app.po locale/tr/app.po locale/uk/app.po
| | * Fix typoLouise Crow2013-04-15-1/+1
| | |
| | * Resolving merge conflictsLouise Crow2013-04-15-187/+28
| | |
| | * Removing unused translation stringMatthew Landauer2013-04-15-18/+0
| | |
| | * In translation strings replace %s with {{}} formattingMatthew Landauer2013-04-15-41/+41
| | |
| | * In translation strings replace %s with {{}} formattingMatthew Landauer2013-04-15-52/+42
| | | | | | | | | | | | | | | | | | | | | Conflicts: locale/eu/app.po locale/sq/app.po
| | * In translation strings replace %{} with {{}} formattingMatthew Landauer2013-04-15-45/+42
| | |
| | * Replace %s with {{}} in "Everything that you enter on this page..."Louise Crow2013-04-15-86/+87
| | |
| | * Replace %s with {{}} in translation "If you are thinking of using a ↵Louise Crow2013-04-15-80/+71
| | | | | | | | | | | | pseudonym..."
| | * Replace %s with {{}} in translation "We do not have a working.."Louise Crow2013-04-15-50/+43
| | |
| | * Change %s to {{}} in translation "If you are the requester,..."Louise Crow2013-04-15-40/+47
| | |
| | * Replacing %s with {{}} in translations "From the request page, try replying ↵Louise Crow2013-04-15-50/+219
| | | | | | | | | | | | to a particular message.."
| | * Replace %s with {{}} in translation "This comment has been hidden"Louise Crow2013-04-15-40/+40
| | |
| | * Replace %s with {{}} in translation "When you're done..."Louise Crow2013-04-15-41/+41
| | |
| | * Replace %s with {{}} in translation "This outgoing message has been hidden"Louise Crow2013-04-15-39/+39
| | |
| | * Replace %s with {{}} in translation "This response has been hidden."Louise Crow2013-04-15-41/+41
| | |
| | * Replace %s with {{}} in 'Keep it focused' translation.Louise Crow2013-04-15-43/+43
| | |
| | * Replacing %s with {{}} in translation of "Enter your response below..."Louise Crow2013-04-15-30/+30
| | |
| | * Replace %s with {{}} in translation for ""This request has been marked for ↵Louise Crow2013-04-15-29/+29
| | | | | | | | | | | | review by the site administrators..."
| | * Replace %s with {{}} in translation "Your response will appear.."Louise Crow2013-04-15-50/+43
| | |
| | * Replace %s with {{}} in translations.Louise Crow2013-04-10-70/+55
| | |
| | * Replace %s with {{}} in translation.Louise Crow2013-04-10-44/+44
| | |
| | * Replace %s with {{}} in translation.Louise Crow2013-04-10-42/+42
| | |
| | * Replace %s with {{}} in translation.Louise Crow2013-04-10-42/+42
| | |
| | * Replace %s with {{}} in translation.Louise Crow2013-04-10-42/+42
| | |
| | * Replace %s with {{}} in translations.Louise Crow2013-04-10-43/+43
| | |
| | * Replace %s with {{}} in translation "Can I request information about myself?..."Louise Crow2013-04-10-44/+44
| | |