Uploaded image for project: 'CiviCRM'
  1. CiviCRM
  2. CRM-10007

Implement infrastructure for long upgrade processes

    Details

    • Type: Improvement
    • Status: Done/Fixed
    • Priority: Major
    • Resolution: Fixed/Completed
    • Affects Version/s: 4.2.0
    • Fix Version/s: 4.2.0
    • Component/s: None
    • Labels:
      None

      Description

      When performing significant upgrade tasks (like CRM-9923 or reorganizing activity-contact relationship tables) on large datasets, some common PHP execution environments will abend. To better manage this problem, we should

      1. Provide a queue abstraction
      2. Provide a queue implementation which executes tasks interactively (similar to Drupal's Batch API)
      3. Modify the upgrade logic to submit bite-sized upgrade tasks to the queue and to use the queue
      4. Modify the upgrade logic to handle the special case of bootstrapping the queue table(s)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                timotten Tim Otten
                Reporter:
                timotten Tim Otten
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: