Code Monkey home page Code Monkey logo

devstack's People

Contributors

adzuci avatar ashultz0 avatar awaisdar001 avatar clintonb avatar connorhaugh avatar cpennington avatar dependabot[bot] avatar dianakhuang avatar edx-requirements-bot avatar farhanumar avatar feanil avatar iamsobanjaved avatar iloveagent57 avatar jdmulloy avatar jibsheet avatar jinder1s avatar jmbowman avatar kdmccormick avatar macdiesel avatar michaelroytman avatar mumarkhan999 avatar nedbat avatar pwnage101 avatar rao-abdul-mannan avatar rgraber avatar robrap avatar sarina avatar stvstnfrd avatar timmc-edx avatar ztraboo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

devstack's Issues

Static Assets + Webpack

Working with nginx poses problems for dealing with static files compiled via webpack since the webpack watcher needs to run, and assets collected in /edx/var/<app>/staticfiles. I found it simple to modify the command in docker-compose.yml to bypass nginx, and run make static.watch in a separate shell.

bash -c 'source /edx/app/credentials/credentials_env && cd /edx/app/credentials/credentials && make production-requirements && ./manage.py runserver 0.0.0.0:18150'

This is not ideal. The images should support reloading static assets on subsequent requests by default. I believe @gsong works around this by having a separate container run the equivalent of make static.watch.

`make dev.provision` fails due to invalid requirements

During provisioning, we run into the following issue:

Provision Error Log
Traceback (most recent call last):
  File "manage.py", line 112, in 
    startup.run()
  File "/edx/app/edxapp/edx-platform/lms/startup.py", line 52, in run
    django.setup()
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/__init__.py", lin
e 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/apps/registry.py"
, line 115, in populate
    app_config.ready()
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/contrib/admin/app
s.py", line 22, in ready
    self.module.autodiscover()
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/contrib/admin/__i
nit__.py", line 24, in autodiscover
    autodiscover_modules('admin', register_to=site)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/utils/module_load
ing.py", line 74, in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/enterprise/admin/__init_
_.py", line 14, in 
    from django_object_actions import DjangoObjectActions
ImportError: No module named django_object_actions

There is a PR in progress to fix this issue: edx/edx-platform#15582.

Install Cython

When debugging with PyCharm, PyCharm complains about Cython missing:

warning: Debugger speedups using cython not found. Run '"/edx/app/credentials/venvs/credentials/bin/python" "/opt/.pycharm_helpers/pydev/setup_cython.py" build_ext --inplace' to build.

Install this in the images so we can take advantage of it.

Service Startup is SLOW

The edX services are compiling assets and running migrations at startup. Asset compilation can be quite slow for some services, and is not required every time the service starts. Remove these commands from startup. Inform users how to run them manually, if necessary.

Services cannot be stopped properly

Django based services do not shut down cleanly.

$ time docker-compose stop studio && docker-compose ps
Stopping edx.devstack.studio ... done

real    0m12.082s
user    0m0.939s
sys     0m0.214s

           Name                         Command                State                    Ports                
------------------------------------------------------------------------------------------------------------
edx.devstack.credentials     bash -c source /edx/app/cr ...   Up         0.0.0.0:18150->18150/tcp            
edx.devstack.discovery       bash -c source /edx/app/di ...   Up         0.0.0.0:18381->18381/tcp            
edx.devstack.ecommerce       bash -c source /edx/app/ec ...   Up         0.0.0.0:18130->18130/tcp            
edx.devstack.elasticsearch   /docker-entrypoint.sh elas ...   Up         9200/tcp, 9300/tcp                  
edx.devstack.lms             bash -c source /edx/app/ed ...   Up         0.0.0.0:18000->18000/tcp, 18010/tcp 
edx.devstack.memcached       /entrypoint.sh memcached         Up         11211/tcp                           
edx.devstack.mongo           docker-entrypoint.sh mongo ...   Up         27017/tcp                           
edx.devstack.mysql           docker-entrypoint.sh mysql ...   Up         3306/tcp                            
edx.devstack.studio          bash -c source /edx/app/ed ...   Exit 137

By comparison:

$ time docker-compose stop django2 && docker-compose ps
Stopping django2 ... done

real    0m1.799s
user    0m0.603s
sys     0m0.138s

       Name                     Command               State            Ports
-------------------------------------------------------------------------------------
db                           docker-entrypoint.sh postgres    Up       5432/tcp
django1                      /tini -- bin/app-command.sh      Up       0.0.0.0:8100->8100/tcp
api                          ssh -NTCg -o ServerAliveIn ...   Up
django2                      /tini -- bin/app-command.sh      Exit 0

If the studio service stopped properly, it should have an exit status of 0, not 137.

It also shouldn't take 12 seconds to stop a container. This indicates that docker stop was not able to gracefully shut down the container within the default 10 second grace period and docker kill the container instead.

Create LMS Demo courses

We should leverage the existing ansible role to create the 3 demo courses like when creating the vagrant based devstack

Document PyCharm Integration

Explain how PyCharm users can setup a remote interpreter with Docker Compose.

Acceptance Criteria

  1. Users can setup a remote interpreter pointing to Docker Compose.
  2. Users can successfully run all services.
  3. Users can successfully debug all services.

Useful Links

Cannot run edxapp Jasmine tests

These tests open and run in a Firefox browser. When run within a container, they just hang waiting for the browser to open, which never happens.

edxapp prerequisite installation fails unexpectedly

Hi there,

Awesome to see that there's docker based devstack!

After running make devstack.provision there are a few errors in the run (details below) but the script completes with a green Provisioning complete!.

When connecting to port 18000 the following error shows up in the browser.

OperationalError at /
(1054, "Unknown column 'course_overviews_courseoverview.marketing_url' in 'field list'")

It seems that the problem is the import of the demo course:

TASK [demo : import demo course] ***********************************************
 OK
  Applying publisher.0003_auto_20160801_1757... OK
  Applying publisher.0004_auto_20160810_0854... OK
  Applying publisher.0005_auto_20160901_0003... OK
  Applying publisher.0006_auto_20160902_0726... OK
  Applying publisher.0007_auto_20160905_1020... OK
  Applying publisher.0008_auto_20160928_1015... OK
  Applying publisher.0009_auto_20160929_1927... OK
  Applying publisher.0010_auto_20161006_1151... OK
  Applying publisher.0011_userattributes... OK
  Applying publisher.0012_auto_20161020_0718... OK
  Applying publisher.0013_create_enable_email_notifications_switch... OK
  Applying publisher.0014_create_admin_group... OK
  Applying publisher.0015_auto_20161117_1210... OK
  Applying publisher.0016_auto_20161129_0910... OK
  Applying publisher.0017_auto_20161201_1501... OK
  Applying publisher.0018_create_internal_user_group... OK
  Applying publisher.0019_create_user_groups... OK
  Applying publisher.0020_auto_20161214_1304... OK
  Applying publisher.0021_auto_20161214_1356... OK
  Applying publisher.0022_auto_20161222_2135... OK
  Applying publisher.0023_auto_20161228_1350... OK
  Applying publisher.0024_auto_20170105_1626... OK
  Applying publisher.0025_auto_20170106_1830...changed: [127.0.0.1] => {"changed": true, "cmd": "/edx/app/edxapp/venvs/edxapp/bin/python ./manage.py cms --settings=devstack_docker import /edx/var/edxapp/data /edx/app/demo/edx-demo-course", "delta": "0:00:36.038284", "end": "2017-03-27 13:39:51.407680", "rc": 0, "start": "2017-03-27 13:39:15.369396", "stderr": "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/crawlers/models.py:10: RemovedInDjango19Warning: Model class openedx.core.djangoapps.crawlers.models.CrawlersConfig doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class CrawlersConfig(ConfigurationModel):\n\n2017-03-27 09:39:22,489 WARNING 2338 [py.warnings] base.py:116 - /edx/app/edxapp/edx-platform/openedx/core/djangoapps/crawlers/models.py:10: RemovedInDjango19Warning: Model class openedx.core.djangoapps.crawlers.models.CrawlersConfig doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class CrawlersConfig(ConfigurationModel):\n\n/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:68: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.UserSocialAuth doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class UserSocialAuth(AbstractUserSocialAuth):\n\n2017-03-27 09:39:24,083 WARNING 2338 [py.warnings] base.py:116 - /edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:68: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.UserSocialAuth doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class UserSocialAuth(AbstractUserSocialAuth):\n\n/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:77: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.Nonce doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class Nonce(models.Model, DjangoNonceMixin):\n\n2017-03-27 09:39:24,086 WARNING 2338 [py.warnings] base.py:116 - /edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:77: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.Nonce doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class Nonce(models.Model, DjangoNonceMixin):\n\n/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:88: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.Association doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class Association(models.Model, DjangoAssociationMixin):\n\n2017-03-27 09:39:24,088 WARNING 2338 [py.warnings] base.py:116 - /edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:88: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.Association doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class Association(models.Model, DjangoAssociationMixin):\n\n/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:104: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.Code doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class Code(models.Model, DjangoCodeMixin):\n\n2017-03-27 09:39:24,091 WARNING 2338 [py.warnings] base.py:116 - /edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/social/apps/django_app/default/models.py:104: RemovedInDjango19Warning: Model class social.apps.django_app.default.models.Code doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class Code(models.Model, DjangoCodeMixin):\n\n/edx/app/edxapp/edx-platform/openedx/core/djangoapps/programs/models.py:10: RemovedInDjango19Warning: Model class openedx.core.djangoapps.programs.models.ProgramsApiConfig doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class ProgramsApiConfig(ConfigurationModel):\n\n2017-03-27 09:39:24,294 WARNING 2338 [py.warnings] base.py:116 - /edx/app/edxapp/edx-platform/openedx/core/djangoapps/programs/models.py:10: RemovedInDjango19Warning: Model class openedx.core.djangoapps.programs.models.ProgramsApiConfig doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.\n  class ProgramsApiConfig(ConfigurationModel):\n\n2017-03-27 09:39:24,856 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:24,891 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:24,917 ERROR 2338 [xmodule.vertical_block] vertical_block.py:129 - Unable to load child when parsing Vertical. Continuing...\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/vertical_block.py\", line 126, in definition_from_xml\n    child_block = system.process_xml(etree.tostring(child, encoding='unicode'))\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/modulestore/xml.py\", line 196, in process_xml\n    id_manager,\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1601, in xblock_from_node\n    self._convert_reference_fields_to_keys(block)  # difference from XBlock.runtime\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1645, in _convert_reference_fields_to_keys\n    field_value = getattr(xblock, field.name)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/xblock/fields.py\", line 507, in __get__\n    value = self.from_json(field_data.get(xblock, self.name))\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/xblock/fields.py\", line 796, in from_json\n    raise TypeError('Value stored in a List must be None or a list, found %s' % type(value))\nTypeError: Value stored in a List must be None or a list, found <type 'str'>\n2017-03-27 09:39:24,919 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:24,952 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:24,985 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,052 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,087 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,113 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,141 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,167 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,192 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,219 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,244 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,621 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,648 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,682 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,773 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,816 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,873 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:25,907 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,699 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,757 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,837 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,894 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,920 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,945 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:26,980 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:27,005 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:27,032 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:27,056 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:27,354 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent pre_publish signal to <function on_pre_publish at 0x7fa41fbdbed8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:27,863 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #0\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 128, in _update_collected\n    self.store.add(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 67, in add\n    self._add_to_cache(serialized_data, bs_model)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 159, in _add_to_cache\n    self._cache.set(cache_key, serialized_data, timeout=config.cache_timeout_in_seconds())\n  File \"/edx/app/edxapp/edx-platform/common/djangoapps/request_cache/middleware.py\", line 96, in wrapper\n    result = f(*args, **kwargs)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/config/__init__.py\", line 39, in cache_timeout_in_seconds\n    return BlockStructureConfiguration.current().cache_timeout_in_seconds\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/config_models/models.py\", line 143, in current\n    current = cls.objects.filter(**key_dict).order_by('-change_date')[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 201, in __getitem__\n    return list(qs)[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 162, in __iter__\n    self._fetch_all()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 965, in _fetch_all\n    self._result_cache = list(self.iterator())\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 238, in iterator\n    results = compiler.execute_sql()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py\", line 840, in execute_sql\n    cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 79, in execute\n    return super(CursorDebugWrapper, self).execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/utils.py\", line 98, in __exit__\n    six.reraise(dj_exc_type, dj_exc_value, traceback)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py\", line 124, in execute\n    return self.cursor.execute(query, args)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/cursors.py\", line 205, in execute\n    self.errorhandler(self, exc, value)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/connections.py\", line 36, in defaulterrorhandler\n    raise errorclass, errorvalue\nProgrammingError: (1146, \"Table 'edxapp.block_structure_config' doesn't exist\")\n2017-03-27 09:39:27,873 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #1\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 128, in _update_collected\n    self.store.add(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 67, in add\n    self._add_to_cache(serialized_data, bs_model)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 159, in _add_to_cache\n    self._cache.set(cache_key, serialized_data, timeout=config.cache_timeout_in_seconds())\n  File \"/edx/app/edxapp/edx-platform/common/djangoapps/request_cache/middleware.py\", line 96, in wrapper\n    result = f(*args, **kwargs)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/config/__init__.py\", line 39, in cache_timeout_in_seconds\n    return BlockStructureConfiguration.current().cache_timeout_in_seconds\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/config_models/models.py\", line 143, in current\n    current = cls.objects.filter(**key_dict).order_by('-change_date')[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 201, in __getitem__\n    return list(qs)[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 162, in __iter__\n    self._fetch_all()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 965, in _fetch_all\n    self._result_cache = list(self.iterator())\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 238, in iterator\n    results = compiler.execute_sql()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py\", line 840, in execute_sql\n    cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 79, in execute\n    return super(CursorDebugWrapper, self).execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/utils.py\", line 98, in __exit__\n    six.reraise(dj_exc_type, dj_exc_value, traceback)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py\", line 124, in execute\n    return self.cursor.execute(query, args)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/cursors.py\", line 205, in execute\n    self.errorhandler(self, exc, value)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/connections.py\", line 36, in defaulterrorhandler\n    raise errorclass, errorvalue\nProgrammingError: (1146, \"Table 'edxapp.block_structure_config' doesn't exist\")\n2017-03-27 09:39:27,880 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #2\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 128, in _update_collected\n    self.store.add(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 67, in add\n    self._add_to_cache(serialized_data, bs_model)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 159, in _add_to_cache\n    self._cache.set(cache_key, serialized_data, timeout=config.cache_timeout_in_seconds())\n  File \"/edx/app/edxapp/edx-platform/common/djangoapps/request_cache/middleware.py\", line 96, in wrapper\n    result = f(*args, **kwargs)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/config/__init__.py\", line 39, in cache_timeout_in_seconds\n    return BlockStructureConfiguration.current().cache_timeout_in_seconds\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/config_models/models.py\", line 143, in current\n    current = cls.objects.filter(**key_dict).order_by('-change_date')[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 201, in __getitem__\n    return list(qs)[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 162, in __iter__\n    self._fetch_all()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 965, in _fetch_all\n    self._result_cache = list(self.iterator())\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 238, in iterator\n    results = compiler.execute_sql()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py\", line 840, in execute_sql\n    cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 79, in execute\n    return super(CursorDebugWrapper, self).execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/utils.py\", line 98, in __exit__\n    six.reraise(dj_exc_type, dj_exc_value, traceback)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py\", line 124, in execute\n    return self.cursor.execute(query, args)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/cursors.py\", line 205, in execute\n    self.errorhandler(self, exc, value)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/connections.py\", line 36, in defaulterrorhandler\n    raise errorclass, errorvalue\nProgrammingError: (1146, \"Table 'edxapp.block_structure_config' doesn't exist\")\n2017-03-27 09:39:27,887 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #3\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 128, in _update_collected\n    self.store.add(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 67, in add\n    self._add_to_cache(serialized_data, bs_model)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 159, in _add_to_cache\n    self._cache.set(cache_key, serialized_data, timeout=config.cache_timeout_in_seconds())\n  File \"/edx/app/edxapp/edx-platform/common/djangoapps/request_cache/middleware.py\", line 96, in wrapper\n    result = f(*args, **kwargs)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/config/__init__.py\", line 39, in cache_timeout_in_seconds\n    return BlockStructureConfiguration.current().cache_timeout_in_seconds\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/config_models/models.py\", line 143, in current\n    current = cls.objects.filter(**key_dict).order_by('-change_date')[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 201, in __getitem__\n    return list(qs)[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 162, in __iter__\n    self._fetch_all()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 965, in _fetch_all\n    self._result_cache = list(self.iterator())\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 238, in iterator\n    results = compiler.execute_sql()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py\", line 840, in execute_sql\n    cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 79, in execute\n    return super(CursorDebugWrapper, self).execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/utils.py\", line 98, in __exit__\n    six.reraise(dj_exc_type, dj_exc_value, traceback)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py\", line 124, in execute\n    return self.cursor.execute(query, args)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/cursors.py\", line 205, in execute\n    self.errorhandler(self, exc, value)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/connections.py\", line 36, in defaulterrorhandler\n    raise errorclass, errorvalue\nProgrammingError: (1146, \"Table 'edxapp.block_structure_config' doesn't exist\")\n2017-03-27 09:39:27,894 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #4\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 128, in _update_collected\n    self.store.add(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 67, in add\n    self._add_to_cache(serialized_data, bs_model)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 159, in _add_to_cache\n    self._cache.set(cache_key, serialized_data, timeout=config.cache_timeout_in_seconds())\n  File \"/edx/app/edxapp/edx-platform/common/djangoapps/request_cache/middleware.py\", line 96, in wrapper\n    result = f(*args, **kwargs)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/config/__init__.py\", line 39, in cache_timeout_in_seconds\n    return BlockStructureConfiguration.current().cache_timeout_in_seconds\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/config_models/models.py\", line 143, in current\n    current = cls.objects.filter(**key_dict).order_by('-change_date')[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 201, in __getitem__\n    return list(qs)[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 162, in __iter__\n    self._fetch_all()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 965, in _fetch_all\n    self._result_cache = list(self.iterator())\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 238, in iterator\n    results = compiler.execute_sql()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py\", line 840, in execute_sql\n    cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 79, in execute\n    return super(CursorDebugWrapper, self).execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/utils.py\", line 98, in __exit__\n    six.reraise(dj_exc_type, dj_exc_value, traceback)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py\", line 124, in execute\n    return self.cursor.execute(query, args)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/cursors.py\", line 205, in execute\n    self.errorhandler(self, exc, value)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/connections.py\", line 36, in defaulterrorhandler\n    raise errorclass, errorvalue\nProgrammingError: (1146, \"Table 'edxapp.block_structure_config' doesn't exist\")\n2017-03-27 09:39:27,901 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #5\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 128, in _update_collected\n    self.store.add(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 67, in add\n    self._add_to_cache(serialized_data, bs_model)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/store.py\", line 159, in _add_to_cache\n    self._cache.set(cache_key, serialized_data, timeout=config.cache_timeout_in_seconds())\n  File \"/edx/app/edxapp/edx-platform/common/djangoapps/request_cache/middleware.py\", line 96, in wrapper\n    result = f(*args, **kwargs)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/config/__init__.py\", line 39, in cache_timeout_in_seconds\n    return BlockStructureConfiguration.current().cache_timeout_in_seconds\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/config_models/models.py\", line 143, in current\n    current = cls.objects.filter(**key_dict).order_by('-change_date')[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 201, in __getitem__\n    return list(qs)[0]\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 162, in __iter__\n    self._fetch_all()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 965, in _fetch_all\n    self._result_cache = list(self.iterator())\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/query.py\", line 238, in iterator\n    results = compiler.execute_sql()\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py\", line 840, in execute_sql\n    cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 79, in execute\n    return super(CursorDebugWrapper, self).execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/utils.py\", line 98, in __exit__\n    six.reraise(dj_exc_type, dj_exc_value, traceback)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/utils.py\", line 64, in execute\n    return self.cursor.execute(sql, params)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py\", line 124, in execute\n    return self.cursor.execute(query, args)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/cursors.py\", line 205, in execute\n    self.errorhandler(self, exc, value)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/MySQLdb/connections.py\", line 36, in defaulterrorhandler\n    raise errorclass, errorvalue\nProgrammingError: (1146, \"Table 'edxapp.block_structure_config' doesn't exist\")\n2017-03-27 09:39:27,991 INFO 2338 [edx.celery.task] tasks.py:157 - Starting XBlockCaches update for course_key: course-v1:edX+DemoX+Demo_Course\n2017-03-27 09:39:28,050 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@course+block@course\n2017-03-27 09:39:28,079 INFO 2338 [edx.celery.task] tasks.py:159 - Ending XBlockCaches update for course_key: course-v1:edX+DemoX+Demo_Course\n2017-03-27 09:39:28,095 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41f0a2848> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,095 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function listen_for_course_publish at 0x7fa41e2f9578> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,095 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41e2d27d0> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,096 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c664668> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,096 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function listen_for_course_publish at 0x7fa41c486cf8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,096 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a0c8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,096 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a398> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: (1054, \"Unknown column 'course_overviews_courseoverview.marketing_url' in 'field list'\")\n2017-03-27 09:39:28,096 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function trigger_update_xblocks_cache_task at 0x7fa41c48a578> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:28,096 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a500> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:31,019 ERROR 2338 [root] content.py:461 - Failed to generate thumbnail for asset-v1:edX+DemoX+Demo_Course+type@asset+block@jsmol_1hxw.png. Exception: cannot identify image file <StringIO.StringIO instance at 0x7fa41b99d368>\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/contentstore/content.py\", line 440, in generate_thumbnail\n    with Image.open(source) as image:\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/PIL/Image.py\", line 2319, in open\n    % (filename if filename else fp))\nIOError: cannot identify image file <StringIO.StringIO instance at 0x7fa41b99d368>\n2017-03-27 09:39:31,050 ERROR 2338 [root] content.py:461 - Failed to generate thumbnail for asset-v1:edX+DemoX+Demo_Course+type@asset+block@jsmol_Al2O3.png. Exception: cannot identify image file <StringIO.StringIO instance at 0x7fa41a8d9200>\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/contentstore/content.py\", line 440, in generate_thumbnail\n    with Image.open(source) as image:\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/PIL/Image.py\", line 2319, in open\n    % (filename if filename else fp))\nIOError: cannot identify image file <StringIO.StringIO instance at 0x7fa41a8d9200>\n2017-03-27 09:39:34,411 INFO 2338 [root] xml_importer.py:290 - No assets.xml file is present with asset metadata.\n2017-03-27 09:39:37,201 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent pre_publish signal to <function on_pre_publish at 0x7fa41fbdbed8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:37,747 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #0\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:38,161 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #1\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:38,413 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #2\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:38,671 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #3\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:38,923 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #4\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:39,177 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #5\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:39,190 INFO 2338 [edx.celery.task] tasks.py:157 - Starting XBlockCaches update for course_key: course-v1:edX+DemoX+Demo_Course\n2017-03-27 09:39:39,214 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@course+block@course\n2017-03-27 09:39:39,248 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@e5eac7e1a5a24f5fa7ed77bb6d136591\n2017-03-27 09:39:39,275 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@175e76c4951144a29d46211361266e0e\n2017-03-27 09:39:39,310 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_bc69a47c6fae\n2017-03-27 09:39:39,342 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@303034da25524878a2e66fb57c91cf85\n2017-03-27 09:39:39,367 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@discussion_5deb6081620d\n2017-03-27 09:39:39,387 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@ffa5817d49e14fec83ad6187cbe16358\n2017-03-27 09:39:39,423 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@e0d7423118ab432582d03e8e8dad8e36\n2017-03-27 09:39:39,439 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@dbe8fc027bcb4fe9afb744d2e8415855\n2017-03-27 09:39:39,454 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@e2cb0e0994f84b0abfa5f4ae42ed9d44\n2017-03-27 09:39:39,468 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@54bb9b142c6c4c22afc62bcb628f0e68\n2017-03-27 09:39:39,482 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@c554538a57664fac80783b99d9d6da7c\n2017-03-27 09:39:39,502 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@4a1bba2a403f40bca5ec245e945b0d76\n2017-03-27 09:39:39,518 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@f480df4ce91347c5ae4301ddf6146238\n2017-03-27 09:39:39,533 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@chapter+block@graded_interactions\n2017-03-27 09:39:39,550 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@700x_editmolB\n2017-03-27 09:39:39,564 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@3c4b575924bf4b75a2f3542df5c354fc\n2017-03-27 09:39:39,581 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@a0effb954cca4759994f1ac9e9434bf4\n2017-03-27 09:39:39,598 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@d6eaa391d2be41dea20b8b1bfbcb1c45\n2017-03-27 09:39:39,610 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@47dbd5f836544e61877a483c0b75606c\n2017-03-27 09:39:39,620 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@932e6f2ce8274072a355a94560216d1a\n2017-03-27 09:39:39,634 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_aae927868e55\n2017-03-27 09:39:39,647 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@f9f3a25e7bab46e583fd1fbbd7a2f6a0\n2017-03-27 09:39:39,657 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@f91d8d31f7cf48ce990f8d8745ae4cfa\n2017-03-27 09:39:39,668 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@e0254b911fa246218bd98bbdadffef06\n2017-03-27 09:39:39,688 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@simulations\n2017-03-27 09:39:39,707 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@graded_simulations\n2017-03-27 09:39:39,730 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@700x_proteinmake\n2017-03-27 09:39:39,752 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@8bb218cccf8d40519a971ff0e4901ccf\n2017-03-27 09:39:39,777 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@logic_gate_problem\n2017-03-27 09:39:39,797 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@9f9e1373cc8243b985c8750cc8acec7d\n2017-03-27 09:39:39,820 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_0270f6de40fc\n2017-03-27 09:39:39,838 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@d0d804e8863c4a95a659c04d8a2b2bc0\n2017-03-27 09:39:39,867 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@2bee8c4248e842a19ba1e73ed8d426c2\n2017-03-27 09:39:39,888 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@12ad4f3ff4c14114a6e629b00e000976\n2017-03-27 09:39:39,904 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@891211e17f9a472290a5f12c7a6626d7\n2017-03-27 09:39:39,921 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@workflow\n2017-03-27 09:39:39,935 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@chapter+block@social_integration\n2017-03-27 09:39:39,949 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@ed5dccf14ae94353961f46fa07217491\n2017-03-27 09:39:39,964 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@501aed9d902349eeb2191fa505548de2\n2017-03-27 09:39:39,979 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@8293139743f34377817d537b69911530\n2017-03-27 09:39:39,994 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_0fab6aa52165\n2017-03-27 09:39:40,010 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@0a3b4139f51a4917a3aff9d519b1eeb6\n2017-03-27 09:39:40,035 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@23e6eda482c04335af2bb265beacaf59\n2017-03-27 09:39:40,050 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@ddede76df71045ffa16de9d1481d2119\n2017-03-27 09:39:40,067 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@video+block@5c90cffecd9b48b188cbfea176bf7fe9\n2017-03-27 09:39:40,084 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@9cee77a606ea4c1aa5440e0ea5d0f618\n2017-03-27 09:39:40,115 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@video+block@7e9b434e6de3435ab99bd3fb25bde807\n2017-03-27 09:39:40,136 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@0d759dee4f9d459c8956136dbde55f02\n2017-03-27 09:39:40,152 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@e3601c0abee6427d8c17e6d6f8fdddd1\n2017-03-27 09:39:40,169 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@chapter+block@interactive_demonstrations\n2017-03-27 09:39:40,184 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@d2e35c1d294b4ba0b3b1048615605d2a\n2017-03-27 09:39:40,220 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@48ecb924d7fe4b66a230137626bfa93e\n2017-03-27 09:39:40,253 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@03f051f9a8814881a3783d2511613aa6\n2017-03-27 09:39:40,269 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@1a810b1a3b2447b998f0917d0e5a802b\n2017-03-27 09:39:40,284 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_98cf62510471\n2017-03-27 09:39:40,294 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@867dddb6f55d410caaa9c1eb9c6743ec\n2017-03-27 09:39:40,306 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@6f7a6670f87147149caeff6afa07a526\n2017-03-27 09:39:40,328 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@6bcccc2d7343416e9e03fd7325b2f232\n2017-03-27 09:39:40,372 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@4d672c5893cb4f1dad0de67d2008522e\n2017-03-27 09:39:40,409 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@ex_practice_limited_checks\n2017-03-27 09:39:40,468 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@5e009378f0b64585baa0a14b155974b9\n2017-03-27 09:39:40,502 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@chapter+block@d8a6192ade314473a78242dfeedfbf5b\n2017-03-27 09:39:40,532 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@75f9562c77bc4858b61f907bb810d974\n2017-03-27 09:39:40,564 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@d45779ad3d024a40a09ad8cc317c0970\n2017-03-27 09:39:40,591 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@chapter+block@1414ffd5143b4b508f739b563ab468b7\n2017-03-27 09:39:40,669 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@4f06b358a96f4d1dae57d6d81acd06f2\n2017-03-27 09:39:40,713 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@700x_pathways\n2017-03-27 09:39:40,724 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@fb79dcbad35b466a8c6364f8ffee9050\n2017-03-27 09:39:40,759 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@82d599b014b246c7a9b5dfc750dc08a9\n2017-03-27 09:39:40,811 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@Sample_Algebraic_Problem\n2017-03-27 09:39:40,835 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@f4a39219742149f781a1dda6f43a623c\n2017-03-27 09:39:40,863 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@chapter+block@9fca584977d04885bc911ea76a9ef29e\n2017-03-27 09:39:40,900 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@ade92343df3d4953a40ab3adc8805390\n2017-03-27 09:39:40,937 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@c6cd4bea43454aaea60ad01beb0cf213\n2017-03-27 09:39:40,957 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@4aba537a78774bd5a862485a8563c345\n2017-03-27 09:39:40,976 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_2dbb0072785e\n2017-03-27 09:39:40,998 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@ex_practice_3\n2017-03-27 09:39:41,022 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@ex_practice_2\n2017-03-27 09:39:41,062 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@07bc32474380492cb34f76e5f9d9a135\n2017-03-27 09:39:41,092 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@67c26b1e826e47aaa29757f62bcd1ad0\n2017-03-27 09:39:41,118 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@5ab88e67d46049b9aa694cb240c39cef\n2017-03-27 09:39:41,131 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@c7e98fd39a6944edb6b286c32e1150ff\n2017-03-27 09:39:41,145 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@cd177caa62444fbca48aa8f843f09eac\n2017-03-27 09:39:41,159 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@html_07d547513285\n2017-03-27 09:39:41,175 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_f04afeac0131\n2017-03-27 09:39:41,192 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@3dc16db8d14842e38324e95d4030b8a0\n2017-03-27 09:39:41,205 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@edx_introduction\n2017-03-27 09:39:41,218 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@python_grader\n2017-03-27 09:39:41,230 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@6244918637ed4ff4b5f94a840a7e4b43\n2017-03-27 09:39:41,259 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_d32bf9b2242c\n2017-03-27 09:39:41,291 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@4f6c1b4e316a419ab5b6bf30e6c708e9\n2017-03-27 09:39:41,323 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@b8cec2a19ebf463f90cd3544c7927b0e\n2017-03-27 09:39:41,361 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@45d46192272c4f6db6b63586520bbdf4\n2017-03-27 09:39:41,402 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@6018785795994726950614ce7d0f38c5\n2017-03-27 09:39:41,432 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_3888db0bc286\n2017-03-27 09:39:41,463 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@78d7d3642f3a4dbabbd1b017861aa5f2\n2017-03-27 09:39:41,496 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@video+block@0b9e39477cf34507a7a48f74be381fdd\n2017-03-27 09:39:41,515 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@b6662b497c094bcc9b870d8270c90c93\n2017-03-27 09:39:41,533 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@0aa7a3bdbe18427795b0c1a1d7c3cb9a\n2017-03-27 09:39:41,551 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@2152d4a4aadc4cb0af5256394a3d1fc7\n2017-03-27 09:39:41,571 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_36e0beb03f0a\n2017-03-27 09:39:41,610 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@19a30717eff543078a5d94ae9d6c18a5\n2017-03-27 09:39:41,630 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@d5a5caaf35e84ebc9a747038465dcfb4\n2017-03-27 09:39:41,647 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@934cc32c177d41b580c8413e561346b3\n2017-03-27 09:39:41,666 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@78e3719e864e45f3bee938461f3c3de6\n2017-03-27 09:39:41,680 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@3f2c11aba9434e459676a7d7acc4d960\n2017-03-27 09:39:41,702 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_1fef54c2b23b\n2017-03-27 09:39:41,715 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@6b6bee43c7c641509da71c9299cc9f5a\n2017-03-27 09:39:41,734 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@e8a5cc2aed424838853defab7be45e42\n2017-03-27 09:39:41,752 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@video+block@636541acbae448d98ab484b028c9a7f6\n2017-03-27 09:39:41,770 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@d6cee45205a449369d7ef8f159b22bdf\n2017-03-27 09:39:41,785 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_0c92347a5c00\n2017-03-27 09:39:41,814 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@c2f7008c9ccf4bd09d5d800c98fb0722\n2017-03-27 09:39:41,843 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@html_49b4494da2f7\n2017-03-27 09:39:41,876 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@030e35c4756a4ddc8d40b95fbbfff4d4\n2017-03-27 09:39:41,915 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@312cb4faed17420e82ab3178fc3e251a\n2017-03-27 09:39:41,968 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@Lab_5B_Mosfet_Amplifier_Experiment\n2017-03-27 09:39:42,036 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@openassessment+block@b24c33ea35954c7889e1d2944d3fe397\n2017-03-27 09:39:42,087 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@ed01bcd164e64038a78964a16eac3edc\n2017-03-27 09:39:42,170 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@26d89b08f75d48829a63520ed8b0037d\n2017-03-27 09:39:42,281 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_c037f3757df1\n2017-03-27 09:39:42,318 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@1b0e2c2c84884b95b1c99fb678cc964c\n2017-03-27 09:39:42,360 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@free_form_simulation\n2017-03-27 09:39:42,386 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@2574c523e97b477a9d72fbb37bfb995f\n2017-03-27 09:39:42,417 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@Sample_ChemFormula_Problem\n2017-03-27 09:39:42,437 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@256f17a44983429fb1a60802203ee4e0\n2017-03-27 09:39:42,458 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@2b94658d2eee4d85ae13f83bc24cfca9\n2017-03-27 09:39:42,477 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@870371212ba04dcf9536d7c7b8f3109e\n2017-03-27 09:39:42,496 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@2889db1677a549abb15eb4d886f95d1c\n2017-03-27 09:39:42,515 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@3169f89efde2452993f2f2d9bc74f5b2\n2017-03-27 09:39:42,534 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@134df56c516a4a0dbb24dd5facef746e\n2017-03-27 09:39:42,551 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@148ae8fa73ea460eb6f05505da0ba6e6\n2017-03-27 09:39:42,564 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@722085be27c84ac693cfebc8ac5da700\n2017-03-27 09:39:42,577 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@d1b84dcd39b0423d9e288f27f0f7f242\n2017-03-27 09:39:42,604 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@discussion+block@412dc8dbb6674014862237b23c1f643f\n2017-03-27 09:39:42,638 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@problem+block@651e0945b77f42e0a4c89b8c3e6f5b3b\n2017-03-27 09:39:42,701 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@html+block@55cbc99f262443d886a25cf84594eafb\n2017-03-27 09:39:42,731 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@6ab9c442501d472c8ed200e367b4edfa\n2017-03-27 09:39:42,751 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@sequential+block@basic_questions\n2017-03-27 09:39:42,772 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+branch@draft-branch+version@58d91610633cd2092241ebb1+type@vertical+block@vertical_ac391cde8a91\n2017-03-27 09:39:42,791 INFO 2338 [edx.celery.task] tasks.py:159 - Ending XBlockCaches update for course_key: course-v1:edX+DemoX+Demo_Course\n2017-03-27 09:39:42,797 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41f0a2848> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,797 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function listen_for_course_publish at 0x7fa41e2f9578> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,797 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41e2d27d0> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,797 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c664668> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,797 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function listen_for_course_publish at 0x7fa41c486cf8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,797 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a0c8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,798 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a398> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: (1054, \"Unknown column 'course_overviews_courseoverview.marketing_url' in 'field list'\")\n2017-03-27 09:39:42,798 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function trigger_update_xblocks_cache_task at 0x7fa41c48a578> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,798 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a500> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:42,814 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/d45779ad3d024a40a09ad8cc317c0970 has more than one definition\n2017-03-27 09:39:42,823 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/55cbc99f262443d886a25cf84594eafb has more than one definition\n2017-03-27 09:39:42,823 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:42,832 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/ade92343df3d4953a40ab3adc8805390 has more than one definition\n2017-03-27 09:39:42,858 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/ed5dccf14ae94353961f46fa07217491 has more than one definition\n2017-03-27 09:39:42,860 ERROR 2338 [xmodule.vertical_block] vertical_block.py:129 - Unable to load child when parsing Vertical. Continuing...\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/vertical_block.py\", line 126, in definition_from_xml\n    child_block = system.process_xml(etree.tostring(child, encoding='unicode'))\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/modulestore/xml.py\", line 196, in process_xml\n    id_manager,\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1601, in xblock_from_node\n    self._convert_reference_fields_to_keys(block)  # difference from XBlock.runtime\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1645, in _convert_reference_fields_to_keys\n    field_value = getattr(xblock, field.name)\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/xblock/fields.py\", line 507, in __get__\n    value = self.from_json(field_data.get(xblock, self.name))\n  File \"/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/xblock/fields.py\", line 796, in from_json\n    raise TypeError('Value stored in a List must be None or a list, found %s' % type(value))\nTypeError: Value stored in a List must be None or a list, found <type 'str'>\n2017-03-27 09:39:42,861 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:42,869 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/9f9e1373cc8243b985c8750cc8acec7d has more than one definition\n2017-03-27 09:39:42,878 WARNING 2338 [xmodule.modulestore.xml] xml.py:169 - Non-unique url_name in xml.  This may break state tracking for content.  url_name=New_Unit.  Content=<vertical display_name=\"New Unit\" parent_sequential_url=\"i4x://edX/DemoX/sequential/simulations\" ind\n2017-03-27 09:39:43,089 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:43,123 WARNING 2338 [xmodule.modulestore.xml] xml.py:169 - Non-unique url_name in xml.  This may break state tracking for content.  url_name=Video_Demonstrations.  Content=<vertical display_name=\"Video Demonstrations\" parent_sequential_url=\"i4x://edX/DemoX/sequential/19a3\n2017-03-27 09:39:43,195 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/openassessment/b24c33ea35954c7889e1d2944d3fe397 has more than one definition\n2017-03-27 09:39:43,196 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:43,204 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/12ad4f3ff4c14114a6e629b00e000976 has more than one definition\n2017-03-27 09:39:43,223 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/030e35c4756a4ddc8d40b95fbbfff4d4 has more than one definition\n2017-03-27 09:39:43,233 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/video/0b9e39477cf34507a7a48f74be381fdd has more than one definition\n2017-03-27 09:39:43,283 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/2b94658d2eee4d85ae13f83bc24cfca9 has more than one definition\n2017-03-27 09:39:43,293 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/problem/700x_editmolB has more than one definition\n2017-03-27 09:39:43,294 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:43,302 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/0aa7a3bdbe18427795b0c1a1d7c3cb9a has more than one definition\n2017-03-27 09:39:43,321 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/problem/Sample_ChemFormula_Problem has more than one definition\n2017-03-27 09:39:43,322 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:43,330 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/4d672c5893cb4f1dad0de67d2008522e has more than one definition\n2017-03-27 09:39:43,349 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/78e3719e864e45f3bee938461f3c3de6 has more than one definition\n2017-03-27 09:39:43,359 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/problem/700x_proteinmake has more than one definition\n2017-03-27 09:39:43,360 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:43,368 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/ed01bcd164e64038a78964a16eac3edc has more than one definition\n2017-03-27 09:39:43,396 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/html/Lab_5B_Mosfet_Amplifier_Experiment has more than one definition\n2017-03-27 09:39:43,396 WARNING 2338 [root] mixins.py:519 - XBlock <class 'xblock.internal.DiscussionXBlockWithMixins'> does not contain field url_name\n2017-03-27 09:39:43,405 WARNING 2338 [xmodule.modulestore.xml] xml.py:233 - i4x://edX/DemoX/discussion/03f051f9a8814881a3783d2511613aa6 has more than one definition\n2017-03-27 09:39:44,308 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent pre_publish signal to <function on_pre_publish at 0x7fa41fbdbed8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:44,909 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #0\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:45,184 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #1\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:45,458 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #2\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:45,731 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #3\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:46,006 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #4\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:46,280 ERROR 2338 [edx.celery.task] tasks.py:71 - update_course_in_cache encountered unknown error. Retry #5\nTraceback (most recent call last):\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/tasks.py\", line 54, in _call_and_retry_if_needed\n    api_method(course_key)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/api.py\", line 29, in update_course_in_cache\n    return get_block_structure_manager(course_key).update_collected_if_needed()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 115, in update_collected_if_needed\n    self._update_collected()\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/manager.py\", line 127, in _update_collected\n    BlockStructureTransformers.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/openedx/core/djangoapps/content/block_structure/transformers.py\", line 80, in collect\n    transformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/blocks_api.py\", line 50, in collect\n    StudentViewTransformer.collect(block_structure)\n  File \"/edx/app/edxapp/edx-platform/lms/djangoapps/course_api/blocks/transformers/student_view.py\", line 63, in collect\n    student_view_data = block.student_view_data()\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in student_view_data\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py\", line 949, in <dictcomp>\n    for lang in self.available_translations(transcripts_info, verify_assets=False)\n  File \"/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py\", line 1480, in handler_url\n    return descriptor_global_handler_url(block, handler_name, suffix, query, thirdparty)\n  File \"/edx/app/edxapp/edx-platform/cms/lib/xblock/runtime.py\", line 14, in handler_url\n    raise NotImplementedError(\"edX Studio doesn't support third-party xblock handler urls\")\nNotImplementedError: edX Studio doesn't support third-party xblock handler urls\n2017-03-27 09:39:46,295 INFO 2338 [edx.celery.task] tasks.py:157 - Starting XBlockCaches update for course_key: course-v1:edX+DemoX+Demo_Course\n2017-03-27 09:39:46,355 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@e5eac7e1a5a24f5fa7ed77bb6d136591\n2017-03-27 09:39:46,449 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@175e76c4951144a29d46211361266e0e\n2017-03-27 09:39:46,521 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_bc69a47c6fae\n2017-03-27 09:39:46,540 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@303034da25524878a2e66fb57c91cf85\n2017-03-27 09:39:46,578 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@discussion_5deb6081620d\n2017-03-27 09:39:46,633 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@ffa5817d49e14fec83ad6187cbe16358\n2017-03-27 09:39:46,636 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@e0d7423118ab432582d03e8e8dad8e36\n2017-03-27 09:39:46,638 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@dbe8fc027bcb4fe9afb744d2e8415855\n2017-03-27 09:39:46,640 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@e2cb0e0994f84b0abfa5f4ae42ed9d44\n2017-03-27 09:39:46,643 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@54bb9b142c6c4c22afc62bcb628f0e68\n2017-03-27 09:39:46,645 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@c554538a57664fac80783b99d9d6da7c\n2017-03-27 09:39:46,851 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@4a1bba2a403f40bca5ec245e945b0d76\n2017-03-27 09:39:46,896 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@f480df4ce91347c5ae4301ddf6146238\n2017-03-27 09:39:46,941 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@700x_editmolB\n2017-03-27 09:39:46,986 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@3c4b575924bf4b75a2f3542df5c354fc\n2017-03-27 09:39:46,989 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@a0effb954cca4759994f1ac9e9434bf4\n2017-03-27 09:39:46,991 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@d6eaa391d2be41dea20b8b1bfbcb1c45\n2017-03-27 09:39:46,994 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@47dbd5f836544e61877a483c0b75606c\n2017-03-27 09:39:46,997 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@932e6f2ce8274072a355a94560216d1a\n2017-03-27 09:39:46,999 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_aae927868e55\n2017-03-27 09:39:47,001 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@f9f3a25e7bab46e583fd1fbbd7a2f6a0\n2017-03-27 09:39:47,004 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@f91d8d31f7cf48ce990f8d8745ae4cfa\n2017-03-27 09:39:47,006 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@e0254b911fa246218bd98bbdadffef06\n2017-03-27 09:39:47,009 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@simulations\n2017-03-27 09:39:47,124 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@graded_simulations\n2017-03-27 09:39:47,177 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@700x_proteinmake\n2017-03-27 09:39:47,194 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@8bb218cccf8d40519a971ff0e4901ccf\n2017-03-27 09:39:47,222 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@logic_gate_problem\n2017-03-27 09:39:47,280 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@9f9e1373cc8243b985c8750cc8acec7d\n2017-03-27 09:39:47,283 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_0270f6de40fc\n2017-03-27 09:39:47,286 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@d0d804e8863c4a95a659c04d8a2b2bc0\n2017-03-27 09:39:47,289 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@2bee8c4248e842a19ba1e73ed8d426c2\n2017-03-27 09:39:47,292 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@12ad4f3ff4c14114a6e629b00e000976\n2017-03-27 09:39:47,295 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@891211e17f9a472290a5f12c7a6626d7\n2017-03-27 09:39:47,332 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@workflow\n2017-03-27 09:39:47,366 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@ed5dccf14ae94353961f46fa07217491\n2017-03-27 09:39:47,404 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@501aed9d902349eeb2191fa505548de2\n2017-03-27 09:39:47,407 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@8293139743f34377817d537b69911530\n2017-03-27 09:39:47,409 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_0fab6aa52165\n2017-03-27 09:39:47,412 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@0a3b4139f51a4917a3aff9d519b1eeb6\n2017-03-27 09:39:47,414 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@23e6eda482c04335af2bb265beacaf59\n2017-03-27 09:39:47,417 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@ddede76df71045ffa16de9d1481d2119\n2017-03-27 09:39:47,420 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@video+block@5c90cffecd9b48b188cbfea176bf7fe9\n2017-03-27 09:39:47,422 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@9cee77a606ea4c1aa5440e0ea5d0f618\n2017-03-27 09:39:47,425 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@video+block@7e9b434e6de3435ab99bd3fb25bde807\n2017-03-27 09:39:47,427 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@0d759dee4f9d459c8956136dbde55f02\n2017-03-27 09:39:47,430 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@e3601c0abee6427d8c17e6d6f8fdddd1\n2017-03-27 09:39:47,433 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@d2e35c1d294b4ba0b3b1048615605d2a\n2017-03-27 09:39:47,435 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@48ecb924d7fe4b66a230137626bfa93e\n2017-03-27 09:39:47,437 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@03f051f9a8814881a3783d2511613aa6\n2017-03-27 09:39:47,440 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@1a810b1a3b2447b998f0917d0e5a802b\n2017-03-27 09:39:47,442 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_98cf62510471\n2017-03-27 09:39:47,444 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@867dddb6f55d410caaa9c1eb9c6743ec\n2017-03-27 09:39:47,447 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@6f7a6670f87147149caeff6afa07a526\n2017-03-27 09:39:47,449 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@6bcccc2d7343416e9e03fd7325b2f232\n2017-03-27 09:39:47,452 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@4d672c5893cb4f1dad0de67d2008522e\n2017-03-27 09:39:47,454 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@ex_practice_limited_checks\n2017-03-27 09:39:47,457 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@5e009378f0b64585baa0a14b155974b9\n2017-03-27 09:39:47,460 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@75f9562c77bc4858b61f907bb810d974\n2017-03-27 09:39:47,512 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@d45779ad3d024a40a09ad8cc317c0970\n2017-03-27 09:39:47,515 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@4f06b358a96f4d1dae57d6d81acd06f2\n2017-03-27 09:39:47,519 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@700x_pathways\n2017-03-27 09:39:47,521 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@fb79dcbad35b466a8c6364f8ffee9050\n2017-03-27 09:39:47,524 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@82d599b014b246c7a9b5dfc750dc08a9\n2017-03-27 09:39:47,527 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@Sample_Algebraic_Problem\n2017-03-27 09:39:47,530 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@f4a39219742149f781a1dda6f43a623c\n2017-03-27 09:39:47,533 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@ade92343df3d4953a40ab3adc8805390\n2017-03-27 09:39:47,536 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@c6cd4bea43454aaea60ad01beb0cf213\n2017-03-27 09:39:47,538 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@4aba537a78774bd5a862485a8563c345\n2017-03-27 09:39:47,541 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_2dbb0072785e\n2017-03-27 09:39:47,543 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@ex_practice_3\n2017-03-27 09:39:47,546 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@ex_practice_2\n2017-03-27 09:39:47,548 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@07bc32474380492cb34f76e5f9d9a135\n2017-03-27 09:39:47,550 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@67c26b1e826e47aaa29757f62bcd1ad0\n2017-03-27 09:39:47,553 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@5ab88e67d46049b9aa694cb240c39cef\n2017-03-27 09:39:47,555 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@c7e98fd39a6944edb6b286c32e1150ff\n2017-03-27 09:39:47,558 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@cd177caa62444fbca48aa8f843f09eac\n2017-03-27 09:39:47,560 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@html_07d547513285\n2017-03-27 09:39:47,563 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_f04afeac0131\n2017-03-27 09:39:47,565 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@3dc16db8d14842e38324e95d4030b8a0\n2017-03-27 09:39:47,567 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@edx_introduction\n2017-03-27 09:39:47,570 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@python_grader\n2017-03-27 09:39:47,573 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@6244918637ed4ff4b5f94a840a7e4b43\n2017-03-27 09:39:47,576 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_d32bf9b2242c\n2017-03-27 09:39:47,578 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@4f6c1b4e316a419ab5b6bf30e6c708e9\n2017-03-27 09:39:47,581 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@b8cec2a19ebf463f90cd3544c7927b0e\n2017-03-27 09:39:47,583 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@45d46192272c4f6db6b63586520bbdf4\n2017-03-27 09:39:47,586 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@6018785795994726950614ce7d0f38c5\n2017-03-27 09:39:47,588 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_3888db0bc286\n2017-03-27 09:39:47,590 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@78d7d3642f3a4dbabbd1b017861aa5f2\n2017-03-27 09:39:47,593 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@video+block@0b9e39477cf34507a7a48f74be381fdd\n2017-03-27 09:39:47,596 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@b6662b497c094bcc9b870d8270c90c93\n2017-03-27 09:39:47,599 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@0aa7a3bdbe18427795b0c1a1d7c3cb9a\n2017-03-27 09:39:47,601 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@2152d4a4aadc4cb0af5256394a3d1fc7\n2017-03-27 09:39:47,604 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_36e0beb03f0a\n2017-03-27 09:39:47,606 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@19a30717eff543078a5d94ae9d6c18a5\n2017-03-27 09:39:47,608 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@d5a5caaf35e84ebc9a747038465dcfb4\n2017-03-27 09:39:47,610 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@934cc32c177d41b580c8413e561346b3\n2017-03-27 09:39:47,613 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@78e3719e864e45f3bee938461f3c3de6\n2017-03-27 09:39:47,615 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@3f2c11aba9434e459676a7d7acc4d960\n2017-03-27 09:39:47,618 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_1fef54c2b23b\n2017-03-27 09:39:47,620 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@6b6bee43c7c641509da71c9299cc9f5a\n2017-03-27 09:39:47,623 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@e8a5cc2aed424838853defab7be45e42\n2017-03-27 09:39:47,626 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@video+block@636541acbae448d98ab484b028c9a7f6\n2017-03-27 09:39:47,629 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@d6cee45205a449369d7ef8f159b22bdf\n2017-03-27 09:39:47,631 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_0c92347a5c00\n2017-03-27 09:39:47,634 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@c2f7008c9ccf4bd09d5d800c98fb0722\n2017-03-27 09:39:47,637 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@html_49b4494da2f7\n2017-03-27 09:39:47,640 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@030e35c4756a4ddc8d40b95fbbfff4d4\n2017-03-27 09:39:47,642 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@312cb4faed17420e82ab3178fc3e251a\n2017-03-27 09:39:47,645 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@Lab_5B_Mosfet_Amplifier_Experiment\n2017-03-27 09:39:47,648 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@openassessment+block@b24c33ea35954c7889e1d2944d3fe397\n2017-03-27 09:39:47,651 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@ed01bcd164e64038a78964a16eac3edc\n2017-03-27 09:39:47,653 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@26d89b08f75d48829a63520ed8b0037d\n2017-03-27 09:39:47,655 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_c037f3757df1\n2017-03-27 09:39:47,658 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@1b0e2c2c84884b95b1c99fb678cc964c\n2017-03-27 09:39:47,661 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@free_form_simulation\n2017-03-27 09:39:47,663 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@2574c523e97b477a9d72fbb37bfb995f\n2017-03-27 09:39:47,666 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@Sample_ChemFormula_Problem\n2017-03-27 09:39:47,669 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@256f17a44983429fb1a60802203ee4e0\n2017-03-27 09:39:47,672 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@2b94658d2eee4d85ae13f83bc24cfca9\n2017-03-27 09:39:47,675 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@870371212ba04dcf9536d7c7b8f3109e\n2017-03-27 09:39:47,677 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@2889db1677a549abb15eb4d886f95d1c\n2017-03-27 09:39:47,680 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@3169f89efde2452993f2f2d9bc74f5b2\n2017-03-27 09:39:47,682 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@134df56c516a4a0dbb24dd5facef746e\n2017-03-27 09:39:47,685 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@148ae8fa73ea460eb6f05505da0ba6e6\n2017-03-27 09:39:47,688 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@722085be27c84ac693cfebc8ac5da700\n2017-03-27 09:39:47,690 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@d1b84dcd39b0423d9e288f27f0f7f242\n2017-03-27 09:39:47,693 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@412dc8dbb6674014862237b23c1f643f\n2017-03-27 09:39:47,696 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@651e0945b77f42e0a4c89b8c3e6f5b3b\n2017-03-27 09:39:47,699 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@55cbc99f262443d886a25cf84594eafb\n2017-03-27 09:39:47,701 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@6ab9c442501d472c8ed200e367b4edfa\n2017-03-27 09:39:47,703 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions\n2017-03-27 09:39:47,706 INFO 2338 [edx.celery.task] tasks.py:117 - Updating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@vertical_ac391cde8a91\n2017-03-27 09:39:47,723 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@video+block@af7fe1335eb841cd81ce31c7ee8eb069\n2017-03-27 09:39:47,742 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@45c7cedb4bfe46f4a68c78787151cfb5\n2017-03-27 09:39:47,762 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@9d5104b502f24ee89c3d2f4ce9d347cf\n2017-03-27 09:39:47,785 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@video+block@ab98b0e385e64445ae97e730ffdf17e7\n2017-03-27 09:39:47,806 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@4e592689563243c484af947465eaef0d\n2017-03-27 09:39:47,854 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@ffcd6351126d4ca984409180e41d1b51\n2017-03-27 09:39:47,903 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@87fa6792d79f4862be098e5169e93339\n2017-03-27 09:39:47,937 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@a79d59cd72034188a71d388f4954a606\n2017-03-27 09:39:47,958 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@2d3efa8db04346548bd5e5374de77628\n2017-03-27 09:39:47,974 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@f0e6d90842c44cc7a50fd1a18a7dd982\n2017-03-27 09:39:47,994 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@discussion+block@1c8d47c425724346a7968fa1bc745dcd\n2017-03-27 09:39:48,012 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@fb6b62dbec4348528629cf2232b86aea\n2017-03-27 09:39:48,030 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@8f89194410954e768bde1764985454a7\n2017-03-27 09:39:48,045 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@html+block@eb469ec408fa4ab1a9b86c634ca9bfa9\n2017-03-27 09:39:48,063 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@9b9687073e904ae197799dc415df899f\n2017-03-27 09:39:48,088 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@7efc7bf4a47b4a6cb6595c32cde7712a\n2017-03-27 09:39:48,102 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@problem+block@d7daeff25e4f4026bdd269ae69e03e02\n2017-03-27 09:39:48,114 INFO 2338 [edx.celery.task] tasks.py:132 - Creating XBlockCache with usage_key: block-v1:edX+DemoX+Demo_Course+type@vertical+block@d91b9e5d8bc64d57a1332d06bf2f2193\n2017-03-27 09:39:48,127 INFO 2338 [edx.celery.task] tasks.py:159 - Ending XBlockCaches update for course_key: course-v1:edX+DemoX+Demo_Course\n2017-03-27 09:39:48,132 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41f0a2848> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,132 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function listen_for_course_publish at 0x7fa41e2f9578> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,132 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41e2d27d0> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,132 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c664668> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,132 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function listen_for_course_publish at 0x7fa41c486cf8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,133 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a0c8> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,133 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a398> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: (1054, \"Unknown column 'course_overviews_courseoverview.marketing_url' in 'field list'\")\n2017-03-27 09:39:48,133 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function trigger_update_xblocks_cache_task at 0x7fa41c48a578> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None\n2017-03-27 09:39:48,133 INFO 2338 [xmodule.modulestore.django] django.py:207 - Sent course_published signal to <function _listen_for_course_publish at 0x7fa41c48a500> with kwargs {'course_key': CourseLocator('edX', 'DemoX', 'Demo_Course', None, None)}. Response was: None", "stdout": "Importing.  Data_dir=/edx/var/edxapp/data, source_dirs=('/edx/app/demo/edx-demo-course',)\nSeeding forum roles for course course-v1:edX+DemoX+Demo_Course", "stdout_lines": ["Importing.  Data_dir=/edx/var/edxapp/data, source_dirs=('/edx/app/demo/edx-demo-course',)", "Seeding forum roles for course course-v1:edX+DemoX+Demo_Course"], "warnings": []}

ERROR: for edxapp Cannot start service edxapp: oci runtime error

Encountered following error on a fresh install of devstack

~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 09:43:33 $ docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   60ccb22
 Built:        Thu Feb 23 10:40:59 2017
 OS/Arch:      darwin/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 07:52:04 2017
 OS/Arch:      linux/amd64
 Experimental: true

~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 09:47:02 $ docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS              PORTS                      NAMES
7929adf53533        edxops/credentials:devstack     "/edx/app/credenti..."   4 minutes ago       Up 3 minutes        0.0.0.0:18150->18150/tcp   edx.devstack.credentials
378f89fd0241        edxops/ecommerce:devstack       "/edx/app/ecommerc..."   4 minutes ago       Up 3 minutes        0.0.0.0:18130->18130/tcp   edx.devstack.ecommerce
6d559d852db7        edxops/discovery:devstack       "/edx/app/discover..."   4 minutes ago       Up 4 minutes        0.0.0.0:18381->18381/tcp   edx.devstack.discovery
5b0b0396cf65        eugenmayer/rsync                "/entrypoint.sh su..."   About an hour ago   Up About an hour    0.0.0.0:10875->873/tcp     edxapp-sync
e5a77fd09612        eugenmayer/rsync                "/entrypoint.sh su..."   About an hour ago   Up About an hour    0.0.0.0:10874->873/tcp     ecommerce-sync
e9a16e976ad2        eugenmayer/rsync                "/entrypoint.sh su..."   About an hour ago   Up About an hour    0.0.0.0:10873->873/tcp     discovery-sync
0db02101e9ec        eugenmayer/rsync                "/entrypoint.sh su..."   About an hour ago   Up About an hour    0.0.0.0:10872->873/tcp     credentials-sync
4687bd31e313        edxops/elasticsearch:devstack   "/docker-entrypoin..."   6 hours ago         Up 4 minutes        9200/tcp, 9300/tcp         edx.devstack.elasticsearch
368bda55f76d        memcached:1.4.24                "/entrypoint.sh me..."   6 hours ago         Up 4 minutes        11211/tcp                  edx.devstack.memcached
66508fd9ef7e        mysql:5.6                       "docker-entrypoint..."   11 hours ago        Up 4 minutes        3306/tcp                   edx.devstack.mysql
c1031e145402        mongo:3.0.14                    "/entrypoint.sh mo..."   11 hours ago        Up 4 minutes        27017/tcp                  edx.devstack.mongo

~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 08:42:37 $ docker images
REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
edxops/edxapp          devstack            4a48ca9f4498        20 hours ago        2.71 GB
edxops/ecommerce       devstack            f80140c63c6f        22 hours ago        1.69 GB
edxops/discovery       devstack            49fd8792b4b0        22 hours ago        1.43 GB
edxops/credentials     devstack            5d045e2e7878        22 hours ago        1.33 GB
mysql                  5.6                 673eeb95a1a4        2 weeks ago         328 MB
mongo                  3.0.14              134dce136e2e        2 weeks ago         270 MB
eugenmayer/rsync       latest              9ca469cbe0e4        3 weeks ago         54.1 MB
edxops/elasticsearch   devstack            bff0a7ae0833        7 weeks ago         347 MB
memcached              1.4.24              66438aa20444        16 months ago       132 MB
~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 08:43:03 $ make devstack.start
docker-compose -f docker-compose.yml -f docker-compose-host.yml up
edx.devstack.elasticsearch is up-to-date
edx.devstack.memcached is up-to-date
edx.devstack.mongo is up-to-date
edx.devstack.mysql is up-to-date
Recreating 62643b387c41_62643b387c41_62643b387c41_62643b387c41_edx.devstack.edxapp
Recreating edx.devstack.discovery
Recreating edx.devstack.ecommerce
Recreating edx.devstack.credentials

ERROR: for edxapp  Cannot start service edxapp: oci runtime error: container_linux.go:247: starting container process caused "exec: \"/edx/app/edxapp/devstack.sh\": stat /edx/app/edxapp/devstack.sh: no such file or directory"

ERROR: Encountered errors while bringing up the project.
~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 09:11:54 $ docker info
Containers: 13
 Running: 11
 Paused: 0
 Stopped: 2
Images: 9
Server Version: 17.03.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 977c511eda0925a723debdc94d09459af49d082a
runc version: a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.12-moby
Operating System: Alpine Linux v3.5
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.855 GiB
Name: moby
ID: AFF5:DQKX:44ZC:HNNQ:AO4R:BVS4:RTQO:K7IU:MVZY:L3KI:QO2V:OOY3
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 100
 Goroutines: 97
 System Time: 2017-03-18T03:42:00.772886575Z
 EventsListeners: 1
No Proxy: *.local, 169.254/16
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false


~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 09:12:01 $ make devstack.stop docker-compose stop Stopping edx.devstack.ecommerce ... done Stopping edx.devstack.credentials ... done Stopping edx.devstack.discovery ... done Stopping edx.devstack.elasticsearch ... done Stopping edx.devstack.memcached ... done Stopping edx.devstack.mysql ... done Stopping edx.devstack.mongo ... done


~/workspace/devstack @ slab [spg] ๐Ÿ‘ Sat Mar 18 09:16:41 $ make devstack.start.sync
docker-sync-stack start
       note:  You can also run docker-sync in the background with docker-sync --daemon
          ok  Starting rsync
          ok  Synced /Users/spg/workspace/credentials/
     success  Rsync server started
          ok  Synced /Users/spg/workspace/credentials/
     success  Starting to watch /Users/spg/workspace/credentials/ - Press CTRL-C to stop
          ok  Starting rsync
          ok  Synced /Users/spg/workspace/course-discovery/
     success  Rsync server started
          ok  Synced /Users/spg/workspace/course-discovery/
     success  Starting to watch /Users/spg/workspace/course-discovery/ - Press CTRL-C to stop
          ok  Starting rsync
          ok  Synced /Users/spg/workspace/ecommerce/
     success  Rsync server started
          ok  Synced /Users/spg/workspace/ecommerce/
     success  Starting to watch /Users/spg/workspace/ecommerce/ - Press CTRL-C to stop
          ok  Starting rsync
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/xmodule_js/common_static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/xmodule_js/common_static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/xmodule_js/common_static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/lib/xmodule/xmodule/js/common_static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/lib/xmodule/xmodule/js/common_static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/lib/xmodule/xmodule/js/common_static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/xmodule_js/common_static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/xmodule_js/common_static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/xmodule_js/common_static/edx-ui-toolkit/js"
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1249) [sender=3.1.2]
       error  Error starting sync, exit code 23
     message  sending incremental file list
./

sent 354,006 bytes  received 3,254 bytes  64,956.36 bytes/sec
total size is 254,372,915  speedup is 712.01
     success  Rsync server started
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/xmodule_js/common_static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/xmodule_js/common_static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/cms/static/xmodule_js/common_static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/lib/xmodule/xmodule/js/common_static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/lib/xmodule/xmodule/js/common_static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/lib/xmodule/xmodule/js/common_static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/common/static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/edx-ui-toolkit/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/xmodule_js/common_static/edx-pattern-library/fonts"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/xmodule_js/common_static/edx-pattern-library/js"
symlink has no referent: "/Users/spg/workspace/edx-platform/lms/static/xmodule_js/common_static/edx-ui-toolkit/js"
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1249) [sender=3.1.2]
       error  Error starting sync, exit code 23
     message  sending incremental file list

sent 353,975 bytes  received 3,223 bytes  714,396.00 bytes/sec
total size is 254,372,915  speedup is 712.13
     success  Starting to watch /Users/spg/workspace/edx-platform/ - Press CTRL-C to stop
          ok  Found explicit docker-compose-dev.yml and using it from docker-compose-sync.yml
          ok  starting compose
Removing edx.devstack.edxapp
Starting edx.devstack.mongo
Starting edx.devstack.memcached
Starting edx.devstack.mysql
Starting edx.devstack.elasticsearch
Recreating 62643b387c41_62643b387c41_62643b387c41_62643b387c41_62643b387c41_edx.devstack.edxapp
Recreating edx.devstack.discovery
Recreating edx.devstack.credentials
Recreating edx.devstack.ecommerce

ERROR: for edxapp  Cannot start service edxapp: oci runtime error: container_linux.go:247: starting container process caused "exec: \"/edx/app/edxapp/devstack.sh\": stat /edx/app/edxapp/devstack.sh: no such file or directory"

Encountered errors while bringing up the project.
EXCEPTION: #<Docker::Compose::Error: 'up' failed with status 'pid 68628 exit 1': Removing edx.devstack.edxapp>
MESSAGE: 'up' failed with status 'pid 68628 exit 1': Removing edx.devstack.edxapp
 

Error while provisioning

I did make destroy and removed all docker containers and images.
While provisioning, script ran into the following issue:

Creating edx.devstack.lms ... error

ERROR: for edx.devstack.lms  Cannot create container for service lms: invalid bind mount spec "/Users/marko/docker/edx-platform:/edx/app/edxapp/edx-platform:cached": invalid mode: cached

ERROR: for lms  Cannot create container for service lms: invalid bind mount spec "/Users/marko/docker/edx-platform:/edx/app/edxapp/edx-platform:cached": invalid mode: cached
ERROR: Encountered errors while bringing up the project.
make: *** [dev.provision.run] Error 1

Problem lauching first instance with custom requirements.

I'm working with this dev stack.

I have made many launches before this problem and all time was well. I made changes in requirements/base.txt in edx-platform and after tested it i pull this changes to my custom branch in my fork.

I proceed to launch this fork in the server by first time and i got this error:

Creating edx.devstack.lms ... done
++ docker-compose exec lms bash -c 'source /edx/app/edxapp/edxapp_env && cd /edx/app/edxapp/edx-platform && NO_PYTHON_UNINSTALL=1 paver install_prereqs'
---> pavelib.prereqs.install_prereqs
---> pavelib.prereqs.install_node_prereqs
test `npm config get registry` = "https://registry.npmjs.org/" || (echo setting registry; npm config set registry https://registry.npmjs.org/)
make: *** [Makefile:23: dev.provision.run] Error 137

I proceed to test my custom fork in local and i got the same error:

Creating edx.devstack.lms ... done
++ docker-compose exec lms bash -c 'source /edx/app/edxapp/edxapp_env && cd /edx/app/edxapp/edx-platform && NO_PYTHON_UNINSTALL=1 paver install_prereqs'
---> pavelib.prereqs.install_prereqs
---> pavelib.prereqs.install_node_prereqs
test `npm config get registry` = "https://registry.npmjs.org/" || (echo setting registry; npm config set registry https://registry.npmjs.org/)
make: *** [Makefile:23: dev.provision.run] Error 137

So, i tested with the master branch, without my changes in these branch, but making some changes in the same file; i got these error:

++ docker-compose exec lms bash -c 'source /edx/app/edxapp/edxapp_env && cd /edx/app/edxapp/edx-platform && NO_PYTHON_UNINSTALL=1 paver install_prereqs'
---> pavelib.prereqs.install_prereqs
---> pavelib.prereqs.install_node_prereqs
Node prereqs unchanged, skipping...
---> pavelib.prereqs.install_python_prereqs
---> pavelib.prereqs.uninstall_python_packages
NO_PYTHON_UNINSTALL is set. No attempts will be made to uninstall old Python libs.
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/pre.txt
make: *** [Makefile:23: dev.provision.run] Error 137

So, finally i proceed to remove all changes and launches again and:

++ docker-compose exec lms bash -c 'source /edx/app/edxapp/edxapp_env && cd /edx/app/edxapp/edx-platform && NO_PYTHON_UNINSTALL=1 paver install_prereqs'
---> pavelib.prereqs.install_prereqs
---> pavelib.prereqs.install_node_prereqs
Node prereqs unchanged, skipping...
---> pavelib.prereqs.install_python_prereqs
---> pavelib.prereqs.uninstall_python_packages
NO_PYTHON_UNINSTALL is set. No attempts will be made to uninstall old Python libs.
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/pre.txt
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/github.txt
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/local.txt
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/base.txt
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/paver.txt
pip install -q --disable-pip-version-check --exists-action w -r requirements/edx/post.txt
pip freeze > /edx/app/edxapp/edx-platform/test_root/log/pip_freeze.log
++ docker-compose restart lms

Which is the commonly denominator in both problems? PAVER.

How can we launch in a first instance of our custom libraries with docker?

I can't understand it, i had to remove the repository, download again and modify it manually before to launch by first time.

The problem with this is that each time that we want make changes in the server we have to remove all source, clone again, and make all changes manually, as you can see this is not propperly and waste many time.

We can't do this all time that we made changes in requirements.

`make dev.provision` [demo: create some test users] task fails

What steps will reproduce the problem?

  1. make dev.provision

What is the expected output?

Successful provisioning.

What operating system and Docker?

MacOS 10.12.5, Docker version 17.06.0-ce, build 02c1d87

Please provide any additional information below

Ansible task log
TASK [demo : create some test users] *******************************************
 [WARNING]: Exception in safe_eval() on expr: [{u'username': u'honor', u'is_superuser': False, u'hashed_password':
u'pbkdf2_sha256$20000$TjE34FJjc3vv$0B7GUmH8RwrOc/BvMoxjb5j8EgnWTt3sxorDANeF7Qw=', u'is_staff': False, u'email': u'[email protected]'}, {u'username': u'audit', u'is_superuser': False,
u'hashed_password':
u'pbkdf2_sha256$20000$TjE34FJjc3vv$0B7GUmH8RwrOc/BvMoxjb5j8EgnWTt3sxorDANeF7Qw=', u'is_staff':
False, u'email': u'[email protected]'}, {u'username': u'verified', u'is_superuser': False,     u'hashed_password':
u'pbkdf2_sha256$20000$TjE34FJjc3vv$0B7GUmH8RwrOc/BvMoxjb5j8EgnWTt3sxorDANeF7Qw=', u'is_staff': False, u'email': u'[email protected]'}, {u'username': u'staff', u'is_superuser': False,
u'hashed_password':
u'pbkdf2_sha256$20000$TjE34FJjc3vv$0B7GUmH8RwrOc/BvMoxjb5j8EgnWTt3sxorDANeF7Qw=', u'is_staff':
True, u'email': u'[email protected]'}, Undefined] (name 'Undefined' is not defined)            
fatal: [127.0.0.1]: FAILED! => {"failed": true, "msg": "the field 'args' has an invalid value, which appears to include a variable that is undefined. The error was: 'unicode object' has no attribute 'hashed_password'\n\nThe error appears to have been in '/edx/app/edx_ansible/edx_ansible/playbooks/roles/demo/tasks/deploy.yml': line 39, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: create some test users\n  ^ here\n"}
        to retry, use: --limit @/edx/app/edx_ansible/edx_ansible/playbooks/edx-east/demo.retry

PLAY RECAP *********************************************************************
127.0.0.1 : ok=30 changed=8 unreachable=0 failed=1

I'm not sure if this is an upstream issue in edx/configuration.

Docker local volumes grow with each container restart

Local volumes used by devstack grow by ~560MB each time you bring the containers back up.

The first time you provision and start the devstack:

$ docker-compose ps
           Name                         Command               State                  Ports                
---------------------------------------------------------------------------------------------------------
edx.devstack.credentials     bash -c source /edx/app/cr ...   Up      0.0.0.0:18150->18150/tcp            
edx.devstack.discovery       bash -c source /edx/app/di ...   Up      0.0.0.0:18381->18381/tcp            
edx.devstack.ecommerce       bash -c source /edx/app/ec ...   Up      0.0.0.0:18130->18130/tcp            
edx.devstack.elasticsearch   /docker-entrypoint.sh elas ...   Up      9200/tcp, 9300/tcp                  
edx.devstack.lms             bash -c source /edx/app/ed ...   Up      0.0.0.0:18000->18000/tcp, 18010/tcp 
edx.devstack.memcached       /entrypoint.sh memcached         Up      11211/tcp                           
edx.devstack.mongo           docker-entrypoint.sh mongo ...   Up      27017/tcp                           
edx.devstack.mysql           docker-entrypoint.sh mysql ...   Up      3306/tcp                            
edx.devstack.studio          bash -c source /edx/app/ed ...   Up      18000/tcp, 0.0.0.0:18010->18010/tcp 

$ docker system df
TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              8                   8                   6.475 GB            835.1 MB (12%)
Containers          9                   9                   637.3 kB            0 B (0%)
Local Volumes       19                  19                  864.2 MB            0 B (0%)

The second time:

$ docker-compose down && docker-compose up -d && docker system df

...lots of down and up messages...

TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              8                   8                   6.475 GB            835.1 MB (12%)
Containers          9                   9                   72.42 kB            0 B (0%)
Local Volumes       35                  19                  1.429 GB            564.6 MB (39%)

And the third time:

$ docker-compose down && docker-compose up -d && docker system df

...lots of down and up messages...

TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              8                   8                   6.475 GB            835.1 MB (12%)
Containers          9                   9                   72.42 kB            0 B (0%)
Local Volumes       51                  19                  1.993 GB            1.129 GB (56%)

Stop docker-compose after provisioning

The provisioning script currently brings the services online, but does not take them down after completion. Update the provisioning script to take the services down if they were not already running. If they were running, assume the user wants to keep them running.

Django Debug Toolbar assets not collected

The Docker image for the services does not include the static assets for Django Debug Toolbar. This seems to be due to the fact that the ENABLE_DJANGO_TOOLBAR environment variable is not set when devstack.sh is called at start time. Find a way to properly transfer this value when calling Ansible so that these assets are compiled. It would also be nice if the value is set when the Docker image is created so that they are available without having to run devstack.sh.

Course search not working

After setting up courses and refreshing course meta-data in catalog service, trying to go to
/courses in LMS yields the following error:

edx.devstack.edxapp | 2017-01-25 10:07:57,926 ERROR 52 [search.views] views.py:226 - Search view exception when searching for for user 2: ConnectionError('N/A', "HTTPConnectionPool(host=u'port', port=9200): Max retries exceeded with url: /courseware_index (Caused by <class 'socket.gaierror'>: [Errno -2] Name or service not known)", MaxRetryError("HTTPConnectionPool(host=u'port', port=9200): Max retries exceeded with url: /courseware_index (Caused by <class 'socket.gaierror'>: [Errno -2] Name or service not known)",))
edx.devstack.edxapp | Traceback (most recent call last):
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/search/views.py", line 195, in course_discovery
edx.devstack.edxapp | field_dictionary=field_dictionary,
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/search/api.py", line 83, in course_discovery_search
edx.devstack.edxapp | searcher = SearchEngine.get_search_engine(getattr(settings, "COURSEWARE_INDEX_NAME", "courseware_index"))
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/search/search_engine_base.py", line 50, in get_search_engine
edx.devstack.edxapp | return search_engine_class(index=index) if search_engine_class else None
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/search/elastic.py", line 275, in init
edx.devstack.edxapp | if not self._es.indices.exists(index=self.index_name):
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/elasticsearch/client/utils.py", line 70, in _wrapped
edx.devstack.edxapp | return func(*args, params=params, **kwargs)
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/elasticsearch/client/indices.py", line 149, in exists
edx.devstack.edxapp | self.transport.perform_request('HEAD', _make_path(index), params=params)
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/elasticsearch/transport.py", line 274, in perform_request
edx.devstack.edxapp | status, headers, data = connection.perform_request(method, url, params, body, ignore=ignore)
edx.devstack.edxapp | File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/elasticsearch/connection/http_urllib3.py", line 51, in perform_request
edx.devstack.edxapp | raise ConnectionError('N/A', str(e), e)
edx.devstack.edxapp | ConnectionError: ConnectionError(HTTPConnectionPool(host=u'port', port=9200): Max retries exceeded with url: /courseware_index (Caused by <class 'socket.gaierror'>: [Errno -2] Name or service not known)) caused by: MaxRetryError(HTTPConnectionPool(host=u'port', port=9200): Max retries exceeded with url: /courseware_index (Caused by <class 'socket.gaierror'>: [Errno -2] Name or service not known))
edx.devstack.edxapp |
edx.devstack.edxapp | ==> /edx/var/log/nginx/access.log <==
edx.devstack.edxapp | - - 172.19.0.1 - - [25/Jan/2017:15:07:57 +0000] "POST /search/course_discovery/ HTTP/1.1" 500 65 0.276 "http://localhost:18000/courses" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36"

Document how to restart a service

We should add the following to the README on how to restart a service while shelled into it.
/edx/app/supervisor/venvs/supervisor/bin/supervisorctl restart

Log Aggregation

We use Splunk at edX to aggregate logs. It would be nice to have a similar solution for devstack. Splunk may be cost-prohibitive, so consider alternative solutions.

Error when provisioning

I get the following error when executing make devstack.provision:

`./provision.sh
Creating network "devstack_default" with the default driver
Creating edx.devstack.mysql
Creating edx.devstack.memcached
Creating edx.devstack.elasticsearch
Creating edx.devstack.programs
Creating edx.devstack.discovery
Creating edx.devstack.ecommerce
Creating edx.devstack.credentials
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
Traceback (most recent call last):
File "", line 1, in
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 191, in create_superuser
**extra_fields)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 182, in _create_user
user.save(using=self._db)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/base.py", line 734, in save
force_update=force_update, update_fields=update_fields)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/base.py", line 762, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/base.py", line 846, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/base.py", line 885, in _do_insert
using=using, raw=raw)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/query.py", line 920, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 974, in execute_sql
cursor.execute(sql, params)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/utils.py", line 98, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 124, in execute
return self.cursor.execute(query, args)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute
self.errorhandler(self, exc, value)
File "/edx/app/credentials/venvs/credentials/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
ProgrammingError: (1146, "Table 'credentials.core_user' doesn't exist")

Traceback (most recent call last):
File "/edx/app/discovery/discovery/course_discovery/settings/utils.py", line 9, in get_env_setting
return environ[setting]
File "/edx/app/discovery/venvs/discovery/lib/python3.5/os.py", line 725, in getitem
raise KeyError(key) from None
KeyError: 'COURSE_DISCOVERY_CFG'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/edx/app/discovery/discovery/manage.py", line 15, in
execute_from_command_line(sys.argv)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/core/management/init.py", line 353, in execute_from_command_line
utility.execute()
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/core/management/init.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/core/management/base.py", line 360, in run_from_argv
connections.close_all()
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/db/utils.py", line 230, in close_all
for alias in self:
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/db/utils.py", line 224, in iter
return iter(self.databases)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/utils/functional.py", line 33, in get
res = instance.dict[self.name] = self.func(instance)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/db/utils.py", line 157, in databases
self._databases = settings.DATABASES
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/conf/init.py", line 55, in getattr
self._setup(name)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/conf/init.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/conf/init.py", line 99, in init
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 986, in _gcd_import
File "", line 969, in _find_and_load
File "", line 958, in _find_and_load_unlocked
File "", line 673, in _load_unlocked
File "", line 665, in exec_module
File "", line 222, in _call_with_frames_removed
File "/edx/app/discovery/discovery/course_discovery/settings/devstack.py", line 1, in
from course_discovery.settings.production import *
File "/edx/app/discovery/discovery/course_discovery/settings/production.py", line 25, in
CONFIG_FILE = get_env_setting('COURSE_DISCOVERY_CFG')
File "/edx/app/discovery/discovery/course_discovery/settings/utils.py", line 12, in get_env_setting
raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured: Set the [COURSE_DISCOVERY_CFG] env variable!
/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/haystack/utils/init.py:12: RemovedInDjango19Warning: django.utils.importlib will be removed in Django 1.9.
from django.utils import importlib

2016-12-27 12:14:21,083 WARNING 32 [py.warnings] /edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/utils/importlib.py:9 - /edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/haystack/utils/init.py:12: RemovedInDjango19Warning: django.utils.importlib will be removed in Django 1.9.
from django.utils import importlib

/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/oscar/apps/catalogue/abstract_models.py:20: RemovedInDjango19Warning: django.contrib.contenttypes.generic is deprecated and will be removed in Django 1.9. Its contents have been moved to the fields, forms, and admin submodules of django.contrib.contenttypes.
from django.contrib.contenttypes.generic import GenericForeignKey

2016-12-27 12:14:21,366 WARNING 32 [py.warnings] /edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/contrib/contenttypes/generic.py:10 - /edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/oscar/apps/catalogue/abstract_models.py:20: RemovedInDjango19Warning: django.contrib.contenttypes.generic is deprecated and will be removed in Django 1.9. Its contents have been moved to the fields, forms, and admin submodules of django.contrib.contenttypes.
from django.contrib.contenttypes.generic import GenericForeignKey

2016-12-27 12:14:25,105 ERROR 32 [ecommerce.core.config] /edx/app/ecommerce/ecommerce/ecommerce/core/config.py:32 - DB error when validating configuration - most likely DB was not created yet - skipping
Traceback (most recent call last):
File "/edx/app/ecommerce/ecommerce/ecommerce/core/config.py", line 30, in ready
validate_configuration()
File "/edx/app/ecommerce/ecommerce/ecommerce/core/models.py", line 517, in validate_configuration
for config in SiteConfiguration.objects.all():
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/query.py", line 162, in iter
self._fetch_all()
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/query.py", line 965, in _fetch_all
self._result_cache = list(self.iterator())
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/query.py", line 238, in iterator
results = compiler.execute_sql()
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 840, in execute_sql
cursor.execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/utils.py", line 98, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 124, in execute
return self.cursor.execute(query, args)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute
self.errorhandler(self, exc, value)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
ProgrammingError: (1146, "Table 'ecommerce.core_siteconfiguration' doesn't exist")
Python 2.7.12 (default, Jul 1 2016, 15:12:24)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
Traceback (most recent call last):
File "", line 1, in
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 191, in create_superuser
**extra_fields)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 182, in _create_user
user.save(using=self._db)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/base.py", line 734, in save
force_update=force_update, update_fields=update_fields)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/base.py", line 762, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/base.py", line 846, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/base.py", line 885, in _do_insert
using=using, raw=raw)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/query.py", line 920, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 974, in execute_sql
cursor.execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/utils.py", line 98, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 124, in execute
return self.cursor.execute(query, args)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute
self.errorhandler(self, exc, value)
File "/edx/app/ecommerce/venvs/ecommerce/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
ProgrammingError: (1146, "Table 'ecommerce.ecommerce_user' doesn't exist")

Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
Traceback (most recent call last):
File "", line 1, in
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 191, in create_superuser
**extra_fields)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 182, in _create_user
user.save(using=self._db)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/base.py", line 734, in save
force_update=force_update, update_fields=update_fields)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/base.py", line 762, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/base.py", line 846, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/base.py", line 885, in _do_insert
using=using, raw=raw)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/query.py", line 920, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 974, in execute_sql
cursor.execute(sql, params)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/utils.py", line 98, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 124, in execute
return self.cursor.execute(query, args)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute
self.errorhandler(self, exc, value)
File "/edx/app/programs/venvs/programs/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
ProgrammingError: (1146, "Table 'programs.core_user' doesn't exist")

Traceback (most recent call last):
File "/edx/app/discovery/discovery/course_discovery/settings/utils.py", line 9, in get_env_setting
return environ[setting]
File "/edx/app/discovery/venvs/discovery/lib/python3.5/os.py", line 725, in getitem
raise KeyError(key) from None
KeyError: 'COURSE_DISCOVERY_CFG'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/edx/app/discovery/discovery/manage.py", line 15, in
execute_from_command_line(sys.argv)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/core/management/init.py", line 353, in execute_from_command_line
utility.execute()
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/core/management/init.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/core/management/init.py", line 185, in fetch_command
settings.INSTALLED_APPS
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/conf/init.py", line 55, in getattr
self._setup(name)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/conf/init.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/site-packages/django/conf/init.py", line 99, in init
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/edx/app/discovery/venvs/discovery/lib/python3.5/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 986, in _gcd_import
File "", line 969, in _find_and_load
File "", line 958, in _find_and_load_unlocked
File "", line 673, in _load_unlocked
File "", line 665, in exec_module
File "", line 222, in _call_with_frames_removed
File "/edx/app/discovery/discovery/course_discovery/settings/devstack.py", line 1, in
from course_discovery.settings.production import *
File "/edx/app/discovery/discovery/course_discovery/settings/production.py", line 25, in
CONFIG_FILE = get_env_setting('COURSE_DISCOVERY_CFG')
File "/edx/app/discovery/discovery/course_discovery/settings/utils.py", line 12, in get_env_setting
raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured: Set the [COURSE_DISCOVERY_CFG] env variable!
Makefile:16: recipe for target 'devstack.provision' failed
make: *** [devstack.provision] Error 1
`

Cannot save uploaded files

When I upload an image (through django admin or otherwise) I get the following error:
PermissionError: [Errno 13] Permission denied: '/edx/var/discovery/media'

Document host system requirements

Maybe worth adding to the README.md or an INSTALL.md?

Installing from scratch on a Debian machine the following system requirements need to be fulfilled:

Running pip install -r requirements.txt in the devstack folder will install docker-compose.

edxapp Python unit tests don't run

Getting the Python unit tests is a good first step towards getting other tests in edx-platform working. We need these working if we want to use this devstack for developing edxapp.

clone.sh: line 36: [: : integer expression expected

I just got back to looking at Open edx again.

I am using docker Version 17.06.0-ce-mac18 (18433) Channel: stable d9b66511e0

When I run make dev.clone I am seeing this

$ make dev.clone
./clone.sh
./clone.sh: line 36: [: : integer expression expected

'XModule' distribution was not found

Not sure if it's connected to #78 but I also get a Studio install without asset compiled which seem to have been experienced by others and reported in slack.

# paver update_assets --settings devstack_docker
---> pavelib.assets.update_assets
---> pavelib.prereqs.install_node_prereqs
Node prereqs unchanged, skipping...
xmodule_assets common/static/xmodule
Traceback (most recent call last):
  File "/edx/app/edxapp/venvs/edxapp/bin/xmodule_assets", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3030, in <module>
    @_call_aside
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3014, in _call_aside
    f(*args, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3043, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 654, in _build_master
    ws.require(__requires__)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 968, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 854, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'XModule' distribution was not found and is required by the application


Captured Task Output:
---------------------

---> pavelib.assets.update_assets
---> pavelib.prereqs.install_node_prereqs
xmodule_assets common/static/xmodule

Build failed running pavelib.assets.update_assets: Subprocess return code: 1

Make target improvements

Some of the existing target names are hard to work with and/or redundant. I think we can do better.

To be more precise:

  1. The devstack. prefix. What does this add? Can we get rid of it?
  2. Targets that rename/mask/shadow perfectly good Docker or Docker Compose names. For example, using start and reset instead of up and down, or (less painful) update-images instead of pull. Can we stick to the names used by Docker and Docker Compose where possible? We have the help target to explain where necessary.
  3. Targets for running shells. The names for these can be more explicit. For example, make <play>-shell. "Open" means different things to different people (e.g., open a browser).

There may be other improvements, but this seems like a good place to start.

@clintonb FYI.

'HiddenDescriptorWithMixins' object has no attribute 'id'

After install, when trying to navigate on the platform I get this error. There are a couple of messages on google groups about it (one mentionning a mongo lock file) and another mention in the openedx slack which seems like a good lead:

Richard Moch
So: such error happens when the file requirement/edx/local.txt fails to install edx-platform as a Python package
Posted in #generalDec 28th, 2016 at 4:56 PM

Will investigate more.

Issue during provisioning

++ docker-compose exec lms bash -c 'source /edx/app/edxapp/edxapp_env && cd /edx/app/edxapp/edx-platform && NO_PREREQ_INSTALL=1 paver update_db --settings devstack_docker'
Traceback (most recent call last):
  File "/edx/app/edxapp/venvs/edxapp/bin/paver", line 11, in <module>
    sys.exit(main())
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/paver/tasks.py", line 878, in main
    _launch_pavement(args)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/paver/tasks.py", line 846, in _launch_pavement
    exec(compile(source, environment.pavement_file, 'exec'), mod.__dict__)
  File "pavement.py", line 14, in <module>
    from pavelib import *
  File "pavelib/__init__.py", line 4, in <module>
    from . import assets, servers, docs, prereqs, quality, tests, js_test, i18n, bok_choy, acceptance_test
  File "pavelib/assets.py", line 23, in <module>
    from .utils.envs import Env
  File "pavelib/utils/envs.py", line 18, in <module>
    class Env(object):
  File "pavelib/utils/envs.py", line 24, in Env
    REPO_ROOT = path(__file__).abspath().parent.parent.parent
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/path.py", line 293, in abspath
    return self._next_class(self.module.abspath(self))
  File "/edx/app/edxapp/venvs/edxapp/lib/python2.7/posixpath.py", line 362, in abspath
    cwd = os.getcwdu()
OSError: [Errno 2] No such file or directory
make: *** [dev.provision.run] Error 1

Watching assets and make devstack.start.watch?

Hi there,

I'm wondering whether watching assets is supported in the devstack? Here's what I think I've understood so far:

  • paver watch_assets just results in:
# paver watch_assets
---> pavelib.assets.watch_assets
find /edx/app/edxapp/edx-platform/lms /edx/app/edxapp/edx-platform/cms /edx/app/edxapp/edx-platform/common -type f -name "*.coffee"
Starting asset watcher...

But changing sass files doesn't do anything, presumably because by default its only watching coffee files.

  • paver update_assets --watch --settings devstack_docker

Triggers a recompile and collects the assets but doesn't keep the watch process. (maybe related to the background mode? although no process seems to be running after that).

  • paver update_assets --watch --debug --settings devstack_docker

Given that debug deactivates the background mode I tried this too, but although it does keep a watch process in the foreground and triggers recompiles on file changes correctly it doesn't collect the assets.

It seems from #64 that other apps have other approaches to watching assets and recompiling.

It would be great if correct settings were wrapped up in make devstack.start.watch command!

Cheers,

Jun

XModule distribution not found

I'm not able to run edX studio with paver devstack studio as I 'm having an XModule distribution error

xmodule_assets common/static/xmodule
Traceback (most recent call last):
  File "/edx/app/edxapp/venvs/edxapp/bin/xmodule_assets", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3084, in <module>
    @_call_aside
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3070, in _call_aside
    f(*args, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3097, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 651, in _build_master
    ws.require(__requires__)
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 952, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 839, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'XModule==0.1.1' distribution was not found and is required by the application


Captured Task Output:
---------------------

---> pavelib.servers.devstack
---> pavelib.prereqs.install_prereqs
---> pavelib.prereqs.install_node_prereqs
---> pavelib.prereqs.install_python_prereqs
---> pavelib.prereqs.uninstall_python_packages
python manage.py cms --settings=devstack reindex_course --setup
---> pavelib.assets.update_assets
python manage.py lms --settings=devstack preprocess_assets lms/static/sass/*.scss lms/static/themed_sass
xmodule_assets common/static/xmodule

Build failed running pavelib.servers.devstack: Subprocess return code: 1

How can I solve this issue without having to reinstall devstack as I don't want to lose all the work I've done

Permissions Error for Static Files

I have primarily seen permissions errors around the ecommerce app. Here is a temporary fix until the image is repaired.

  1. Open the container with make devstack.open.ecommerce.
  2. Run the following commands:
cd /edx/app/ecommerce/ecommerce
make static
chmod -R g+w /edx/var/ecommerce/
chgrp -R www-data /edx/var/ecommerce/

Move off of `edxops` DockerHub org images

Context

This issue is the successor of a private issue: https://github.com/openedx/decoupling/issues/58

Currently, Devstack's service images are hosted in the edxops DockerHub org. Considering devstack as a community tool, this is not ideal for three reasons:

  • edxops itself is owned by edX,
  • the images in edxops are built on an edX-managed Jenkins instance, and
  • the images themselves are built using Ansible and provisioned using Ansible and Paver, which is bad for developer experience.

Acceptance Criteria

  • Ensure that the Open edX community does not depend on edX for building or hosting Docker images.
  • Write up tasks to clean up any remaining artifacts once the first task has been achieved, including but not limited to:
    • GitHub actions that push images we don't use any more.
    • Jenkins DSL scripts and jobs for images we don't need any more.
    • Devstack toggles and provisioning code paths related to experimental images.
    • Unused Dockerfiles, their assets, and scripts that exist to support their images' use in devstack.

Potential Approaches

A combination of these approaches may be warranted.

1: Build the Ansible/Paver-based images using GitHub Actions and push them into the openedx DockerHub org.

This succeeds in removing our dependency on edX's DockerHub account and edX's build server. However, it means we'd still be using the non-ideal Ansible-baked images. Worse, we'd be tainting the openedx DockerHub organization with the Ansible images, which seems like a bit of a step backwards architecturally.

2: Switch devstack to the experimental Ansible-free images from the openedx DockerHub org.

There are Dockerfiles checked into most service repos, which currently auto-push mostly-unsued yet idiomatic and Ansible-free images into the openedx DockerHub org. We could switch devstack over from the edxops images to these existing openedx images, with some modifications to ensure that they new images work with devstack. This is harder than Approach 1 but would presumably be beneficial for devstack users and the containerization effort in general.

3: Declare we're dropping devstack in favor of Tutor

The build-test-release WG has already decided that Tutor is the one-and-only community-supported installation method for Open edX. Although edX and some other community members still use devstack heavily, Tutor also seems to be the predominant development stack. If we felt that deprecating devstack in favor of Tutor was the right move, then the transition off of the edxops images be coupled to the transition to Tutor.

As for the openedx DockerHub org, we'd either shut it down, or perhaps make it a mirror for Tutor images.

This effort required to achieve this is captured in a platform roadmap item: Enhance Tutor so that it may replace Devstack.

Status

Dec 2021

I'm trying out Approach 2 for edx-platform and credentials. Relevant PRs:

Jan 2022

We are putting down Approach 2 in favor of focusing our energy on Approach 3 (replace devstack with tutor).

Use invoke for task management and command execution

Invoke is a Python (2.6+ and 3.3+) task execution tool which takes inspiration from GNU Make and Ruby's Rake. It places an emphasis on minimal boilerplate and provides traditional flag-based style command-line parsing and automatic help-text generation; see the link for more.

We should use invoke instead of Make to avoid the need for arcane lines like this and unhelpful stuff like updating this.

Document Docker-Sync Troubleshooting Steps

  1. Stop containers: make stop
  2. Stop Docker-Sync: docker-sync stop
  3. Clean sync volumes: docker-sync clean

This should probably be incorporated into a Make target, similar to clean-marketing-sync. Renaming it to clean, and moving it to Makefile should be sufficient.

Users should be using Docker Sync 0.4.6, or above.

  • Check version: docker-sync --version
  • Upgrade gem update docker-sync

MongoDB runs out of storage space

Running edxapp tests creates a new database with every run. This leads to mongod shutting down due to lack of storage space. I fixed this by deleting all of the test databases.

db.getMongo().getDBNames().forEach(function(name) {
    if(name.match("^test")) { 
        db.getMongo().getDB( name ).dropDatabase();
    }
});

We should find a way to have the tests cleanup after themselves.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.