Skip to content

GitLab

  • Menu
    • Projects Groups Snippets
      Help
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • G gitlabhq1
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 21
    • Issues 21
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 12
    • Merge requests 12
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • gpt
  • large_projects
  • gitlabhq1
  • Issues
  • #3748

Closed
Open
Created 12 years ago by Administrator@rootOwner
  • New issue

  • Report abuse

  • New issue

  • Report abuse

Infinite loop when displaying merge request diff

Closed

Infinite loop when displaying merge request diff

Created by: Xowap

When I try to display a merge request diff, the server goes crazy and goes on rendering templates for ever and ever:

Started GET "/framework-php/network/merge_requests/10/diffs" for 127.0.0.1 at 2013-04-26 11:20:36 +0200
Processing by MergeRequestsController#diffs as HTML
  Parameters: {"project_id"=>"framework-php/network", "id"=>"10"}
  Rendered votes/_votes_block.html.haml (0.9ms)
  Rendered merge_requests/show/_mr_title.html.haml (19.4ms)
  Rendered merge_requests/show/_how_to_merge.html.haml (0.3ms)
  Rendered merge_requests/show/_mr_box.html.haml (1.0ms)
  Rendered merge_requests/show/_mr_accept.html.haml (1.6ms)
  Rendered commits/_commit.html.haml (3.9ms)
  Rendered commits/_commit.html.haml (3.9ms)
  Rendered commits/_commit.html.haml (3.8ms)
  Rendered commits/_commit.html.haml (3.8ms)
  Rendered merge_requests/show/_commits.html.haml (16.2ms)
  Rendered notes/_form.html.haml (2.7ms)
  Rendered notes/_notes_with_form.html.haml (7.4ms)
  Rendered commits/_diff_head.html.haml (105.0ms)
  Rendered notes/_diff_note_link.html.haml (1.8ms)
  Rendered commits/_text_file.html.haml (8.2ms)
  Rendered notes/_diff_note_link.html.haml (0.6ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered notes/_diff_note_link.html.haml (0.5ms)
  Rendered commits/_text_file.html.haml (18.1ms)
  Rendered notes/_diff_note_link.html.haml (0.6ms)
  (this goes on for ever and everà

I can't find out why this behaviour would happen, but it is quite weird. I don't know what other indications/logs I could give to help, just ask!

Thanks

Linked issues
0


  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: Xowap

    Okay, looks like that this is caused by a huge merge request actually, I guess that this is caused by all the diffs being rendered.

    In that case, it would be nice to have this at least done in background, so it doesn't block the server.

    By Administrator on 2013-04-26T09:58:52 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: kenips

    See the same issue - it took 78s to render a fairly large MR, and of course nginx timed out after. However the server did not cache the render and retries to re-render the diff again. Perhaps there should be some cacheing per commit hash?

    By Administrator on 2013-04-28T23:30:13 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: bbodenmiller

    Sounds like a feature request. Please post to http://feedback.gitlab.com @senny

    By Administrator on 2013-05-20T08:31:15 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: senny

    I'd like to hear the opinion of @randx before we close. I think such long-running requests should not occur. Is there something we can do agains that?

    By Administrator on 2013-05-20T09:15:10 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: bbodenmiller

    I wouldn't know how to go about it but diffs could be calculated in background task and cached as suggested.

    By Administrator on 2013-05-20T15:25:03 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: kenips

    What if we simply cache the partials? It should be picked up on next request? Not really solving the problem I guess.

    By Administrator on 2013-05-23T02:39:51 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: bbodenmiller

    Does this issue still exist in 5.2 or the latest master? Thanks for the issue report. Please reformat your issue to conform to the issue tracker guidelines found in our contributing guidelines.

    By Administrator on 2013-06-14T14:40:29 (imported from GitLab project)

  • Administrator
    Administrator @root · 12 years ago
    Owner

    Created by: Xowap

    The issue is fixed, thanks :)

    By Administrator on 2013-06-14T20:45:17 (imported from GitLab project)

  • Administrator
    Administrator @root · 11 years ago
    Owner

    Created by: hlesesne

    I'm still seeing this issue (or something similar) with big diffs. I'm running 6.Occasionally it renders all the way (200+ seconds sometimes), but often displays a 500.

    By Administrator on 2013-09-01T21:20:33 (imported from GitLab project)

  • Administrator
    Administrator @root · 11 years ago
    Owner

    Created by: aiurm

    👍

    I had similar problems in Gitlab versions < 6.0. Today I updated to 6.0 and now I am getting a 500 because of a MySQL error. Here is the issue I created for this #4971 Maybe it is the same problem.

    By Administrator on 2013-09-03T11:43:58 (imported from GitLab project)

  • You're only seeing other activity in the feed. To add a comment, switch to one of the following options.
Please register or sign in to reply
0 Assignees
None
Assign to
Milestone
No milestone
None
None
Time tracking
Due date
None
None
3
Labels
Awaiting feedback Diff/commit history Git/Grit
Assign labels
  • No matching results
  • Manage project labels
Confidentiality
Not confidential

You are going to turn on confidentiality. Only team members with at least Reporter access will be able to see and leave comments on the issue.

Lock issue
Unlocked
participants
Reference:

Menu

Projects Groups Snippets
Help