Details

    • Type: Sub-task Sub-task
    • Status: Open
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: 1.9, 2.3, 2.7.3, 2.8, 2.9
    • Fix Version/s: DEV backlog
    • Component/s: Forum
    • Labels:
    • Testing Instructions:
      Hide

      Note that to test this properly you need a database with some orphaned posts. Follow these steps with a 2.3 instance without this fix applied.

      1. Revert MDL-31664.
      2. Create a forum.
      3. Create a discussion (post A) as a user.
      4. Post a reply (post B) as another user.
      5. Post another reply (post C) to Post B.
      6. Post a separate reply (post D) to Post A.
      7. Delete Post B.
      8. Verify that Post C and Post D are still in the database.

      Now apply this fix to upgrade mod/forum. Run the upgrade. Post C should be deleted from the database. Posts A and D should still be there.

      Show
      Note that to test this properly you need a database with some orphaned posts. Follow these steps with a 2.3 instance without this fix applied. 1. Revert MDL-31664 . 2. Create a forum. 3. Create a discussion (post A) as a user. 4. Post a reply (post B) as another user. 5. Post another reply (post C) to Post B. 6. Post a separate reply (post D) to Post A. 7. Delete Post B. 8. Verify that Post C and Post D are still in the database. Now apply this fix to upgrade mod/forum. Run the upgrade. Post C should be deleted from the database. Posts A and D should still be there.
    • Affected Branches:
      MOODLE_19_STABLE, MOODLE_23_STABLE, MOODLE_27_STABLE, MOODLE_28_STABLE, MOODLE_29_STABLE
    • Pull from Repository:
    • Pull Master Branch:
      MDL-13516-master

      Description

      posts without parents

        Gliffy Diagrams

          Issue Links

            Activity

            Hide
            Petr Skoda added a comment -

            reassigning to HQ

            Show
            Petr Skoda added a comment - reassigning to HQ
            Hide
            Petr Skoda added a comment -

            This should be done in forum/db/upgrade.php, it might be enough to do it in master only because sooner or later everybody will upgrade...

            Show
            Petr Skoda added a comment - This should be done in forum/db/upgrade.php, it might be enough to do it in master only because sooner or later everybody will upgrade...
            Hide
            Petr Skoda added a comment -

            hi, I think the patch is not going to perform well:

            • NOT IN should be probably replaced by LEFT JOIN with NULL condition
            • it might hit memory problems or query limits (oracle), I would recommend using recordsets
            • who is going to delete attachments and embedded images?
            Show
            Petr Skoda added a comment - hi, I think the patch is not going to perform well: NOT IN should be probably replaced by LEFT JOIN with NULL condition it might hit memory problems or query limits (oracle), I would recommend using recordsets who is going to delete attachments and embedded images?
            Hide
            Ankit Agarwal added a comment -

            assigning to petr as the reviewer
            Thanks

            Show
            Ankit Agarwal added a comment - assigning to petr as the reviewer Thanks
            Hide
            Petr Skoda added a comment -

            oh, I missed this one, +1

            Show
            Petr Skoda added a comment - oh, I missed this one, +1
            Hide
            Dan Poltawski added a comment -

            Charles - is this still relevant? If so, are you able to rebase it and send it for peer review?

            Show
            Dan Poltawski added a comment - Charles - is this still relevant? If so, are you able to rebase it and send it for peer review?
            Hide
            Charles Fulton added a comment -

            Hi Dan, any database which started life before MDL-31664 was integrated potentially has orphaned posts. That's presupposing there's no new source of difficulties. My patch doesn't address Petr's concerns about Oracle performance and embedded images. I'd say it's still relevant but it needs more work than a simple rebase.

            Show
            Charles Fulton added a comment - Hi Dan, any database which started life before MDL-31664 was integrated potentially has orphaned posts. That's presupposing there's no new source of difficulties. My patch doesn't address Petr's concerns about Oracle performance and embedded images. I'd say it's still relevant but it needs more work than a simple rebase.
            Hide
            Andrew Nicols added a comment -

            Thanks Charles,

            I'm going to remove you as the assignee as your last comment suggests that you don't intend to address the issues Petr raised.

            Cheers,

            Andrew

            Show
            Andrew Nicols added a comment - Thanks Charles, I'm going to remove you as the assignee as your last comment suggests that you don't intend to address the issues Petr raised. Cheers, Andrew

              People

              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: