Skip to content

Deface Error in issues_show.rb causes Application Crash #201

@oscar-mohe-mp

Description

@oscar-mohe-mp

Hi!
Today on a Redmine instance that has been up and running without issues for nearly a month I had a crash. Using Gemini as my rubber duck, we found that the cause of the crash was inside the additionals plugin and were able to patch it. Here's the report:

📋 Summary

The Redmine application crashes during startup (or after a cache clear) due to a Deface validation failure within the Additionals plugin. The specific override related to attachments is incompatible with the installed Redmine core view files.

🔎 Error Details

The application log shows that the original content hash expected by a plugin override no longer matches the actual content of the target view, leading to an application exception:

Deface: [ERROR] The original source for 'show-issue-attachments' has changed, this override should be reviewed to ensure it's still valid.

📝 Culprit Code Block

The conflicting code is located in the file plugins/additionals/app/overrides/issues_show.rb.

The specific block that failed validation is the override named 'show-issue-attachments':

Deface::Override.new virtual_path: 'issues/show',
                       name: 'show-issue-attachments',
                       # ... other properties ...
                       original: 'e2a825486b3b71ba51c0j2fa1f72bdd5e98e1b964', # this is not the real hash just in case
                       partial: 'issues/hide_attachments'

✅ Temporary Workaround

The service was made stable by commenting out the entire conflicting Deface::Override block in issues_show.rb and restarting the application.

Here is my instance setup:

Environment:
  Redmine version                6.0.6.stable
  Ruby version                   3.3.9-p170 (2025-07-24) [x86_64-linux]
  Rails version                  7.2.2.1
  Environment                    production
  Database adapter               PostgreSQL
  Mailer queue                   ActiveJob::QueueAdapters::AsyncAdapter
  Mailer delivery                smtp
Redmine settings:
  Redmine theme                  Redminex_theme
SCM:
  Subversion                     1.14.2
  Mercurial                      6.3.2
  Cvs                            1.12.13
  Bazaar                         3.3.2
  Git                            2.39.5
  Filesystem                     
Redmine plugins:
  000_redmine_x_ux_upgrade       1.4.4
  additionals                    4.2.0
  computed_custom_field          1.1.0
  redmine_agile                  1.6.11
  redmine_checklists             3.1.26
  redmine_contacts               4.4.2
  redmine_oauth                  3.0.5
  redmine_reporter               2.0.5
  redmine_webhook                0.3.0
  redmine_x_agile_my_page        1.1.6
  redmine_x_assets               2.1.16
  redmine_x_client               1.1.0
  redmine_x_gantt                2.1.15
  redmine_x_issue_list           1.1.9
  redmine_x_project_templates    1.2.5
  redmine_x_resources            2.1.19
  redmine_x_statistics           1.1.6
  redmine_x_timesheet            1.1.0
  redmineup_tags                 2.0.15

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions