Add-ons
  1. Add-ons
  2. CONTRIB-4306

Progress bar won't update and just goes to a blank screen.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 2.4.2
    • Fix Version/s: None
    • Component/s: Block: Progress
    • Labels:
      None
    • Affected Branches:
      MOODLE_24_STABLE
    • Rank:
      50348

      Description

      I have been using progress bars on this course quite happily for a few weeks.
      No issues. Today I went to add a new item to a progress bar.
      It will not allow me to update. The screen just goes blank.

      http://student.drouinsc.vic.edu.au/moodle/course/view.php?id=11100&sesskey=3ekH5Nhe9t&bui_editid=15734

      is the URL of the screen it takes me too.
      Have tried different browsers and different computers.
      I can still access the "Overview of students" information and it is working fine.
      I can still change progress bars on other courses. They work fine.
      I have tried putting a new progress bar on this course and it won't configure either.
      I am stuck.

      1. bungpage.png
        195 kB
      2. error1.PNG
        17 kB
      3. pb.jpg
        29 kB

        Issue Links

          Activity

          Hide
          Rob Monk added a comment -

          This is all you get or you just get a blank screen.

          Show
          Rob Monk added a comment - This is all you get or you just get a blank screen.
          Hide
          Rob Monk added a comment -

          Trying to narrow down the issue is difficult. It has now happened to at least 6 other users.
          In my case it happened after I duplicated a task. I have since learnt that others were importing from my course. (Don't really know if either of these would be contributing factors).
          Some people get the 1/2 loaded screen like that above. Some get the blank screen like me.

          Show
          Rob Monk added a comment - Trying to narrow down the issue is difficult. It has now happened to at least 6 other users. In my case it happened after I duplicated a task. I have since learnt that others were importing from my course. (Don't really know if either of these would be contributing factors). Some people get the 1/2 loaded screen like that above. Some get the blank screen like me.
          Hide
          Michael de Raadt added a comment -

          Hi, Rob.

          I wonder if you have a large number of resource/activities in your course. If so, this may be a duplicate of CONTRIB-4302.

          Alternately, I wonder if there is a particular activity that is causing this problem. What types of activities have you added most recently?

          Show
          Michael de Raadt added a comment - Hi, Rob. I wonder if you have a large number of resource/activities in your course. If so, this may be a duplicate of CONTRIB-4302 . Alternately, I wonder if there is a particular activity that is causing this problem. What types of activities have you added most recently?
          Hide
          Rob Monk added a comment -

          Not sure if there is any particular activity causing the issue. My other two courses are smaller and they have no issues so it may be a size thing. The course where the progress bars a frozen is a large course but I did not add any particular activities to it before the progress bars broke.
          In the meantime we have a number of courses with lovely progress bars on them where the progress bar cannot be updated.
          Are there any server settings we could adjust to allow us to at least access the broken progress bars?

          Show
          Rob Monk added a comment - Not sure if there is any particular activity causing the issue. My other two courses are smaller and they have no issues so it may be a size thing. The course where the progress bars a frozen is a large course but I did not add any particular activities to it before the progress bars broke. In the meantime we have a number of courses with lovely progress bars on them where the progress bar cannot be updated. Are there any server settings we could adjust to allow us to at least access the broken progress bars?
          Hide
          Rob Monk added a comment -

          I have tried many things to fix my broken progress bars. None have been successful.
          The courses where they have stopped working are all fairly large. They are all courses that have been "restored backup". They are what I call 2nd or 3rd generation courses. Probably started life in 1.9.
          After deleting all other blocks on the page I get closer. Rather than just a blank screen I now get the "Configuring a progress bar" header.
          I have tried a variety of themes. No difference.
          Another staff member having similar issues but is in a better place than me. He has progress bars on his course. He is able to edit one of them but not the other. On my course I have 3 progress bars and cannot edit any of them.
          Is there anything we can try to fix it or should I just advise staff to not use progress bars yet.

          Show
          Rob Monk added a comment - I have tried many things to fix my broken progress bars. None have been successful. The courses where they have stopped working are all fairly large. They are all courses that have been "restored backup". They are what I call 2nd or 3rd generation courses. Probably started life in 1.9. After deleting all other blocks on the page I get closer. Rather than just a blank screen I now get the "Configuring a progress bar" header. I have tried a variety of themes. No difference. Another staff member having similar issues but is in a better place than me. He has progress bars on his course. He is able to edit one of them but not the other. On my course I have 3 progress bars and cannot edit any of them. Is there anything we can try to fix it or should I just advise staff to not use progress bars yet.
          Hide
          Michael de Raadt added a comment -

          I'm not sure what access you have to the database, but you could try increasing the size of the configdata field in the block_instances table.

          If you could test that, I'd be grateful. I've been considering trying to shift the encoded data from this size limited field to fields in a DB table. It would be good to know if you are maxing out that limit.

          Show
          Michael de Raadt added a comment - I'm not sure what access you have to the database, but you could try increasing the size of the configdata field in the block_instances table. If you could test that, I'd be grateful. I've been considering trying to shift the encoded data from this size limited field to fields in a DB table. It would be good to know if you are maxing out that limit.
          Hide
          Rob Monk added a comment -

          We will try that. Waiting till tonight to back up the db before making any changes.

          Show
          Rob Monk added a comment - We will try that. Waiting till tonight to back up the db before making any changes.
          Hide
          Rob Monk added a comment -

          The plot thickens.
          Now we have courses displaying strangely before the Progress Bar stops working. See Bungcourse above. Ever seen this before? When we change themes it fixes itself.

          Show
          Rob Monk added a comment - The plot thickens. Now we have courses displaying strangely before the Progress Bar stops working. See Bungcourse above. Ever seen this before? When we change themes it fixes itself.
          Hide
          Michael de Raadt added a comment -

          Hi, Rob.

          There could be an error in one of the queries used by the Progress Bar. It could be causing an error that is haulting the page loading.

          Can you turn on debugging and see if there are any errors?

          http://docs.moodle.org/en/Debugging

          Show
          Michael de Raadt added a comment - Hi, Rob. There could be an error in one of the queries used by the Progress Bar. It could be causing an error that is haulting the page loading. Can you turn on debugging and see if there are any errors? http://docs.moodle.org/en/Debugging
          Hide
          Rob Monk added a comment -

          Here is what the error was when I try to adjust the progress bar.
          Progress Bar Error Messages

          Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 285592 bytes) in /var/www/moodle/admin/settings/plugins.php on line 159

          Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 285592 bytes) in /var/www/moodle/admin/settings/plugins.php on line 159

          The top of my page had all these errors???

          The block papercut does not define the standard capability block/papercut:addinstance
          o line 598 of /blocks/moodleblock.class.php: call to debugging()
          o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability()
          o line 236 of /lib/blocklib.php: call to block_base->user_can_addto()
          o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks()
          o line 1007 of /lib/blocklib.php: call to block_add_block_ui()
          o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
          o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content()
          o line 807 of /lib/outputrenderers.php: call to include()
          o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
          o line 240 of /course/view.php: call to core_renderer->header()
          The block glossary_export_to_quiz does not define the standard capability block/glossary_export_to_quiz:addinstance
          o line 598 of /blocks/moodleblock.class.php: call to debugging()
          o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability()
          o line 236 of /lib/blocklib.php: call to block_base->user_can_addto()
          o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks()
          o line 1007 of /lib/blocklib.php: call to block_add_block_ui()
          o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
          o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content()
          o line 807 of /lib/outputrenderers.php: call to include()
          o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
          o line 240 of /course/view.php: call to core_renderer->header()
          The block email_user_reports does not define the standard capability block/email_user_reports:addinstance
          o line 598 of /blocks/moodleblock.class.php: call to debugging()
          o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability()
          o line 236 of /lib/blocklib.php: call to block_base->user_can_addto()
          o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks()
          o line 1007 of /lib/blocklib.php: call to block_add_block_ui()
          o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
          o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content()
          o line 807 of /lib/outputrenderers.php: call to include()
          o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
          o line 240 of /course/view.php: call to core_renderer->header()
          The block course_results does not define the standard capability block/course_results:addinstance
          o line 598 of /blocks/moodleblock.class.php: call to debugging()
          o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability()
          o line 236 of /lib/blocklib.php: call to block_base->user_can_addto()
          o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks()
          o line 1007 of /lib/blocklib.php: call to block_add_block_ui()
          o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
          o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content()
          o line 807 of /lib/outputrenderers.php: call to include()
          o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
          o line 240 of /course/view.php: call to core_renderer->header()
          The block exacomp does not define the standard capability block/exacomp:addinstance
          o line 598 of /blocks/moodleblock.class.php: call to debugging()
          o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability()
          o line 236 of /lib/blocklib.php: call to block_base->user_can_addto()
          o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks()
          o line 1007 of /lib/blocklib.php: call to block_add_block_ui()
          o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
          o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content()
          o line 807 of /lib/outputrenderers.php: call to include()
          o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
          o line 240 of /course/view.php: call to core_renderer->header()
          The block ajax_marking does not define the standard capability block/ajax_marking:addinstance
          o line 598 of /blocks/moodleblock.class.php: call to debugging()
          o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability()
          o line 236 of /lib/blocklib.php: call to block_base->user_can_addto()
          o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks()
          o line 1007 of /lib/blocklib.php: call to block_add_block_ui()
          o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
          o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content()
          o line 807 of /lib/outputrenderers.php: call to include()
          o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
          o line 240 of /course/view.php: call to core_renderer->header()

          What do they mean?

          Show
          Rob Monk added a comment - Here is what the error was when I try to adjust the progress bar. Progress Bar Error Messages Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 285592 bytes) in /var/www/moodle/admin/settings/plugins.php on line 159 Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 285592 bytes) in /var/www/moodle/admin/settings/plugins.php on line 159 The top of my page had all these errors??? The block papercut does not define the standard capability block/papercut:addinstance o line 598 of /blocks/moodleblock.class.php: call to debugging() o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability() o line 236 of /lib/blocklib.php: call to block_base->user_can_addto() o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks() o line 1007 of /lib/blocklib.php: call to block_add_block_ui() o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created() o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content() o line 807 of /lib/outputrenderers.php: call to include() o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout() o line 240 of /course/view.php: call to core_renderer->header() The block glossary_export_to_quiz does not define the standard capability block/glossary_export_to_quiz:addinstance o line 598 of /blocks/moodleblock.class.php: call to debugging() o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability() o line 236 of /lib/blocklib.php: call to block_base->user_can_addto() o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks() o line 1007 of /lib/blocklib.php: call to block_add_block_ui() o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created() o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content() o line 807 of /lib/outputrenderers.php: call to include() o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout() o line 240 of /course/view.php: call to core_renderer->header() The block email_user_reports does not define the standard capability block/email_user_reports:addinstance o line 598 of /blocks/moodleblock.class.php: call to debugging() o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability() o line 236 of /lib/blocklib.php: call to block_base->user_can_addto() o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks() o line 1007 of /lib/blocklib.php: call to block_add_block_ui() o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created() o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content() o line 807 of /lib/outputrenderers.php: call to include() o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout() o line 240 of /course/view.php: call to core_renderer->header() The block course_results does not define the standard capability block/course_results:addinstance o line 598 of /blocks/moodleblock.class.php: call to debugging() o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability() o line 236 of /lib/blocklib.php: call to block_base->user_can_addto() o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks() o line 1007 of /lib/blocklib.php: call to block_add_block_ui() o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created() o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content() o line 807 of /lib/outputrenderers.php: call to include() o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout() o line 240 of /course/view.php: call to core_renderer->header() The block exacomp does not define the standard capability block/exacomp:addinstance o line 598 of /blocks/moodleblock.class.php: call to debugging() o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability() o line 236 of /lib/blocklib.php: call to block_base->user_can_addto() o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks() o line 1007 of /lib/blocklib.php: call to block_add_block_ui() o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created() o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content() o line 807 of /lib/outputrenderers.php: call to include() o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout() o line 240 of /course/view.php: call to core_renderer->header() The block ajax_marking does not define the standard capability block/ajax_marking:addinstance o line 598 of /blocks/moodleblock.class.php: call to debugging() o line 576 of /blocks/moodleblock.class.php: call to block_base->has_add_block_capability() o line 236 of /lib/blocklib.php: call to block_base->user_can_addto() o line 1864 of /lib/blocklib.php: call to block_manager->get_addable_blocks() o line 1007 of /lib/blocklib.php: call to block_add_block_ui() o line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created() o line 6 of /theme/binarius/layout/general.php: call to block_manager->region_has_content() o line 807 of /lib/outputrenderers.php: call to include() o line 737 of /lib/outputrenderers.php: call to core_renderer->render_page_layout() o line 240 of /course/view.php: call to core_renderer->header() What do they mean?
          Hide
          Michael de Raadt added a comment -

          Hi, Rob.

          The "does not define the standard capability" errors mean that the plugins have not been updated after 2.4 when new capabilities were added to control the adding of each block (rather than all blocks). This is not really a problem and can be ignored. It won't be the source of the problem here.

          The memory errors on the editing page may be because the form is very inefficient when there are disabledIf rules (dependencies between form elements), which I hope will be resolved by MDL-35674. As a workaround you can increase the memory available to the site. You can do this by editing the php.ini file, editing the memory_limit value, increasing it to 512M (that's what I use). As an alternative you can achieve a temporary memory increase by hacking the edit_form.php file of the Progress Bar as described by Ryan in a related issue (https://tracker.moodle.org/browse/CONTRIB-4302?focusedCommentId=221998&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-221998).

          This still does not explain why course pages might be corrupting. Do you see any errors there?

          Show
          Michael de Raadt added a comment - Hi, Rob. The "does not define the standard capability" errors mean that the plugins have not been updated after 2.4 when new capabilities were added to control the adding of each block (rather than all blocks). This is not really a problem and can be ignored. It won't be the source of the problem here. The memory errors on the editing page may be because the form is very inefficient when there are disabledIf rules (dependencies between form elements), which I hope will be resolved by MDL-35674 . As a workaround you can increase the memory available to the site. You can do this by editing the php.ini file, editing the memory_limit value, increasing it to 512M (that's what I use). As an alternative you can achieve a temporary memory increase by hacking the edit_form.php file of the Progress Bar as described by Ryan in a related issue ( https://tracker.moodle.org/browse/CONTRIB-4302?focusedCommentId=221998&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-221998 ). This still does not explain why course pages might be corrupting. Do you see any errors there?
          Hide
          Rob Monk added a comment - - edited

          This is the error I get when we increased the memory in the PHP.ini
          See Pic above.

          Interesting development. Since our admin changed the php.ini then changed it back to the original value my progress bar started working again. We still have some courses where it won't work.

          Show
          Rob Monk added a comment - - edited This is the error I get when we increased the memory in the PHP.ini See Pic above. Interesting development. Since our admin changed the php.ini then changed it back to the original value my progress bar started working again. We still have some courses where it won't work.
          Hide
          Michael de Raadt added a comment -

          Hi, Rob.

          I think that, when you increased the memory limit, it allowed the page to load. The JavaScript warning that presented itself may be due to slowness caused by the dependencies (disabledIf problem reported in MDL-35674).

          I suspect that increasing the memory allowed you to edit the settings, though, and now they are set, the plugin will probably function properly, however it's likely to be a problem again if you change the settings once more.

          Show
          Michael de Raadt added a comment - Hi, Rob. I think that, when you increased the memory limit, it allowed the page to load. The JavaScript warning that presented itself may be due to slowness caused by the dependencies (disabledIf problem reported in MDL-35674 ). I suspect that increasing the memory allowed you to edit the settings, though, and now they are set, the plugin will probably function properly, however it's likely to be a problem again if you change the settings once more.
          Hide
          Michael de Raadt added a comment -

          Hi, all.

          Two things have changed since this issue was raised:

          1. the efficiency of dependencies in forms has improved, and
          2. I have reduced the number of form elements on the Progress Bar's settings form.

          I'm going to close this issue as I believe it should now be fixed.

          It would be good if someone with this problem could confirm my assumption. It would require the latest master version of Moodle and the latest version of the Progress Bar block.

          Show
          Michael de Raadt added a comment - Hi, all. Two things have changed since this issue was raised: the efficiency of dependencies in forms has improved, and I have reduced the number of form elements on the Progress Bar's settings form. I'm going to close this issue as I believe it should now be fixed. It would be good if someone with this problem could confirm my assumption. It would require the latest master version of Moodle and the latest version of the Progress Bar block.

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development