SECOND-BEST WORLDS
4.3
Perfect competition as example
In the last step we took a dive into the underlying mathematics of our models. To get a better understanding of what this means for your model design, we now use our simple energy system logic to design an optimization model and an equilibrium model that will result in the same outcomes.
The setup is the same for both. We assume a perfectly competitive market in which producers aim to maximise their short run profit given their cost function. Consumers aim to maximise their benefit derived from consuming electricity.
In an optimization setting, you know that you need to combine the individual objectives (firm’s profits and consumer benefit) into a single objective, $$B(d)$$. As we assume perfect competition, this is easily doable by maximising the welfare in our system (as discussed in an earlier step). Consequently, the objective function for the social planner looks like this:
(1) $$\max\limits_{q_i,d\geq 0} \enspace B(d)-\sum\limits_{i}{c_i(q_i)}$$
$$B(d)$$ represents the benefit function of consumers (how much utility they derive from their demand $$d$$) and the profits from the firm. $$c_i(q_i)$$ represents the generation costs of firm $$i$$.
As side constraints you will again need to ensure that total supply is sufficient to cover demand. Clearly, demand cannot be less than 0:
(2) $$\sum\limits_{i}{q_i} =d$$
If you would derive the Karush–Kuhn–Tucker (KKT) conditions of the Lagrangian formulation of these two equations you would obtain the optimality conditions defining which level of supply and demand maximises welfare. Let’s just focus on the two decision variables: $$q_i$$ and $$d$$. Again, you will need to derive the first order condition of the model with respect to the two variables and set them equal to zero:
(3) $$\frac{∂B}{∂d}-μ=0$$
(4) $$\frac{∂c_i(q_i)}{∂q_i}+μ=0$$
The $$µ$$ is again the Lagrangian multipliers on the side constraint.
Equations (4) and (5) together with the side constraint (2) tell you the optimality criteria for your model.
Ok, let’s shortly switch to the equilibrium world and design the same problem in an equilibrium setting. Here we have firms maximizing profits, consumers maximizing their benefit, and a market that brings the two sides together.
You know that firms will only produce if the marginal costs are covered. Using this zero-profit logic you can write their equilibrium conditions as follows:
(5) $$\frac{∂c_i(q_i)}{∂q_i}\geq p \bot q_i\geq0$$
This formulation is the mathematical equivalent of our equilibrium logic. Either the firm has a positive output ($$q_i > 0$$) in which case the left hand side of equation (5) needs to hold with equality ($$\frac{∂c_i(q_i)}{∂q_i}=p$$); or the firm does not produce ($$q_i = 0$$) in which case the left hand side is in inequality ($$\frac{∂c_i(q_i)}{∂q_i}>p$$). The perpendicular sign $$\bot$$ allows us to write this combination a bit more compactly.
The same logic holds for the consumer side:
(6) $$p \geq \frac{∂B}{∂d} \bot d \geq 0$$
Consumers will only consume energy if the marginal benefit they can derive ($$\frac{∂B}{∂d}$$) is at least as large as the price they have to pay for it.
Now all you need is the market clearing condition to finalise your equilibrium model:
(7) $$\sum\limits_{i}{q_i}\geq d \bot p \geq 0$$
Similar to the zero-profit equations this formulation is the mathematical way of describing the market clearing logic: if we have a positive market price ($$p > 0$$) it means the supply and demand side are in balance ($$\sum\limits_{i}{q_i}=d$$). If we have oversupply ($$\sum\limits_{i}{q_i}>d$$) the market price is zero ($$p = 0$$).
Now if you compare equation (5) to (7) of the equilibrium model with equation (2) to (4) of the optimization model you may see some similarities:
Equation (3) tells us that in the optimum, the marginal benefit of consumers is equal to $$µ$$. The same holds for the marginal costs of each firm in the optimum (equation (4)). And this $$µ$$ is linked to the constraint that in the equilibrium total supply and demand have to be balanced.
Now this is basically the same story you designed with the equilibrium model. If supply and demand are equal, equation (7) tells us that the resulting market price, $$p$$, will be positive. And if you neglect the non-trivial equilibrium of having zero $$d$$ and production (which are balanced by definition) this also means positive production and demand levels. Equations (5) and (6) tell you that in this case the marginal costs of the firms have to be equal to the market price and the marginal benefit of consumers also has to be equal to the market price.
If you now replace the symbol for the market price, $$p$$, with some Greek letter, say $$µ$$, you see that those are basically the same results. The only difference is that the equilibrium model is formulated in a more general sense (those are conditions that need to hold for the market to be in equilibrium) whereas the optimization equations show the conditions that need to hold for the market to be in the equilibrium that optimises welfare.
This relation between the two model approaches means two things with respect to analysing your problem:
First, you are often free to choose one or the other type of model. As long as you can derive a single objective for an optimization you can also formulate an equivalent equilibrium version of your model.
Second, the equilibrium logic of who is doing what (activity) when (zero-profit) and how market prices are related to supply and demand (market clearing) also holds when analysing your optimization model results. The underlying economic logic is the driving force of the two models. So, a solid understanding of incentives and market dynamics will help you to design, solve, and interpret your models, regardless of what specific model setup you have chosen.
- Ausblenden »
- Toggle Theme
-
Geschichte
-
Versionen
Django 4.2.17 -
Zeit
CPU: 255.38ms (265.46ms) - Einstellungen
- Header
-
Anfrage
apply_cache -
SQL
7 Abfragen in 8.67 ms -
Statische Dateien
7 Dateien benutzt -
Templates
step/step_home.html -
Cache
47 Abfragen in 20.27ms -
Cachalot
Last invalidation: 2 Stunden, 22 Minuten -
Signale
113 Empfänger von 15 Signalen -
Umleitungen abfangen
-
Profiling
Versionen
Paket | Name | Version |
---|---|---|
Django | 4.2.17 | |
Python | 3.11.11 | |
allauth | Allauth | 65.3.1.final.0 |
cachalot | Cachalot | 2.6.3 |
crispy_bootstrap5 | Crispy_Bootstrap5 | 2024.10 |
crispy_forms | Crispy_Forms | 2.3 |
debug_toolbar | Debug Toolbar | 4.4.6 |
django_extensions | Django Extensions | 3.2.3 |
django_q | Django Q | 1.7.4 |
imagekit | Imagekit | 5.0.0 |
impersonate | Impersonate | 1.9.4 |
markdownx | Markdownx | 4.0.7 |
mozilla_django_oidc | Mozilla_Django_Oidc | 4.0.1 |
notifications | Notifications | 1.8.3 |
rosetta | Rosetta | 0.10.1 |
rules | Rules | 3.5.0.final.1 |
simple_history | Simple_History | 3.7.0 |
storages | Storages | 1.14.4 |
tos | Terms Of Service | 1.1.0 |
waffle | django-waffle | 4.1.0 |
Zeit
Ressourcenverwendung
Ressource | Wert |
---|---|
CPU-Zeit Benutzer | 246.180 ms |
CPU-Zeit System | 9.201 ms |
CPU-Zeit gesamt | 255.381 ms |
Verstrichene Zeit | 265.463 ms |
Kontextwechsel | 97 freiwillig, 7 unfreiwillig |
Browserzeit
Timing-Attribut | Verlauf | Millisekunden seit Seitenaufruf (plus Dauer) |
---|
Einstellungen von config.settings.staging
Einstellung | Wert |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ACCOUNT_ADAPTER | 'lms_base.adapter.AccountAdapter' |
ADMINS | (('admin', 'notifications-nmc@unibas.ch'),) |
ADMIN_URL | 'admin/' |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ('rules.permissions.ObjectPermissionBackend',
'lms_base.authentication.EDUIDAuthenticationBackend',
'django.contrib.auth.backends.ModelBackend') |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'users.User' |
BASE_DIR | '/app/project/config/../' |
CACHALOT_ENABLED | True |
CACHES | {'default': {'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://tales-redis:6379/1',
'OPTIONS': {'CLIENT_CLASS': 'django_redis.client.DefaultClient',
'IGNORE_EXCEPTIONS': True}}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CI_COMMIT_SHORT_SHA | '5b754a71' |
CI_COMMIT_TAG | '' |
CRISPY_ALLOWED_TEMPLATE_PACKS | 'bootstrap5' |
CRISPY_TEMPLATE_PACK | 'bootstrap5' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_MASKED | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | None |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False,
'AUTOCOMMIT': True,
'CONN_HEALTH_CHECKS': False,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql',
'HOST': 'tales-postgres',
'NAME': 'tptt',
'OPTIONS': {},
'PASSWORD': '********************',
'PORT': '5432',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIGRATE': True,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': 'tales_db_user'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATA_UPLOAD_MAX_NUMBER_FILES | 100 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S',
'%Y-%m-%d %H:%M:%S.%f',
'%Y-%m-%d %H:%M',
'%m/%d/%Y %H:%M:%S',
'%m/%d/%Y %H:%M:%S.%f',
'%m/%d/%Y %H:%M',
'%m/%d/%y %H:%M:%S',
'%m/%d/%y %H:%M:%S.%f',
'%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d',
'%m/%d/%Y',
'%m/%d/%y',
'%b %d %Y',
'%b %d, %Y',
'%d %b %Y',
'%d %b, %Y',
'%B %d %Y',
'%B %d, %Y',
'%d %B %Y',
'%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DEBUG_TOOLBAR_CONFIG | {'SHOW_TOOLBAR_CALLBACK': <function show_toolbar at 0x75247edb1620>} |
DEBUG_TOOLBAR_PANELS | ['debug_toolbar.panels.history.HistoryPanel',
'debug_toolbar.panels.versions.VersionsPanel',
'debug_toolbar.panels.timer.TimerPanel',
'debug_toolbar.panels.settings.SettingsPanel',
'debug_toolbar.panels.headers.HeadersPanel',
'debug_toolbar.panels.request.RequestPanel',
'debug_toolbar.panels.sql.SQLPanel',
'debug_toolbar.panels.staticfiles.StaticFilesPanel',
'debug_toolbar.panels.templates.TemplatesPanel',
'debug_toolbar.panels.cache.CachePanel',
'cachalot.panels.CachalotPanel',
'debug_toolbar.panels.signals.SignalsPanel',
'debug_toolbar.panels.logging.LoggingPanel',
'debug_toolbar.panels.redirects.RedirectsPanel',
'debug_toolbar.panels.profiling.ProfilingPanel'] |
DECIMAL_SEPARATOR | '.' |
DEFAULT_AUTO_FIELD | 'django.db.models.AutoField' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'contact-nmc@unibas.ch' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DEPLOY_ENV | 'staging' |
DISALLOWED_USER_AGENTS | [] |
DJANGO_APPS | ('django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.forms',
'django.contrib.sites',
'django.contrib.flatpages',
'modeltranslation',
'django.contrib.admin',
'django.contrib.redirects',
'django.contrib.sitemaps',
'django.contrib.humanize') |
DJANGO_NOTIFICATIONS_CONFIG | {'USE_JSONFIELD': True} |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'smtp.unibas.ch' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler',
'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.TemplatesSetting' |
IGNORABLE_404_URLS | [] |
IMAGEKIT_CACHEFILE_DIR | 'CACHE/images' |
IMAGEKIT_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.hash' |
IMAGEKIT_CACHE_BACKEND | 'default' |
IMAGEKIT_CACHE_PREFIX | 'imagekit:' |
IMAGEKIT_CACHE_TIMEOUT | 300 |
IMAGEKIT_DEFAULT_CACHEFILE_BACKEND | 'imagekit.cachefiles.backends.Simple' |
IMAGEKIT_DEFAULT_CACHEFILE_STRATEGY | 'imagekit.cachefiles.strategies.JustInTime' |
IMAGEKIT_DEFAULT_FILE_STORAGE | 'default' |
IMAGEKIT_SPEC_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.source_name_as_path' |
IMAGEKIT_USE_MEMCACHED_SAFE_CACHE_KEY | '********************' |
INSTALLED_APPS | ('django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.forms',
'django.contrib.sites',
'django.contrib.flatpages',
'modeltranslation',
'django.contrib.admin',
'django.contrib.redirects',
'django.contrib.sitemaps',
'django.contrib.humanize',
'simple_history',
'crispy_forms',
'crispy_bootstrap5',
'allauth',
'allauth.account',
'allauth.socialaccount',
'mozilla_django_oidc',
'django_extensions',
'markdownx',
'rules.apps.AutodiscoverRulesConfig',
'imagekit',
'waffle',
'django_htmx',
'cachalot',
'corsheaders',
'tos',
'tos_i18n',
'impersonate',
'rosetta',
'django_q',
'notifications',
'link_check',
'users.apps.UsersConfig',
'lms_base',
'lms_tales.apps.LMSTalesConfig',
'lms_comments.apps.LMSCommentsConfig',
'lms_static_texts.apps.LMSStaticTextsConfig',
'tags.apps.TagsConfig',
'startpage.apps.StartpageConfig',
'search.apps.SearchConfig',
'utils.apps.UtilsConfig',
'dashboard.apps.DashboardConfig',
'reporting.apps.ReportingConfig',
'lms_notifications.apps.LMSNotificationsConfig',
'storages',
'debug_toolbar') |
INTERNAL_IPS | ['127.0.0.1'] |
LANGUAGES | (('de', 'Deutsch'), ('en', 'Englisch'), ('fr', 'Franzoesisch')) |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ur'] |
LANGUAGE_CODE | 'de' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE_PATHS | ['/app/project/config/../locale'] |
LOCAL_APPS | ('users.apps.UsersConfig',
'lms_base',
'lms_tales.apps.LMSTalesConfig',
'lms_comments.apps.LMSCommentsConfig',
'lms_static_texts.apps.LMSStaticTextsConfig',
'tags.apps.TagsConfig',
'startpage.apps.StartpageConfig',
'search.apps.SearchConfig',
'utils.apps.UtilsConfig',
'dashboard.apps.DashboardConfig',
'reporting.apps.ReportingConfig',
'lms_notifications.apps.LMSNotificationsConfig') |
LOGGING | {'disable_existing_loggers': False,
'formatters': {'verbose': {'format': '{asctime} {levelname} {name} {module} '
'{message}',
'style': '{'}},
'handlers': {'console': {'class': 'logging.StreamHandler',
'formatter': 'verbose'},
'mail_admins': {'class': 'django.utils.log.AdminEmailHandler',
'include_html': True,
'level': 'ERROR'}},
'loggers': {'django': {'handlers': ['console', 'mail_admins'],
'level': 'WARNING',
'propagate': True},
'django.request': {'handlers': ['console', 'mail_admins'],
'level': 'ERROR',
'propagate': False},
'django.security': {'handlers': ['console', 'mail_admins'],
'level': 'ERROR',
'propagate': False},
'fontTools': {'handlers': ['console'], 'level': 'ERROR'},
'tales': {'handlers': ['console'], 'level': 'INFO'},
'weasyprint': {'handlers': ['console'], 'level': 'ERROR'}},
'root': {'handlers': ['console'], 'level': 'WARNING'},
'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/' |
LOGIN_URL | 'account_login' |
LOGOUT_REDIRECT_URL | '/' |
MANAGERS | [] |
MARKDOWNX_EDITOR_RESIZABLE | True |
MARKDOWNX_IMAGE_MAX_SIZE | {'quality': 90, 'size': (1920, 5600)} |
MARKDOWNX_MARKDOWNIFY_FUNCTION | 'lms_base.utils.markdownify' |
MARKDOWNX_MARKDOWN_EXTENSIONS | ['markdown.extensions.extra',
'markdown.extensions.smarty',
'markdown.extensions.codehilite',
'markdown.extensions.fenced_code',
'markdown.extensions.attr_list',
'markdown.extensions.toc',
'utils.markdown_extensions',
'python_markdown_oembed_extension'] |
MARKDOWNX_MEDIA_PATH | 'markdownx/' |
MARKDOWNX_UPLOAD_URLS_PATH | '/markdownx/upload/' |
MARKDOWNX_URLS_PATH | '/markdownx/markdownify/' |
MEDIA_ROOT | '/app/project/media' |
MEDIA_URL | '/media/' |
MESSAGE_REAPPEAR_TIME | 600 |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['corsheaders.middleware.CorsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'lms_tales.middleware.SetLocaleFoundInUserSettings',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'allauth.account.middleware.AccountMiddleware',
'impersonate.middleware.ImpersonateMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'simple_history.middleware.HistoryRequestMiddleware',
'django.contrib.redirects.middleware.RedirectFallbackMiddleware',
'waffle.middleware.WaffleMiddleware',
'django_htmx.middleware.HtmxMiddleware',
'lms_tales.middleware.TalesUserAgreementMiddleware',
'lms_tales.middleware.ScheduledMessagesMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware'] |
MIGRATION_MODULES | {'tos': 'lms_tales.migrate.tos'} |
MODELTRANSLATION_CUSTOM_FIELDS | ('JSONField',) |
MODELTRANSLATION_DEFAULT_LANGUAGE | 'de' |
MODELTRANSLATION_FALLBACK_LANGUAGES | ('de', 'en', 'fr') |
MONTH_DAY_FORMAT | 'F j' |
NOTIFICATIONS_NOTIFICATION_MODEL | 'notifications.Notification' |
NUMBER_GROUPING | 0 |
OIDC_OP_AUTHORIZATION_ENDPOINT | 'https://login.test.eduid.ch/idp/profile/oidc/authorize' |
OIDC_OP_JWKS_ENDPOINT | 'https://login.test.eduid.ch/idp/profile/oidc/keyset' |
OIDC_OP_TOKEN_ENDPOINT | '********************' |
OIDC_OP_USER_ENDPOINT | 'https://login.test.eduid.ch/idp/profile/oidc/userinfo' |
OIDC_RP_CLIENT_ID | 'unibas-tales' |
OIDC_RP_CLIENT_SECRET | '********************' |
OIDC_RP_SCOPES | 'openid email profile https://login.eduid.ch/authz/User.Read' |
OIDC_RP_SIGN_ALGO | 'RS256' |
OIDC_TOKEN_USE_BASIC_AUTH | '********************' |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PREPEND_WWW | False |
PROJECT_DIR | '/app/project/config/../' |
Q_CLUSTER | {'catch_up': False,
'django_redis': 'default',
'name': 'QCluster',
'retry': 600,
'timeout': 500,
'workers': 4} |
RELEASE_NAME | '' |
REQUIRE_SUPERUSER | True |
ROOT_URLCONF | 'config.urls' |
ROSETTA_MESSAGES_SOURCE_LANGUAGE_CODE | 'de' |
ROSETTA_MESSAGES_SOURCE_LANGUAGE_NAME | 'Deutsch' |
ROSETTA_SHOW_AT_ADMIN_PANEL | 'True' |
SECRET_KEY | '********************' |
SECRET_KEY_FALLBACKS | '********************' |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_CROSS_ORIGIN_OPENER_POLICY | 'same-origin' |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | ('HTTP_X_FORWARDED_PROTO', 'https') |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | None |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.cache' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'config.settings.staging' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_DOMAIN | 'https://nmc-tales-staging.nmc.unibas.ch/' |
SITE_ID | 1 |
SLACK_WEBHOOK | 'https://hooks.slack.com/services/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' |
STAGING_EMAIL_RECIPIENTS | ['notifications-nmc@unibas.ch'] |
STATICFILES_DIRS | ['/app/project/config/../static'] |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/app/project/config/../../staticfiles' |
STATIC_URL | '/static/' |
STORAGES | {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'},
'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}} |
TALES_BASE_URL | 'https://tales.nmc.unibas.ch' |
TALES_VERSION | 'dev' |
TEMPLATES | [{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/app/project/config/../templates',
'/usr/local/lib/python3.11/site-packages/django/forms/templates'],
'OPTIONS': {'builtins': ['django.templatetags.i18n',
'django.templatetags.static'],
'context_processors': ['django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
'utils.context_processors.ci_info'],
'debug': False,
'loaders': ['django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader']}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THIRD_PARTY_APPS | ('debug_toolbar',) |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Europe/Zurich' |
USER_DEACTIVATION_AFTER_DAYS | 730 |
USER_DELETION_AFTER_DAYS | 912 |
USE_DEPRECATED_PYTZ | False |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | True |
USE_X_FORWARDED_PORT | False |
VIEW_CACHE_TTL | 600 |
WAFFLE_LOG_MISSING_FLAGS | 30 |
WAFFLE_LOG_MISSING_SAMPLES | 30 |
WAFFLE_LOG_MISSING_SWITCHES | 30 |
WSGI_APPLICATION | 'config.wsgi.application' |
X_FRAME_OPTIONS | 'DENY' |
YEAR_MONTH_FORMAT | 'F Y' |
Header
Anfrage-Header
Schlüssel | Wert |
---|---|
Accept | */* |
Accept-Encoding | gzip, br, zstd, deflate |
Host | nmc-tales-staging.nmc.unibas.ch |
User-Agent | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
X-Forwarded-For | 3.144.99.39 |
X-Forwarded-Host | nmc-tales-staging.nmc.unibas.ch |
X-Forwarded-Proto | https |
Antwort-Header
Schlüssel | Wert |
---|---|
Content-Type | text/html; charset=utf-8 |
WSGI-Umgebung
Da sich die WSGI-Umgebung von der Umgebung des Servers ableitet, wird nur eine notwendige Teilmenge dargestellt.
Schlüssel | Wert |
---|---|
PATH_INFO | /de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290 |
QUERY_STRING | |
REMOTE_ADDR | 3.144.99.39 |
REMOTE_HOST | 3.144.99.39 |
REQUEST_METHOD | GET |
SCRIPT_NAME | |
SERVER_NAME | 172.19.0.6 |
SERVER_PORT | 8000 |
Anfrage
View-Informationen
View-Funktion | Argumente | Schlüsselwort-Argumente | URL-Name |
---|---|---|---|
utils.decorators.cache_per_user.<locals>.decorator.<locals>.apply_cache |
() |
{'chapter_pk': 228,
'chapter_slug': 'second-best-worlds',
'course_pk': 44,
'course_slug': 'exploring-possible-futures',
'pk': 1290,
'slug': 'perfect-competition-as-example'} |
tales:step |
Keine Cookies
Keine Sitzungsdaten
Keine GET-Daten
Keine POST-Daten
SQL-Abfragen von 1 Verbindung
- default 8,67 ms (7 Abfragen inklusive 3 ähnlich )
Abfrage | Verlauf | Zeit (ms) | Aktion | ||
---|---|---|---|---|---|
SELECT "lms_tales_talesstep"."id",
"lms_tales_talesstep"."created", "lms_tales_talesstep"."modified", "lms_tales_talesstep"."status_changed", "lms_tales_talesstep"."is_removed", "lms_tales_talesstep"."title", "lms_tales_talesstep"."title_de", "lms_tales_talesstep"."title_en", "lms_tales_talesstep"."title_fr", "lms_tales_talesstep"."subtitle", "lms_tales_talesstep"."subtitle_de", "lms_tales_talesstep"."subtitle_en", "lms_tales_talesstep"."subtitle_fr", "lms_tales_talesstep"."short_description", "lms_tales_talesstep"."short_description_de", "lms_tales_talesstep"."short_description_en", "lms_tales_talesstep"."short_description_fr", "lms_tales_talesstep"."title_image", "lms_tales_talesstep"."slug", "lms_tales_talesstep"."content", "lms_tales_talesstep"."content_de", "lms_tales_talesstep"."content_en", "lms_tales_talesstep"."content_fr", "lms_tales_talesstep"."content_html", "lms_tales_talesstep"."content_html_de", "lms_tales_talesstep"."content_html_en", "lms_tales_talesstep"."content_html_fr", "lms_tales_talesstep"."content_json", "lms_tales_talesstep"."content_json_de", "lms_tales_talesstep"."content_json_en", "lms_tales_talesstep"."content_json_fr", "lms_tales_talesstep"."copyright", "lms_tales_talesstep"."copyright_de", "lms_tales_talesstep"."copyright_en", "lms_tales_talesstep"."copyright_fr", "lms_tales_talesstep"."step_type", "lms_tales_talesstep"."duration", "lms_tales_talesstep"."order", "lms_tales_talesstep"."status", "lms_tales_talesstep"."allow_comments", "lms_tales_talesstep"."call_to_action", "lms_tales_talesstep"."call_to_action_de", "lms_tales_talesstep"."call_to_action_en", "lms_tales_talesstep"."call_to_action_fr", "lms_tales_talesstep"."chapter_id" FROM "lms_tales_talesstep" WHERE "lms_tales_talesstep"."id" = 1290 LIMIT 21SELECT ••• FROM "lms_tales_talesstep" WHERE "lms_tales_talesstep"."id" = 1290 LIMIT 21 |
2,04 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(20) self.object = self.get_object() /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get_object(53) obj = queryset.get() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
|||||
SELECT "lms_tales_talesstepfilenew"."id",
3 ähnliche Abfragen.
"lms_tales_talesstepfilenew"."created", "lms_tales_talesstepfilenew"."modified", "lms_tales_talesstepfilenew"."step_id", "lms_tales_talesstepfilenew"."file_id", "lms_tales_talesstepfilenew"."language" FROM "lms_tales_talesstepfilenew" WHERE ("lms_tales_talesstepfilenew"."language" = 'de' AND "lms_tales_talesstepfilenew"."step_id" = 1290)SELECT ••• FROM "lms_tales_talesstepfilenew" WHERE ("lms_tales_talesstepfilenew"."language" = 'de' AND "lms_tales_talesstepfilenew"."step_id" = 1290) |
1,13 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(63) if len(step_files_new) == 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
|||||
SELECT "lms_tales_talesstepfilenew"."id",
3 ähnliche Abfragen.
"lms_tales_talesstepfilenew"."created", "lms_tales_talesstepfilenew"."modified", "lms_tales_talesstepfilenew"."step_id", "lms_tales_talesstepfilenew"."file_id", "lms_tales_talesstepfilenew"."language" FROM "lms_tales_talesstepfilenew" WHERE ("lms_tales_talesstepfilenew"."language" = 'en' AND "lms_tales_talesstepfilenew"."step_id" = 1290)SELECT ••• FROM "lms_tales_talesstepfilenew" WHERE ("lms_tales_talesstepfilenew"."language" = 'en' AND "lms_tales_talesstepfilenew"."step_id" = 1290) |
0,61 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
|||||
SELECT "lms_tales_talesstepfilenew"."id",
3 ähnliche Abfragen.
"lms_tales_talesstepfilenew"."created", "lms_tales_talesstepfilenew"."modified", "lms_tales_talesstepfilenew"."step_id", "lms_tales_talesstepfilenew"."file_id", "lms_tales_talesstepfilenew"."language" FROM "lms_tales_talesstepfilenew" WHERE ("lms_tales_talesstepfilenew"."language" = 'fr' AND "lms_tales_talesstepfilenew"."step_id" = 1290)SELECT ••• FROM "lms_tales_talesstepfilenew" WHERE ("lms_tales_talesstepfilenew"."language" = 'fr' AND "lms_tales_talesstepfilenew"."step_id" = 1290) |
0,57 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
|||||
SELECT "lms_tales_talesstep"."id",
"lms_tales_talesstep"."created", "lms_tales_talesstep"."modified", "lms_tales_talesstep"."status_changed", "lms_tales_talesstep"."is_removed", "lms_tales_talesstep"."title", "lms_tales_talesstep"."title_de", "lms_tales_talesstep"."title_en", "lms_tales_talesstep"."title_fr", "lms_tales_talesstep"."subtitle", "lms_tales_talesstep"."subtitle_de", "lms_tales_talesstep"."subtitle_en", "lms_tales_talesstep"."subtitle_fr", "lms_tales_talesstep"."short_description", "lms_tales_talesstep"."short_description_de", "lms_tales_talesstep"."short_description_en", "lms_tales_talesstep"."short_description_fr", "lms_tales_talesstep"."title_image", "lms_tales_talesstep"."slug", "lms_tales_talesstep"."content", "lms_tales_talesstep"."content_de", "lms_tales_talesstep"."content_en", "lms_tales_talesstep"."content_fr", "lms_tales_talesstep"."content_html", "lms_tales_talesstep"."content_html_de", "lms_tales_talesstep"."content_html_en", "lms_tales_talesstep"."content_html_fr", "lms_tales_talesstep"."content_json", "lms_tales_talesstep"."content_json_de", "lms_tales_talesstep"."content_json_en", "lms_tales_talesstep"."content_json_fr", "lms_tales_talesstep"."copyright", "lms_tales_talesstep"."copyright_de", "lms_tales_talesstep"."copyright_en", "lms_tales_talesstep"."copyright_fr", "lms_tales_talesstep"."step_type", "lms_tales_talesstep"."duration", "lms_tales_talesstep"."order", "lms_tales_talesstep"."status", "lms_tales_talesstep"."allow_comments", "lms_tales_talesstep"."call_to_action", "lms_tales_talesstep"."call_to_action_de", "lms_tales_talesstep"."call_to_action_en", "lms_tales_talesstep"."call_to_action_fr", "lms_tales_talesstep"."chapter_id" FROM "lms_tales_talesstep" INNER JOIN "lms_tales_taleschapter" ON ("lms_tales_talesstep"."chapter_id" = "lms_tales_taleschapter"."id") WHERE ("lms_tales_talesstep"."chapter_id" = 228 AND NOT "lms_tales_talesstep"."is_removed" AND "lms_tales_talesstep"."status" = 'published' AND "lms_tales_talesstep"."order" > 2) ORDER BY "lms_tales_taleschapter"."course_id" ASC, "lms_tales_taleschapter"."order" ASC, "lms_tales_talesstep"."order" ASC LIMIT 1SELECT ••• FROM "lms_tales_talesstep" INNER JOIN "lms_tales_taleschapter" ON ("lms_tales_talesstep"."chapter_id" = "lms_tales_taleschapter"."id") WHERE ("lms_tales_talesstep"."chapter_id" = 228 AND NOT "lms_tales_talesstep"."is_removed" AND "lms_tales_talesstep"."status" = 'published' AND "lms_tales_talesstep"."order" > 2) ORDER BY "lms_tales_taleschapter"."course_id" ASC, "lms_tales_taleschapter"."order" ASC, "lms_tales_talesstep"."order" ASC LIMIT 1 |
1,80 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /app/project/lms_base/templatetags/utils.py in get_next_step(105) return step.get_next(published_only=True) /app/project/lms_base/models.py in get_next(249) return self._get_neighbour_step(is_next=True, published_only=published_only) /app/project/lms_base/models.py in _get_neighbour_step(201) step = self.__class__.next_previous_manager.get_next_previous( /app/project/lms_base/models.py in get_next_previous(71) return qs.first() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
|||||
SELECT "lms_tales_talesstep"."id",
"lms_tales_talesstep"."created", "lms_tales_talesstep"."modified", "lms_tales_talesstep"."status_changed", "lms_tales_talesstep"."is_removed", "lms_tales_talesstep"."title", "lms_tales_talesstep"."title_de", "lms_tales_talesstep"."title_en", "lms_tales_talesstep"."title_fr", "lms_tales_talesstep"."subtitle", "lms_tales_talesstep"."subtitle_de", "lms_tales_talesstep"."subtitle_en", "lms_tales_talesstep"."subtitle_fr", "lms_tales_talesstep"."short_description", "lms_tales_talesstep"."short_description_de", "lms_tales_talesstep"."short_description_en", "lms_tales_talesstep"."short_description_fr", "lms_tales_talesstep"."title_image", "lms_tales_talesstep"."slug", "lms_tales_talesstep"."content", "lms_tales_talesstep"."content_de", "lms_tales_talesstep"."content_en", "lms_tales_talesstep"."content_fr", "lms_tales_talesstep"."content_html", "lms_tales_talesstep"."content_html_de", "lms_tales_talesstep"."content_html_en", "lms_tales_talesstep"."content_html_fr", "lms_tales_talesstep"."content_json", "lms_tales_talesstep"."content_json_de", "lms_tales_talesstep"."content_json_en", "lms_tales_talesstep"."content_json_fr", "lms_tales_talesstep"."copyright", "lms_tales_talesstep"."copyright_de", "lms_tales_talesstep"."copyright_en", "lms_tales_talesstep"."copyright_fr", "lms_tales_talesstep"."step_type", "lms_tales_talesstep"."duration", "lms_tales_talesstep"."order", "lms_tales_talesstep"."status", "lms_tales_talesstep"."allow_comments", "lms_tales_talesstep"."call_to_action", "lms_tales_talesstep"."call_to_action_de", "lms_tales_talesstep"."call_to_action_en", "lms_tales_talesstep"."call_to_action_fr", "lms_tales_talesstep"."chapter_id" FROM "lms_tales_talesstep" INNER JOIN "lms_tales_taleschapter" ON ("lms_tales_talesstep"."chapter_id" = "lms_tales_taleschapter"."id") WHERE ("lms_tales_talesstep"."chapter_id" = 228 AND NOT "lms_tales_talesstep"."is_removed" AND "lms_tales_talesstep"."status" = 'published' AND "lms_tales_talesstep"."order" < 2) ORDER BY "lms_tales_taleschapter"."course_id" DESC, "lms_tales_taleschapter"."order" DESC, "lms_tales_talesstep"."order" DESC LIMIT 1SELECT ••• FROM "lms_tales_talesstep" INNER JOIN "lms_tales_taleschapter" ON ("lms_tales_talesstep"."chapter_id" = "lms_tales_taleschapter"."id") WHERE ("lms_tales_talesstep"."chapter_id" = 228 AND NOT "lms_tales_talesstep"."is_removed" AND "lms_tales_talesstep"."status" = 'published' AND "lms_tales_talesstep"."order" < 2) ORDER BY "lms_tales_taleschapter"."course_id" DESC, "lms_tales_taleschapter"."order" DESC, "lms_tales_talesstep"."order" DESC LIMIT 1 |
1,12 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /app/project/lms_base/templatetags/utils.py in get_previous_step(93) return step.get_previous(published_only=True) /app/project/lms_base/models.py in get_previous(255) return self._get_neighbour_step(is_next=False, published_only=published_only) /app/project/lms_base/models.py in _get_neighbour_step(201) step = self.__class__.next_previous_manager.get_next_previous( /app/project/lms_base/models.py in get_next_previous(72) return qs.last() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
|||||
SELECT "lms_tales_talesstep"."id",
"lms_tales_talesstep"."created", "lms_tales_talesstep"."modified", "lms_tales_talesstep"."status_changed", "lms_tales_talesstep"."is_removed", "lms_tales_talesstep"."title", "lms_tales_talesstep"."title_de", "lms_tales_talesstep"."title_en", "lms_tales_talesstep"."title_fr", "lms_tales_talesstep"."subtitle", "lms_tales_talesstep"."subtitle_de", "lms_tales_talesstep"."subtitle_en", "lms_tales_talesstep"."subtitle_fr", "lms_tales_talesstep"."short_description", "lms_tales_talesstep"."short_description_de", "lms_tales_talesstep"."short_description_en", "lms_tales_talesstep"."short_description_fr", "lms_tales_talesstep"."title_image", "lms_tales_talesstep"."slug", "lms_tales_talesstep"."content", "lms_tales_talesstep"."content_de", "lms_tales_talesstep"."content_en", "lms_tales_talesstep"."content_fr", "lms_tales_talesstep"."content_html", "lms_tales_talesstep"."content_html_de", "lms_tales_talesstep"."content_html_en", "lms_tales_talesstep"."content_html_fr", "lms_tales_talesstep"."content_json", "lms_tales_talesstep"."content_json_de", "lms_tales_talesstep"."content_json_en", "lms_tales_talesstep"."content_json_fr", "lms_tales_talesstep"."copyright", "lms_tales_talesstep"."copyright_de", "lms_tales_talesstep"."copyright_en", "lms_tales_talesstep"."copyright_fr", "lms_tales_talesstep"."step_type", "lms_tales_talesstep"."duration", "lms_tales_talesstep"."order", "lms_tales_talesstep"."status", "lms_tales_talesstep"."allow_comments", "lms_tales_talesstep"."call_to_action", "lms_tales_talesstep"."call_to_action_de", "lms_tales_talesstep"."call_to_action_en", "lms_tales_talesstep"."call_to_action_fr", "lms_tales_talesstep"."chapter_id" FROM "lms_tales_talesstep" WHERE ("lms_tales_talesstep"."chapter_id" = 228 AND NOT "lms_tales_talesstep"."is_removed" AND "lms_tales_talesstep"."status" = 'published') ORDER BY "lms_tales_talesstep"."order" ASCSELECT ••• FROM "lms_tales_talesstep" WHERE ("lms_tales_talesstep"."chapter_id" = 228 AND NOT "lms_tales_talesstep"."is_removed" AND "lms_tales_talesstep"."status" = 'published') ORDER BY "lms_tales_talesstep"."order" ASC |
1,41 | ||||
Verbindung: default Transaktionsstatus: Wartet /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_step_number(121) step_list = list(self.chapter.published_steps.all().order_by("order")) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(64) result = execute_query_func() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in <lambda>(80) execute_query_func = lambda: original(compiler, *args, **kwargs) |
Statische Dateien (273 gefunden, 7 benutzt)
Pfad mit statischen Dateien
- /app/project/static
Apps mit statischen Dateien
- modeltranslation
- django.contrib.admin
- django_extensions
- markdownx
- django_htmx
- rosetta
- notifications
- debug_toolbar
Statische Dateien
- images/icon_tales_white.png
- /app/project/static/images/icon_tales_white.png
- images/icon_tales_transp.png
- /app/project/static/images/icon_tales_transp.png
- lms_base/css/lms_base.css
- /app/project/static/lms_base/css/lms_base.css
- lms_tales/css/lms_tales.css
- None
- lms_base/js/lms_base.js
- /app/project/static/lms_base/js/lms_base.js
- lms_tales/js/lms_tales.js
- /app/project/static/lms_tales/js/lms_tales.js
- images/uni-basel-logo-de.svg
- /app/project/static/images/uni-basel-logo-de.svg
django.contrib.staticfiles.finders.FileSystemFinder (123 Dateien)
Pfad | Ort |
---|---|
robots.txt | /app/project/static/robots.txt |
alphorn_07.jpg | /app/project/static/alphorn_07.jpg |
browserconfig.xml | /app/project/static/browserconfig.xml |
alphorn_11.jpg | /app/project/static/alphorn_11.jpg |
lottie/optimized_tales_banner2.mp4 | /app/project/static/lottie/optimized_tales_banner2.mp4 |
lottie/optimized_tales_banner_av1.webm | /app/project/static/lottie/optimized_tales_banner_av1.webm |
lottie/tales_banner3.mp4 | /app/project/static/lottie/tales_banner3.mp4 |
lottie/optimized_tales_banner3.webm | /app/project/static/lottie/optimized_tales_banner3.webm |
lottie/optimized_tales_banner2.webm | /app/project/static/lottie/optimized_tales_banner2.webm |
lottie/tales_banner.json | /app/project/static/lottie/tales_banner.json |
lottie/optimized_tales_banner3.mp4 | /app/project/static/lottie/optimized_tales_banner3.mp4 |
lottie/optimized_tales_banner_av1.mp4 | /app/project/static/lottie/optimized_tales_banner_av1.mp4 |
lottie/optimized_tales_banner.mp4 | /app/project/static/lottie/optimized_tales_banner.mp4 |
lottie/tales_banner2.mp4 | /app/project/static/lottie/tales_banner2.mp4 |
lms_base/font/nmc.woff | /app/project/static/lms_base/font/nmc.woff |
lms_base/font/icon-left.woff2 | /app/project/static/lms_base/font/icon-left.woff2 |
lms_base/font/nmc.woff2 | /app/project/static/lms_base/font/nmc.woff2 |
lms_base/font/nmc.eot | /app/project/static/lms_base/font/nmc.eot |
lms_base/font/icon-left.woff | /app/project/static/lms_base/font/icon-left.woff |
lms_base/font/nmc.svg | /app/project/static/lms_base/font/nmc.svg |
lms_base/font/icon-left.svg | /app/project/static/lms_base/font/icon-left.svg |
lms_base/font/nmc.ttf | /app/project/static/lms_base/font/nmc.ttf |
lms_base/font/icon-left.eot | /app/project/static/lms_base/font/icon-left.eot |
lms_base/font/icon-left.ttf | /app/project/static/lms_base/font/icon-left.ttf |
lms_base/css/lms_base.css | /app/project/static/lms_base/css/lms_base.css |
lms_base/css/lms_base.css.map | /app/project/static/lms_base/css/lms_base.css.map |
lms_base/js/lms_base.js | /app/project/static/lms_base/js/lms_base.js |
lms_base/js/bootstrap.bundle.min.js | /app/project/static/lms_base/js/bootstrap.bundle.min.js |
reporting/css/report_pdf.css.map | /app/project/static/reporting/css/report_pdf.css.map |
reporting/css/report_pdf.css | /app/project/static/reporting/css/report_pdf.css |
reporting/images/nmcunilogo.png | /app/project/static/reporting/images/nmcunilogo.png |
reporting/images/background.jpg | /app/project/static/reporting/images/background.jpg |
dropzone/dropzone.min.css | /app/project/static/dropzone/dropzone.min.css |
dropzone/dropzone-amd-module.min.js | /app/project/static/dropzone/dropzone-amd-module.min.js |
dropzone/basic.min.css | /app/project/static/dropzone/basic.min.css |
dropzone/dropzone.min.js | /app/project/static/dropzone/dropzone.min.js |
lms_tales/font/nmc.woff | /app/project/static/lms_tales/font/nmc.woff |
lms_tales/font/icon-left.woff2 | /app/project/static/lms_tales/font/icon-left.woff2 |
lms_tales/font/nmc.woff2 | /app/project/static/lms_tales/font/nmc.woff2 |
lms_tales/font/nmc.eot | /app/project/static/lms_tales/font/nmc.eot |
lms_tales/font/icon-left.woff | /app/project/static/lms_tales/font/icon-left.woff |
lms_tales/font/nmc.svg | /app/project/static/lms_tales/font/nmc.svg |
lms_tales/font/icon-left.svg | /app/project/static/lms_tales/font/icon-left.svg |
lms_tales/font/nmc.ttf | /app/project/static/lms_tales/font/nmc.ttf |
lms_tales/font/icon-left.eot | /app/project/static/lms_tales/font/icon-left.eot |
lms_tales/font/icon-left.ttf | /app/project/static/lms_tales/font/icon-left.ttf |
lms_tales/js/lms_tales.js | /app/project/static/lms_tales/js/lms_tales.js |
opos/4_4.html | /app/project/static/opos/4_4.html |
opos/4_3.html | /app/project/static/opos/4_3.html |
opos/4_5.html | /app/project/static/opos/4_5.html |
opos/4_1.html | /app/project/static/opos/4_1.html |
tales_editor/favicon.ico | /app/project/static/tales_editor/favicon.ico |
tales_editor/index.html | /app/project/static/tales_editor/index.html |
tales_editor/css/chunk-vendors.css | /app/project/static/tales_editor/css/chunk-vendors.css |
tales_editor/css/app.css | /app/project/static/tales_editor/css/app.css |
tales_editor/img/bootstrap-icons.svg | /app/project/static/tales_editor/img/bootstrap-icons.svg |
tales_editor/img/remixicon.symbol.svg | /app/project/static/tales_editor/img/remixicon.symbol.svg |
tales_editor/js/app.js | /app/project/static/tales_editor/js/app.js |
tales_editor/js/app.js.map | /app/project/static/tales_editor/js/app.js.map |
tales_editor/js/chunk-vendors.js | /app/project/static/tales_editor/js/chunk-vendors.js |
tales_editor/js/chunk-vendors.js.map | /app/project/static/tales_editor/js/chunk-vendors.js.map |
images/opos_map_xs.png | /app/project/static/images/opos_map_xs.png |
images/opos_map_xl.png | /app/project/static/images/opos_map_xl.png |
images/edu-id-button-gray.png | /app/project/static/images/edu-id-button-gray.png |
images/icon_tales_mint.png | /app/project/static/images/icon_tales_mint.png |
images/favicon.ico | /app/project/static/images/favicon.ico |
images/door.jpg | /app/project/static/images/door.jpg |
images/icon_tales_transp_32x32.png | /app/project/static/images/icon_tales_transp_32x32.png |
images/uni-basel-logo-de.svg | /app/project/static/images/uni-basel-logo-de.svg |
images/raymond_ammann.jpg | /app/project/static/images/raymond_ammann.jpg |
images/help_en.jpg | /app/project/static/images/help_en.jpg |
images/opos_map_xs.avif | /app/project/static/images/opos_map_xs.avif |
images/opos_map_md.png | /app/project/static/images/opos_map_md.png |
images/help_de.jpg | /app/project/static/images/help_de.jpg |
images/bild.png | /app/project/static/images/bild.png |
images/help.jpg | /app/project/static/images/help.jpg |
images/Hochformat.jpg | /app/project/static/images/Hochformat.jpg |
images/empty_classroom.jpg | /app/project/static/images/empty_classroom.jpg |
images/uni-basel-logo-de.png | /app/project/static/images/uni-basel-logo-de.png |
images/contact-side-image-1.jpg | /app/project/static/images/contact-side-image-1.jpg |
images/icon_tales_white.png | /app/project/static/images/icon_tales_white.png |
images/portalflag.png | /app/project/static/images/portalflag.png |
images/uni-basel-logo-en.svg | /app/project/static/images/uni-basel-logo-en.svg |
images/contact-side-image-2.jpg | /app/project/static/images/contact-side-image-2.jpg |
images/alp_und_hirtenhorn.jpg | /app/project/static/images/alp_und_hirtenhorn.jpg |
images/icon_tales_transp.png | /app/project/static/images/icon_tales_transp.png |
images/Weltkarte_Opos.png | /app/project/static/images/Weltkarte_Opos.png |
images/batkitty.jpg | /app/project/static/images/batkitty.jpg |
images/help_fr.jpg | /app/project/static/images/help_fr.jpg |
nahtkurs_glossar/antikoagu.jpg | /app/project/static/nahtkurs_glossar/antikoagu.jpg |
nahtkurs_glossar/anamnese.jpg | /app/project/static/nahtkurs_glossar/anamnese.jpg |
nahtkurs_glossar/wundinfektion.jpg | /app/project/static/nahtkurs_glossar/wundinfektion.jpg |
nahtkurs_glossar/tensilestength.jpg | /app/project/static/nahtkurs_glossar/tensilestength.jpg |
nahtkurs_glossar/glucose.jpg | /app/project/static/nahtkurs_glossar/glucose.jpg |
nahtkurs_glossar/nacl.jpg | /app/project/static/nahtkurs_glossar/nacl.jpg |
sounds/temperiert_nr_7.mp3 | /app/project/static/sounds/temperiert_nr_7.mp3 |
sounds/alphorn_13.mp3 | /app/project/static/sounds/alphorn_13.mp3 |
sounds/alphorn_05.mp3 | /app/project/static/sounds/alphorn_05.mp3 |
sounds/alphorn_11.mp3 | /app/project/static/sounds/alphorn_11.mp3 |
sounds/naturton_nr_7.mp3 | /app/project/static/sounds/naturton_nr_7.mp3 |
sounds/hirtenhorn_04.mp3 | /app/project/static/sounds/hirtenhorn_04.mp3 |
sounds/alphorn_14.mp3 | /app/project/static/sounds/alphorn_14.mp3 |
sounds/alphorn_01.mp3 | /app/project/static/sounds/alphorn_01.mp3 |
sounds/alphorn_12.mp3 | /app/project/static/sounds/alphorn_12.mp3 |
sounds/alphorn_02.mp3 | /app/project/static/sounds/alphorn_02.mp3 |
sounds/alphorn_09.mp3 | /app/project/static/sounds/alphorn_09.mp3 |
sounds/alphorn_04.mp3 | /app/project/static/sounds/alphorn_04.mp3 |
sounds/alphorn_15.mp3 | /app/project/static/sounds/alphorn_15.mp3 |
sounds/hirtenhorn_07.mp3 | /app/project/static/sounds/hirtenhorn_07.mp3 |
sounds/alphorn_08.mp3 | /app/project/static/sounds/alphorn_08.mp3 |
sounds/alphorn_03.mp3 | /app/project/static/sounds/alphorn_03.mp3 |
sounds/hirtenhorn_02.mp3 | /app/project/static/sounds/hirtenhorn_02.mp3 |
sounds/alphorn_10.mp3 | /app/project/static/sounds/alphorn_10.mp3 |
sounds/hirtenhorn_01.mp3 | /app/project/static/sounds/hirtenhorn_01.mp3 |
sounds/hirtenhorn_06.mp3 | /app/project/static/sounds/hirtenhorn_06.mp3 |
sounds/alphorn_07.mp3 | /app/project/static/sounds/alphorn_07.mp3 |
sounds/temperiert_nr_11.mp3 | /app/project/static/sounds/temperiert_nr_11.mp3 |
sounds/hirtenhorn_08.mp3 | /app/project/static/sounds/hirtenhorn_08.mp3 |
sounds/naturton_nr_11.mp3 | /app/project/static/sounds/naturton_nr_11.mp3 |
sounds/alphorn_16.mp3 | /app/project/static/sounds/alphorn_16.mp3 |
sounds/hirtenhorn_05.mp3 | /app/project/static/sounds/hirtenhorn_05.mp3 |
sounds/hirtenhorn_03.mp3 | /app/project/static/sounds/hirtenhorn_03.mp3 |
sounds/alphorn_06.mp3 | /app/project/static/sounds/alphorn_06.mp3 |
django.contrib.staticfiles.finders.AppDirectoriesFinder (150 Dateien)
Pfad | Ort |
---|---|
modeltranslation/css/tabbed_translation_fields.css | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/css/tabbed_translation_fields.css |
modeltranslation/js/clearable_inputs.js | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/js/clearable_inputs.js |
modeltranslation/js/tabbed_translation_fields.js | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/js/tabbed_translation_fields.js |
modeltranslation/js/force_jquery.js | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/js/force_jquery.js |
admin/css/autocomplete.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/autocomplete.css |
admin/css/responsive.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive.css |
admin/css/widgets.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/widgets.css |
admin/css/changelists.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/changelists.css |
admin/css/dark_mode.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dark_mode.css |
admin/css/responsive_rtl.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive_rtl.css |
admin/css/nav_sidebar.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/nav_sidebar.css |
admin/css/dashboard.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dashboard.css |
admin/css/forms.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/forms.css |
admin/css/rtl.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/rtl.css |
admin/css/login.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/login.css |
admin/css/base.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/base.css |
admin/css/vendor/select2/select2.min.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.min.css |
admin/css/vendor/select2/select2.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.css |
admin/css/vendor/select2/LICENSE-SELECT2.md | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md |
admin/img/icon-clock.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg |
admin/img/sorting-icons.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg |
admin/img/icon-alert.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg |
admin/img/icon-changelink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg |
admin/img/selector-icons.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg |
admin/img/calendar-icons.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg |
admin/img/tooltag-arrowright.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg |
admin/img/inline-delete.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg |
admin/img/icon-yes.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg |
admin/img/icon-unknown-alt.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg |
admin/img/icon-viewlink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-viewlink.svg |
admin/img/search.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/search.svg |
admin/img/icon-deletelink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg |
admin/img/README.txt | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/README.txt |
admin/img/LICENSE | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/LICENSE |
admin/img/icon-calendar.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg |
admin/img/tooltag-add.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg |
admin/img/icon-unknown.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg |
admin/img/icon-addlink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg |
admin/img/icon-no.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-no.svg |
admin/img/gis/move_vertex_off.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg |
admin/img/gis/move_vertex_on.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg |
admin/js/SelectBox.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectBox.js |
admin/js/jquery.init.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/jquery.init.js |
admin/js/inlines.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/inlines.js |
admin/js/collapse.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/collapse.js |
admin/js/filters.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/filters.js |
admin/js/change_form.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/change_form.js |
admin/js/autocomplete.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/autocomplete.js |
admin/js/nav_sidebar.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/nav_sidebar.js |
admin/js/popup_response.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/popup_response.js |
admin/js/SelectFilter2.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js |
admin/js/actions.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/actions.js |
admin/js/core.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/core.js |
admin/js/cancel.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/cancel.js |
admin/js/prepopulate.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate.js |
admin/js/urlify.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/urlify.js |
admin/js/calendar.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/calendar.js |
admin/js/prepopulate_init.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js |
admin/js/theme.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/theme.js |
admin/js/admin/DateTimeShortcuts.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js |
admin/js/admin/RelatedObjectLookups.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js |
admin/js/vendor/select2/select2.full.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.js |
admin/js/vendor/select2/select2.full.min.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js |
admin/js/vendor/select2/LICENSE.md | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md |
admin/js/vendor/select2/i18n/zh-CN.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js |
admin/js/vendor/select2/i18n/sr-Cyrl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js |
admin/js/vendor/select2/i18n/uk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js |
admin/js/vendor/select2/i18n/ar.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js |
admin/js/vendor/select2/i18n/ka.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ka.js |
admin/js/vendor/select2/i18n/bn.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bn.js |
admin/js/vendor/select2/i18n/pt.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js |
admin/js/vendor/select2/i18n/hi.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js |
admin/js/vendor/select2/i18n/dsb.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/dsb.js |
admin/js/vendor/select2/i18n/bs.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bs.js |
admin/js/vendor/select2/i18n/ru.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js |
admin/js/vendor/select2/i18n/ms.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js |
admin/js/vendor/select2/i18n/et.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js |
admin/js/vendor/select2/i18n/sl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sl.js |
admin/js/vendor/select2/i18n/he.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js |
admin/js/vendor/select2/i18n/is.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js |
admin/js/vendor/select2/i18n/cs.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js |
admin/js/vendor/select2/i18n/sq.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sq.js |
admin/js/vendor/select2/i18n/sv.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js |
admin/js/vendor/select2/i18n/ne.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ne.js |
admin/js/vendor/select2/i18n/ko.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js |
admin/js/vendor/select2/i18n/vi.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js |
admin/js/vendor/select2/i18n/ca.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js |
admin/js/vendor/select2/i18n/id.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js |
admin/js/vendor/select2/i18n/nb.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js |
admin/js/vendor/select2/i18n/hr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js |
admin/js/vendor/select2/i18n/af.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/af.js |
admin/js/vendor/select2/i18n/de.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js |
admin/js/vendor/select2/i18n/mk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js |
admin/js/vendor/select2/i18n/hy.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hy.js |
admin/js/vendor/select2/i18n/it.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js |
admin/js/vendor/select2/i18n/hu.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js |
admin/js/vendor/select2/i18n/ja.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js |
admin/js/vendor/select2/i18n/sk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js |
admin/js/vendor/select2/i18n/hsb.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hsb.js |
admin/js/vendor/select2/i18n/ro.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js |
admin/js/vendor/select2/i18n/en.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js |
admin/js/vendor/select2/i18n/el.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js |
admin/js/vendor/select2/i18n/fa.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js |
admin/js/vendor/select2/i18n/pt-BR.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js |
admin/js/vendor/select2/i18n/da.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js |
admin/js/vendor/select2/i18n/sr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js |
admin/js/vendor/select2/i18n/ps.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ps.js |
admin/js/vendor/select2/i18n/lt.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js |
admin/js/vendor/select2/i18n/az.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js |
admin/js/vendor/select2/i18n/fr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js |
admin/js/vendor/select2/i18n/fi.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js |
admin/js/vendor/select2/i18n/tk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tk.js |
admin/js/vendor/select2/i18n/th.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js |
admin/js/vendor/select2/i18n/gl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js |
admin/js/vendor/select2/i18n/eu.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js |
admin/js/vendor/select2/i18n/es.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js |
admin/js/vendor/select2/i18n/km.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js |
admin/js/vendor/select2/i18n/bg.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js |
admin/js/vendor/select2/i18n/lv.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js |
admin/js/vendor/select2/i18n/zh-TW.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js |
admin/js/vendor/select2/i18n/pl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js |
admin/js/vendor/select2/i18n/tr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js |
admin/js/vendor/select2/i18n/nl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js |
admin/js/vendor/xregexp/xregexp.min.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js |
admin/js/vendor/xregexp/LICENSE.txt | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt |
admin/js/vendor/xregexp/xregexp.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js |
admin/js/vendor/jquery/jquery.min.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js |
admin/js/vendor/jquery/jquery.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js |
admin/js/vendor/jquery/LICENSE.txt | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt |
django_extensions/css/jquery.autocomplete.css | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/css/jquery.autocomplete.css |
django_extensions/img/indicator.gif | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/img/indicator.gif |
django_extensions/js/jquery.ajaxQueue.js | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.ajaxQueue.js |
django_extensions/js/jquery.autocomplete.js | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.autocomplete.js |
django_extensions/js/jquery.bgiframe.js | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.bgiframe.js |
markdownx/admin/css/markdownx.css | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/admin/css/markdownx.css |
markdownx/admin/css/markdownx.min.css | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/admin/css/markdownx.min.css |
markdownx/js/markdownx.min.js | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/js/markdownx.min.js |
markdownx/js/markdownx.js | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/js/markdownx.js |
django-htmx.js | /usr/local/lib/python3.11/site-packages/django_htmx/static/django-htmx.js |
admin/rosetta/css/rosetta.css | /usr/local/lib/python3.11/site-packages/rosetta/static/admin/rosetta/css/rosetta.css |
admin/rosetta/js/rosetta.js | /usr/local/lib/python3.11/site-packages/rosetta/static/admin/rosetta/js/rosetta.js |
admin/img/icon_searchbox_rosetta.png | /usr/local/lib/python3.11/site-packages/rosetta/static/admin/img/icon_searchbox_rosetta.png |
notifications/notify.js | /usr/local/lib/python3.11/site-packages/notifications/static/notifications/notify.js |
debug_toolbar/css/toolbar.css | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css |
debug_toolbar/css/print.css | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/print.css |
debug_toolbar/js/utils.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/utils.js |
debug_toolbar/js/toolbar.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js |
debug_toolbar/js/history.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/history.js |
debug_toolbar/js/timer.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/timer.js |
debug_toolbar/js/redirect.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/redirect.js |
Templates (6 gerendert)
Template-Pfade
- /app/project/templates
- /usr/local/lib/python3.11/site-packages/django/forms/templates
Templates
- step/step_home.html
- /app/project/lms_tales/templates/step/step_home.html
-
Context zeigen
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '5b754a71', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'de', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x75245e99b9d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'Englisch')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'object': <TalesStep: Perfect competition as example>, 'talesstep': <TalesStep: Perfect competition as example>, 'view': <lms_tales.views.step_views.StepDetails object at 0x75245acdae90>}
- lms_tales_base.html
- /app/project/templates/lms_tales_base.html
-
Context zeigen
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '5b754a71', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'de', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x75245e99b9d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'Englisch')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'object': <TalesStep: Perfect competition as example>, 'talesstep': <TalesStep: Perfect competition as example>, 'view': <lms_tales.views.step_views.StepDetails object at 0x75245acdae90>}
- base.html
- /app/project/templates/base.html
-
Context zeigen
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '5b754a71', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'de', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x75245e99b9d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'Englisch')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'object': <TalesStep: Perfect competition as example>, 'talesstep': <TalesStep: Perfect competition as example>, 'view': <lms_tales.views.step_views.StepDetails object at 0x75245acdae90>}
- components/header.html
- /app/project/templates/components/header.html
-
Context zeigen
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '5b754a71', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'de', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x75245e99b9d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'Englisch')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'object': <TalesStep: Perfect competition as example>, 'talesstep': <TalesStep: Perfect competition as example>, 'view': <lms_tales.views.step_views.StepDetails object at 0x75245acdae90>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Context zeigen
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '5b754a71', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'de', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x75245e99b9d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'Englisch')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'object': <TalesStep: Perfect competition as example>, 'talesstep': <TalesStep: Perfect competition as example>, 'view': <lms_tales.views.step_views.StepDetails object at 0x75245acdae90>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x75245ad65750>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x75245ad67e90>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x75245ad65d10>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x75245ad67010>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Context zeigen
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '5b754a71', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'de', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x75245e99b9d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'Englisch')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'object': <TalesStep: Perfect competition as example>, 'talesstep': <TalesStep: Perfect competition as example>, 'view': <lms_tales.views.step_views.StepDetails object at 0x75245acdae90>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x75245a5bc110>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x752459f450d0>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
Context-Prozessoren
- django.template.context_processors.csrf
-
Context zeigen
{'csrf_token': <SimpleLazyObject: 'f8fnsw9OQlK9QqzjBqcZF4LmqdFR6SpGgm4T9ozdnDLTIqzUeHJaVgUvOWmHssUr'>}
- django.template.context_processors.debug
-
Context zeigen
{}
- django.template.context_processors.request
-
Context zeigen
{'request': <ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>}
- django.contrib.auth.context_processors.auth
-
Context zeigen
{'user': <SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x75245e99b9d0>>>)}
- django.template.context_processors.i18n
-
Context zeigen
{'LANGUAGES': (('de', 'Deutsch'), ('en', 'Englisch'), ('fr', 'Franzoesisch')), 'LANGUAGE_CODE': 'de', 'LANGUAGE_BIDI': False}
- django.template.context_processors.media
-
Context zeigen
{'MEDIA_URL': '/media/'}
- django.template.context_processors.static
-
Context zeigen
{'STATIC_URL': '/static/'}
- django.template.context_processors.tz
-
Context zeigen
{'TIME_ZONE': 'Europe/Zurich'}
- django.contrib.messages.context_processors.messages
-
Context zeigen
{'messages': <FallbackStorage: request=<ASGIRequest: GET '/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290'>>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}}
- utils.context_processors.ci_info
-
Context zeigen
{'CI_COMMIT_TAG': '', 'CI_COMMIT_SHORT_SHA': '5b754a71', 'RELEASE_NAME': '', 'DEPLOY_ENV': 'staging'}
Cache-Aufrufe von 1 Backend
Zusammenfassung
Aufrufe gesamt | Zeit gesamt | Cache erfolgreich | Cache verfehlt |
---|---|---|---|
47 | 20,274813286960125 ms | 167 | 1 |
Befehle
add | get | set | get_or_set | touch | delete | clear | get_many | set_many | delete_many | has_key | incr | decr | incr_version | decr_version |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 5 | 1 | 0 | 0 | 0 | 0 | 34 | 7 | 0 | 0 | 0 | 0 | 0 | 0 |
Aufrufe
Zeit (ms) | Typ | Argumente | Schlüsselwort-Argumente | Backend | |
---|---|---|---|---|---|
0,6938 | get_many | (dict_keys(['b5ac959681ff06eff632d25a5961a4d3cad09b42', '542c27005f4e84288827ce70a7d49bc73324a5e7', '887f8247d0ff979264c73b069f790024b2aa98e1', 'a2cec6efb2cb51d9fcdc73ec65d0d02848d3205f', 'af167bf678e72a9b2a64d8869d420b8d25e96148', 'f2b266a5acd7f191551fca80dea8475d456a300c', 'e5890f0f95e54c95fc7d85ffd3cd8f5079a384eb', '7d22fa9ec7aaf50b239b17bb4529f27be72f4b3d', 'fab86eaeb6f68c1bd14e3c42d6a32fc63fe5c10b', '1671d58e08fb6227d160e4add3baac34f778006f', '5634047d837b3106d3997f0611a298a16f6754cb', '38c0c9db04f183fb89086db2a3a02d20d5c1cbda', '33cd0b10f8c2fd53802b0948820b8b58da6bb27c', 'dbdc4e6f3de4931fbb7e39044291d87c49a581a7', 'bf555e2c224baeeac5838ee69c053900ce037b1d', '452aaa2adbf5d826d715538ebfd87013a599bacd', '5ef73f3d610667d7836abd847979ad8d02582140', '28b4f1c78186b497fc0611b76d5609a36a170804', 'acd1c2a120952e0445e89d8a2cc8faa99cc73454', '3fdb5b63faddfa01f5ebd09a89b74c9b3ec742bf', 'bc41695a90f568da6f9c44d14dbb30130bea76db', '6d6bdc7046f6d1410bd41d09cd570831af97fd31', '2288e6f142e998339c6d4985913358f76533a29e', 'f6e1a4d48790db63f8cb8c5653192a74ca00d34a', 'e19dd8b0e8a705c5914b55bbeb94d01f20e5368e', 'bf2a5aa392ac965fc14b9cc5fc8fcce588b2cf57', '9de26d60cec57eaab1ec19a62cf772073ae0e30f', '138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', 'd890e5bc0b77c02793036efa76f50a25770a52a7', 'd00779073776b2287204a6fa5336494275fc73d5', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '312c357d2eed306581bb334378808fbccf7019ea', 'd144abeb0db81d5dfea390a27c6d616aa1783141', 'b33158a576dd24b41063563867ce3f9044eb1acf', 'a78875b90f65061214a7b7eaa1a66176310060a1', 'd1accdb7a5e2af4fd7d0fc7e34b048f555cd65a0', '51329f4ee437847bebcfe01e681846839a46ad85', '05c5fe43455b028dee7ff3de1f3e2b4732238c9d', '0b7593abe25ebbf222c98d71b199a17877e17478', 'da8bff0e0d25742e869a69b7508c37ccde5f8f33', '0098dff618e4e4ce8b226fb3dcd5d9042e69eb75', '8e3f73e6feaebee5ffbc4479f566917f08b4bbca', '5c50c6b3292213266ec6601a46b9ff857efec10a', '9ba11033f2e0b0478fa7ea0cfcde90c7ea880b1b', '810de96c2cc412e55eb18a19206c9b4f4879ec68', 'da75293c9ac4e9ae833da9fecd1ab668d629ce49', 'e4392949c2513e35c4d436a230e913efc13e4556', '9a3409722cd89bb29bc78c6bd4bca2cc2aad3e96', '5bd1ef7c64b457cbb725c42d97969db3ebe85f66', 'f3d241856fbbba355385868203e06010b65b882e', '1511f7c2f0ac6c43b58dfa27858c3d8561280f80', 'e2a6b84fc2a64f0ca59dd6e95fe6e1a5f3850ad5', 'b72f66480a030f14a954ea7eeb482d64fa1da084', '9e3a2b98ae55fa975425fa81a4e6e13342147b8a', '0e90ed3afbea5b3254d013a2b352642aaa2ce984', '2b2eb1f58e7ba0ac1ae04f9e9c95bde41f64e3fc', 'f38ac9d1db097d95b5062273e0a941d2da616361', 'cf84cec99a10af4507238b31bfce2171063a0c1d', 'c9b253ceb06244b30c24377ae68ae44353b4b3c4', '946a725506b18b4afe14d273540101238984908d']),) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(40) self.collect_invalidations() /usr/local/lib/python3.11/site-packages/cachalot/panels.py in collect_invalidations(52) for cache_key, timestamp in cache.get_many( |
|||||
0,2056 | get | ('view_cache_view_/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290_anonymous', None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(58) response = cache.get(CACHE_KEY, None) |
|||||
0,3307 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', 'e5423e3b0d3d787c89d9ac51dc5327f6712fbce6'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(20) self.object = self.get_object() /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get_object(53) obj = queryset.get() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4983 | set_many | ({'e5423e3b0d3d787c89d9ac51dc5327f6712fbce6': (1736591323.4647858, [[(1290, datetime.datetime(2022, 5, 5, 19, 17, 15, 754592, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 34, 30, 287912, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 34, 30, 183736, tzinfo=datetime.timezone.utc), False, 'Perfect competition as example', None, 'Perfect competition as example', None, '', None, None, None, 'Through this article, Hannes Weigt explains how a simple energy system model can be formulated as optimization and as equilibrium market model.', None, 'Through this article, Hannes Weigt explains how a simple energy system model can be formulated as optimization and as equilibrium market model.', None, '', 'perfect-competition-as-example', 'In the last step we took a dive into the underlying mathematics of our models. To get a better understanding of what this means for your model design, we now use our simple energy system logic to design an optimization model and an equilibrium model that will result in the same outcomes.\r\n{.lead}\r\n \r\n![Perfect Competition](/media/markdownx/29fb3dea-0607-45e2-9a08-011fce2e760f.png)\r\n\r\nThe setup is the same for both. We assume a perfectly competitive market in which producers aim to maximise their short run profit given their cost function. Consumers aim to maximise their benefit derived from consuming electricity.\r\n \r\nIn an optimization setting, you know that you need to combine the individual objectives (firm’s profits and consumer benefit) into a single objective, $$B(d)$$. As we assume perfect competition, this is easily doable by maximising the welfare in our system (as discussed in an earlier step). Consequently, the objective function for the social planner looks like this:\r\n \r\n---\r\n\r\n(1)   $$\\max\\limits_{q_i,d\\geq 0} \\enspace B(d)-\\sum\\limits_{i}{c_i(q_i)}$$\r\n \r\n---\r\n\r\n$$B(d)$$ represents the benefit function of consumers (how much utility they derive from their demand $$d$$) and the profits from the firm. $$c_i(q_i)$$ represents the generation costs of firm $$i$$.\r\n \r\nAs side constraints you will again need to ensure that total supply is sufficient to cover demand. Clearly, demand cannot be less than 0:\r\n \r\n---\r\n\r\n(2)   $$\\sum\\limits_{i}{q_i} =d$$\r\n\r\n---\r\n \r\nIf you would derive the Karush–Kuhn–Tucker (KKT) conditions of the Lagrangian formulation of these two equations you would obtain the optimality conditions defining which level of supply and demand maximises welfare. Let’s just focus on the two decision variables: $$q_i$$ and $$d$$. Again, you will need to derive the first order condition of the model with respect to the two variables and set them equal to zero:\r\n \r\n\r\n\r\n---\r\n\r\n(3)   $$\\frac{∂B}{∂d}-μ=0$$ \r\n\r\n(4)   $$\\frac{∂c_i(q_i)}{∂q_i}+μ=0$$\r\n\r\n---\r\n\r\nThe $$µ$$ is again the Lagrangian multipliers on the side constraint.\r\n \r\nEquations (4) and (5) together with the side constraint (2) tell you the optimality criteria for your model.\r\n \r\nOk, let’s shortly switch to the equilibrium world and design the same problem in an equilibrium setting. Here we have firms maximizing profits, consumers maximizing their benefit, and a market that brings the two sides together.\r\n \r\nYou know that firms will only produce if the marginal costs are covered. Using this zero-profit logic you can write their equilibrium conditions as follows:\r\n\r\n---\r\n \r\n(5)   $$\\frac{∂c_i(q_i)}{∂q_i}\\geq p \\bot q_i\\geq0$$\r\n \r\n---\r\n\r\nThis formulation is the mathematical equivalent of our equilibrium logic. Either the firm has a positive output ($$q_i > 0$$) in which case the left hand side of equation (5) needs to hold with equality ($$\\frac{∂c_i(q_i)}{∂q_i}=p$$); or the firm does not produce ($$q_i = 0$$) in which case the left hand side is in inequality ($$\\frac{∂c_i(q_i)}{∂q_i}>p$$). The perpendicular sign $$\\bot$$ allows us to write this combination a bit more compactly.\r\n\r\nThe same logic holds for the consumer side:\r\n \r\n---\r\n\r\n(6)   $$p \\geq \\frac{∂B}{∂d} \\bot d \\geq 0$$\r\n \r\n---\r\n\r\nConsumers will only consume energy if the marginal benefit they can derive ($$\\frac{∂B}{∂d}$$) is at least as large as the price they have to pay for it.\r\n \r\nNow all you need is the market clearing condition to finalise your equilibrium model:\r\n\r\n---\r\n\r\n(7)   $$\\sum\\limits_{i}{q_i}\\geq d \\bot p \\geq 0$$\r\n \r\n---\r\n\r\nSimilar to the zero-profit equations this formulation is the mathematical way of describing the market clearing logic: if we have a positive market price ($$p > 0$$) it means the supply and demand side are in balance ($$\\sum\\limits_{i}{q_i}=d$$). If we have oversupply ($$\\sum\\limits_{i}{q_i}>d$$) the market price is zero ($$p = 0$$).\r\n \r\nNow if you compare equation (5) to (7) of the equilibrium model with equation (2) to (4) of the optimization model you may see some similarities: \r\nEquation (3) tells us that in the optimum, the marginal benefit of consumers is equal to $$µ$$. The same holds for the marginal costs of each firm in the optimum (equation (4)). And this $$µ$$ is linked to the constraint that in the equilibrium total supply and demand have to be balanced.\r\n \r\nNow this is basically the same story you designed with the equilibrium model. If supply and demand are equal, equation (7) tells us that the resulting market price, $$p$$, will be positive. And if you neglect the non-trivial equilibrium of having zero $$d$$ and production (which are balanced by definition) this also means positive production and demand levels. Equations (5) and (6) tell you that in this case the marginal costs of the firms have to be equal to the market price and the marginal benefit of consumers also has to be equal to the market price.\r\n \r\nIf you now replace the symbol for the market price, $$p$$, with some Greek letter, say $$µ$$, you see that those are basically the same results. The only difference is that the equilibrium model is formulated in a more general sense (those are conditions that need to hold for the market to be in equilibrium) whereas the optimization equations show the conditions that need to hold for the market to be in the equilibrium that optimises welfare.\r\n \r\nThis relation between the two model approaches means two things with respect to analysing your problem: \r\nFirst, you are often free to choose one or the other type of model. As long as you can derive a single objective for an optimization you can also formulate an equivalent equilibrium version of your model.\r\n\r\nSecond, the equilibrium logic of who is doing what (activity) when (zero-profit) and how market prices are related to supply and demand (market clearing) also holds when analysing your optimization model results. The underlying economic logic is the driving force of the two models. So, a solid understanding of incentives and market dynamics will help you to design, solve, and interpret your models, regardless of what specific model setup you have chosen.', '', 'In the last step we took a dive into the underlying mathematics of our models. To get a better understanding of what this means for your model design, we now use our simple energy system logic to design an optimization model and an equilibrium model that will result in the same outcomes.\r\n{.lead}\r\n \r\n![Perfect Competition](/media/markdownx/29fb3dea-0607-45e2-9a08-011fce2e760f.png)\r\n\r\nThe setup is the same for both. We assume a perfectly competitive market in which producers aim to maximise their short run profit given their cost function. Consumers aim to maximise their benefit derived from consuming electricity.\r\n \r\nIn an optimization setting, you know that you need to combine the individual objectives (firm’s profits and consumer benefit) into a single objective, $$B(d)$$. As we assume perfect competition, this is easily doable by maximising the welfare in our system (as discussed in an earlier step). Consequently, the objective function for the social planner looks like this:\r\n \r\n---\r\n\r\n(1)   $$\\max\\limits_{q_i,d\\geq 0} \\enspace B(d)-\\sum\\limits_{i}{c_i(q_i)}$$\r\n \r\n---\r\n\r\n$$B(d)$$ represents the benefit function of consumers (how much utility they derive from their demand $$d$$) and the profits from the firm. $$c_i(q_i)$$ represents the generation costs of firm $$i$$.\r\n \r\nAs side constraints you will again need to ensure that total supply is sufficient to cover demand. Clearly, demand cannot be less than 0:\r\n \r\n---\r\n\r\n(2)   $$\\sum\\limits_{i}{q_i} =d$$\r\n\r\n---\r\n \r\nIf you would derive the Karush–Kuhn–Tucker (KKT) conditions of the Lagrangian formulation of these two equations you would obtain the optimality conditions defining which level of supply and demand maximises welfare. Let’s just focus on the two decision variables: $$q_i$$ and $$d$$. Again, you will need to derive the first order condition of the model with respect to the two variables and set them equal to zero:\r\n \r\n\r\n\r\n---\r\n\r\n(3)   $$\\frac{∂B}{∂d}-μ=0$$ \r\n\r\n(4)   $$\\frac{∂c_i(q_i)}{∂q_i}+μ=0$$\r\n\r\n---\r\n\r\nThe $$µ$$ is again the Lagrangian multipliers on the side constraint.\r\n \r\nEquations (4) and (5) together with the side constraint (2) tell you the optimality criteria for your model.\r\n \r\nOk, let’s shortly switch to the equilibrium world and design the same problem in an equilibrium setting. Here we have firms maximizing profits, consumers maximizing their benefit, and a market that brings the two sides together.\r\n \r\nYou know that firms will only produce if the marginal costs are covered. Using this zero-profit logic you can write their equilibrium conditions as follows:\r\n\r\n---\r\n \r\n(5)   $$\\frac{∂c_i(q_i)}{∂q_i}\\geq p \\bot q_i\\geq0$$\r\n \r\n---\r\n\r\nThis formulation is the mathematical equivalent of our equilibrium logic. Either the firm has a positive output ($$q_i > 0$$) in which case the left hand side of equation (5) needs to hold with equality ($$\\frac{∂c_i(q_i)}{∂q_i}=p$$); or the firm does not produce ($$q_i = 0$$) in which case the left hand side is in inequality ($$\\frac{∂c_i(q_i)}{∂q_i}>p$$). The perpendicular sign $$\\bot$$ allows us to write this combination a bit more compactly.\r\n\r\nThe same logic holds for the consumer side:\r\n \r\n---\r\n\r\n(6)   $$p \\geq \\frac{∂B}{∂d} \\bot d \\geq 0$$\r\n \r\n---\r\n\r\nConsumers will only consume energy if the marginal benefit they can derive ($$\\frac{∂B}{∂d}$$) is at least as large as the price they have to pay for it.\r\n \r\nNow all you need is the market clearing condition to finalise your equilibrium model:\r\n\r\n---\r\n\r\n(7)   $$\\sum\\limits_{i}{q_i}\\geq d \\bot p \\geq 0$$\r\n \r\n---\r\n\r\nSimilar to the zero-profit equations this formulation is the mathematical way of describing the market clearing logic: if we have a positive market price ($$p > 0$$) it means the supply and demand side are in balance ($$\\sum\\limits_{i}{q_i}=d$$). If we have oversupply ($$\\sum\\limits_{i}{q_i}>d$$) the market price is zero ($$p = 0$$).\r\n \r\nNow if you compare equation (5) to (7) of the equilibrium model with equation (2) to (4) of the optimization model you may see some similarities: \r\nEquation (3) tells us that in the optimum, the marginal benefit of consumers is equal to $$µ$$. The same holds for the marginal costs of each firm in the optimum (equation (4)). And this $$µ$$ is linked to the constraint that in the equilibrium total supply and demand have to be balanced.\r\n \r\nNow this is basically the same story you designed with the equilibrium model. If supply and demand are equal, equation (7) tells us that the resulting market price, $$p$$, will be positive. And if you neglect the non-trivial equilibrium of having zero $$d$$ and production (which are balanced by definition) this also means positive production and demand levels. Equations (5) and (6) tell you that in this case the marginal costs of the firms have to be equal to the market price and the marginal benefit of consumers also has to be equal to the market price.\r\n \r\nIf you now replace the symbol for the market price, $$p$$, with some Greek letter, say $$µ$$, you see that those are basically the same results. The only difference is that the equilibrium model is formulated in a more general sense (those are conditions that need to hold for the market to be in equilibrium) whereas the optimization equations show the conditions that need to hold for the market to be in the equilibrium that optimises welfare.\r\n \r\nThis relation between the two model approaches means two things with respect to analysing your problem: \r\nFirst, you are often free to choose one or the other type of model. As long as you can derive a single objective for an optimization you can also formulate an equivalent equilibrium version of your model.\r\n\r\nSecond, the equilibrium logic of who is doing what (activity) when (zero-profit) and how market prices are related to supply and demand (market clearing) also holds when analysing your optimization model results. The underlying economic logic is the driving force of the two models. So, a solid understanding of incentives and market dynamics will help you to design, solve, and interpret your models, regardless of what specific model setup you have chosen.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 2, 'published', False, None, None, None, None, 228)]])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(20) self.object = self.get_object() /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get_object(53) obj = queryset.get() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,4269 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', 'e5423e3b0d3d787c89d9ac51dc5327f6712fbce6'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(108) self.object = self.get_object() /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get_object(53) obj = queryset.get() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3898 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', 'a6de950b74ba99055c8f6bad8753e94e12c3dd0a'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(63) if len(step_files_new) == 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3271 | set_many | ({'a6de950b74ba99055c8f6bad8753e94e12c3dd0a': (1736591323.4725003, [])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(63) if len(step_files_new) == 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,3705 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', 'a6de950b74ba99055c8f6bad8753e94e12c3dd0a'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3485 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', '43e9952999f22870b4eff1057eacdb33a4418c65'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3112 | set_many | ({'43e9952999f22870b4eff1057eacdb33a4418c65': (1736591323.4783926, [])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,3673 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', 'a439e62960789507f764777ff144e549bd185a13'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3219 | set_many | ({'a439e62960789507f764777ff144e549bd185a13': (1736591323.4825628, [])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(69) if len(step_files_new) > 0: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,3973 | get_many | (['76e323efd8711853e13c9f7cf976845908364eb2', '9c197a8f980b2696014db2c2de9547457e0371ac'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(72) context["course"] = self.object.chapter.course /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4440 | get_many | (['e3a5db5a670ad803efb866441f33de58309be2e2', 'fd9d74e2f59f427ba11b19f890ef4207c0f2496f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(31) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(36) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(109) context = self.get_context_data(object=self.object) /app/project/lms_tales/views/step_views.py in get_context_data(72) context["course"] = self.object.chapter.course /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3030 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(314) match = condition.eval(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in eval(877) return self.value.resolve(context, ignore_failures=True) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2529 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2562 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2736 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2586 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2536 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2609 | get_many | (['312c357d2eed306581bb334378808fbccf7019ea', 'e3a5db5a670ad803efb866441f33de58309be2e2', '18fc7e70c46bc13b0743370b4c0573f4f146f69f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(890) current = getattr(current, bit) /app/project/lms_tales/models.py in meta(86) + ", ".join([author.name for author in self.get_course().authors.all()]), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2862 | get | ('waffle:4.1.0a156ed0e9d07cd12e770c8dca0575feb',) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/waffle/templatetags/waffle_tags.py in render(36) if self.condition(context.get('request', None), name): /usr/local/lib/python3.11/site-packages/waffle/__init__.py in flag_is_active(19) flag = get_waffle_flag_model().get(flag_name) /usr/local/lib/python3.11/site-packages/waffle/models.py in get(52) cached = cache.get(cache_key) |
|||||
0,2813 | get_many | (['76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '8e45b64feee9cf30b30e96460e1ce31dcfbeeeb5'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(194) len_values = len(values) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,5185 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', 'b4863ff98fd65b2c3bca1c401183fd26f23a67c5'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(238) nodelist.append(node.render_annotated(context)) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(194) len_values = len(values) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3693 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', 'cd5479d1039c541add57ee82f62d7731713f41ea'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(238) nodelist.append(node.render_annotated(context)) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(194) len_values = len(values) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4931 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '59d2126086abc637de236a2bcdbcc350619e0f14'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(238) nodelist.append(node.render_annotated(context)) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(194) len_values = len(values) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4785 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '87a90cfee50670e9c83f81b07e416a5bb6e0c423'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(238) nodelist.append(node.render_annotated(context)) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(194) len_values = len(values) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4186 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '2ff10d6bc723cc34250e05f887461a5e094abe3f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(208) return template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(177) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(321) return nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(238) nodelist.append(node.render_annotated(context)) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(194) len_values = len(values) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4037 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', 'c63839038fd17f762c733fc54b9c2d71005b27f7'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /app/project/lms_base/templatetags/utils.py in get_next_step(105) return step.get_next(published_only=True) /app/project/lms_base/models.py in get_next(249) return self._get_neighbour_step(is_next=True, published_only=published_only) /app/project/lms_base/models.py in _get_neighbour_step(201) step = self.__class__.next_previous_manager.get_next_previous( /app/project/lms_base/models.py in get_next_previous(71) return qs.first() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4257 | set_many | ({'c63839038fd17f762c733fc54b9c2d71005b27f7': (1736591323.5758553, [[(1291, datetime.datetime(2022, 5, 5, 19, 17, 29, 193002, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 35, 32, 392825, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 35, 32, 329627, tzinfo=datetime.timezone.utc), False, 'Assess your knowledge', None, 'Assess your knowledge', None, '', None, None, None, 'Assess your knowledge on the basic concept of optimization and equilibrium models.', None, 'Assess your knowledge on the basic concept of optimization and equilibrium models.', None, '', 'assess-your-knowledge-3', 'Do you understand the basic concept of optimization and equilibrium models?\r\n{.lead}\r\n\r\n<br>\r\n\r\n<iframe src="https://h5p.nmc.unibas.ch/wp-admin/admin-ajax.php?action=h5p_embed&id=324" width="885" height="373" frameborder="0" allowfullscreen="allowfullscreen" title="Energy_Economics_4_4"></iframe><script src="https://h5p.nmc.unibas.ch/wp-content/plugins/h5p/h5p-php-library/js/h5p-resizer.js" charset="UTF-8"></script>', '', 'Do you understand the basic concept of optimization and equilibrium models?\r\n{.lead}\r\n\r\n<br>\r\n\r\n<iframe src="https://h5p.nmc.unibas.ch/wp-admin/admin-ajax.php?action=h5p_embed&id=324" width="885" height="373" frameborder="0" allowfullscreen="allowfullscreen" title="Energy_Economics_4_4"></iframe><script src="https://h5p.nmc.unibas.ch/wp-content/plugins/h5p/h5p-php-library/js/h5p-resizer.js" charset="UTF-8"></script>', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TQ', '', 3, 'published', False, None, None, None, None, 228)]])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /app/project/lms_base/templatetags/utils.py in get_next_step(105) return step.get_next(published_only=True) /app/project/lms_base/models.py in get_next(249) return self._get_neighbour_step(is_next=True, published_only=published_only) /app/project/lms_base/models.py in _get_neighbour_step(201) step = self.__class__.next_previous_manager.get_next_previous( /app/project/lms_base/models.py in get_next_previous(71) return qs.first() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,4323 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', 'c1199e44a918d0496a9a336333a5c17272158354'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /app/project/lms_base/templatetags/utils.py in get_previous_step(93) return step.get_previous(published_only=True) /app/project/lms_base/models.py in get_previous(255) return self._get_neighbour_step(is_next=False, published_only=published_only) /app/project/lms_base/models.py in _get_neighbour_step(201) step = self.__class__.next_previous_manager.get_next_previous( /app/project/lms_base/models.py in get_next_previous(72) return qs.last() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,5552 | set_many | ({'c1199e44a918d0496a9a336333a5c17272158354': (1736591323.586202, [[(1289, datetime.datetime(2022, 5, 5, 19, 17, 2, 835890, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 33, 38, 786946, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 33, 38, 732789, tzinfo=datetime.timezone.utc), False, 'Two sides of the same coin', None, 'Two sides of the same coin', None, '', None, None, None, 'In this article Hannes Weigt explains how optimization problems can be transformed into equilibrium formulations.', None, 'In this article Hannes Weigt explains how optimization problems can be transformed into equilibrium formulations.', None, '', 'two-sides-of-the-same-coin', 'In the previous step you have learned that the choice of your model design will largely depend on your underlying problem, but also that some model approaches are exchangeable and lead to the same results.\r\n{.lead}\r\n\r\n![Coin](/media/markdownx/79a32575-7014-43f8-a8cb-42540817f6a8.png)\r\n\r\nThis is particularly important for optimization or equilibrium formulations. The model choice is often a matter of preference in model design and the underlying economic thinking than a strict necessity. In this step, you will see that there is also a mathematical reasoning behind the fact that most problems can be formulated as both model types.\r\n \r\nIn general, each optimization problem can be transformed into an equilibrium formulation. Remember, how in the examples of equilibria one was the ‘result of an optimization’? This relation is based on the so called **Karush–Kuhn–Tucker (KKT) conditions**.\r\n \r\nLet’s take a generic optimization problem as an example:\r\n\r\n---\r\n \r\n   $$\\min \\limits_X \\enspace {f(X)} $$\r\n\r\n s.t. $$ g_i(X)=0$$\r\n\r\n   $$h_i(X) \\le 0$$\r\n\r\n---\r\n\r\nwe can derive the solution by setting up the **Lagrange function** of this problem (by introducing the Lagrangian multiplier $$µ$$ for the equality constraints and $$λ$$ for the inequality constraints)\r\n \r\n---\r\n\r\n$$L=f(X)+\\sum\\mu_ig_i(X)+\\sum\\lambda_ih_i(X)$$\r\n \r\n---\r\n\r\nand obtain the necessary KKT conditions for a minimum (or first-order condition) by taking the partial derivative of the Lagrangian with respect to X and setting the equation equal to zero:\r\n \r\n---\r\n\r\n(1)   $$\\frac{\\partial f(X)}{\\partial X}+\\sum\\mu_i\\frac{\\partial g_i(X)}{\\partial X}+\\sum\\lambda_i\\frac{\\partial h_i(X)}{\\partial X}=0$$\r\n\r\n(2)   $$g_i(X)=0$$\r\n\r\n(3)   $$h_i(X) \\le 0$$\r\n\r\n(4)   $$λ_i h_i(X)=0$$\r\n\r\n(5)   $$λ_i \\ge 0$$\r\n\r\n---\r\n\r\n \r\n**Equation (1)** is the simple optimality criterion that the first-order condition with respect to the decision variables (X) need to equal zero. **Equation (2)** and **(3)** are the feasibility constraints imposed by the side constraints. **Equation (4)** is called the complementary slackness condition and results from inequality constraints. **Equation (5)** the non-negativity restriction on the multipliers of the inequalities. Technically, these equations state the conditions the system has to fulfil in the optimal equilibrium; this is an equilibrium formulation of the above designed optimization problem. (For more information and derivation of the KKT conditions follow the link to additional information below.)\r\n \r\nLet’s rephrase the conditions a little bit to obtain the same logic we have learned in the last chapter about equilibrium problems. For this we need so called **complementarity conditions**. In general, two variables (note: these are not the same variables from the above equations) are complementary to each other if the following holds:\r\n \r\n\r\n$$X\\cdot Y=0; X\\geq 0; Y\\geq 0$$   which is often written as   $$X\\leq0\\perp Y\\geq 0$$\r\n\r\n\r\nThis basically tells us that either X or Y needs to be zero.\r\n\r\n \r\nReturning to the Lagrange formulation of our minimization:\r\n\r\n\r\n$$L=f(X) + \\sum \\mu_i g_i (X) + \\sum \\lambda_i h_i(X)$$\r\n \r\nwe can derive our equilibrium formulation via these **complementarity conditions**, first for the choice variable:\r\n\r\n$$\\frac{\\partial L}{\\partial X}X=0;$$   $$\\frac{\\partial L}{\\partial X} \\leq0;$$   $$X\\geq0$$\r\n \r\nThese equations tell us that the product of the first-order condition, $$\\frac{\\partial L}{\\partial X}$$, with the respective variable, $$X$$, has to equal zero either the variable, $$X$$, or the derivative must be zero. This is equivalent to the economic logic introduced for equilibrium models. Either my decision variable X (eg, my output) is positive, in which case the respective first-order condition has to equal zero (my zero-profit condition), or my decision variable is zero (eg, I don’t produce any output because I won’t make a profit or breakeven).\r\n \r\nThe same holds for the multipliers on the equality and inequality constraints:\r\n \r\n---\r\n\r\n$$\\frac{\\partial L }{ \\partial{\\mu_i}}\\mu_i = 0;$$   $$\\frac{\\partial L}{ \\partial{\\mu_i}} = 0;$$   $$μ_i$$ is free \r\n$$\\frac{\\partial L}{\\partial \\lambda_i}\\lambda_i=0;$$   $$\\frac{\\partial L}{\\partial \\lambda_i}\\leq0;$$   $$λ_i \\ge 0$$\r\n \r\n---\r\n\r\nEither my side constraint is binding (eg, the production capacity limit is reached), in which case my multiplier has a positive value (eg, the shadow price of capacity), or it is not binding and the multiplier has to be zero. Note that for equality constraints the multiplier is free in sign as the enforced equality basically ensures that the derivative has to be zero.\r\n\r\nThe important point with this reformulation is that it is equivalent to the above formulated KKT conditions which are the solution of the optimization. In other words, if we have an optimization formulation, we can reformulate it as an equilibrium problem and obtain the same result. The reverse is not true, as not all equilibrium models can be transferred into optimization models. Consequently, there are some problems where only equilibrium approaches are feasible. This is the case if more than one actor has to be included in the model design (eg, in case of oligopolistic competition) and we lack a single objective that we can optimise.\r\n \r\nSummarising, each optimization formulation can be transformed into an equilibrium formulation. Therefore, many model designs can be realised via both approaches. In the next step, we will use our energy system example to get a more hands-on understanding of the linkage between optimization and equilibrium.\r\n \r\n<br>\r\n \r\nRecommended readings \r\n{.footnote-title}\r\n\r\nThe literature recommendation below takes up on the combined representation of natural gas and electricity market we already recommended in an earlier step. The model is an extension of the static model formulation presented in Abrell and Weigt (2014) to account for investments. Besides presenting an example of how to design a potential investment decision, the paper also shows the relation between optimization and equilibrium. Within the paper the different market actors are described using their respective profit maximizations and side constraints. This logic is then transferred into an equilibrium formulation in the Annex using the above described relation.\r\n \r\nAbrell, J. & Weigt, H. (2014). [Investments in a Combined Energy Network Model: Substitution between Natural Gas And Electricity?](https://ideas.repec.org/p/bsl/wpaper/2014-05.html){:target=“_blank”} WWZ, University Basel.\r\n{.citation-indented}', '', 'In the previous step you have learned that the choice of your model design will largely depend on your underlying problem, but also that some model approaches are exchangeable and lead to the same results.\r\n{.lead}\r\n\r\n![Coin](/media/markdownx/79a32575-7014-43f8-a8cb-42540817f6a8.png)\r\n\r\nThis is particularly important for optimization or equilibrium formulations. The model choice is often a matter of preference in model design and the underlying economic thinking than a strict necessity. In this step, you will see that there is also a mathematical reasoning behind the fact that most problems can be formulated as both model types.\r\n \r\nIn general, each optimization problem can be transformed into an equilibrium formulation. Remember, how in the examples of equilibria one was the ‘result of an optimization’? This relation is based on the so called **Karush–Kuhn–Tucker (KKT) conditions**.\r\n \r\nLet’s take a generic optimization problem as an example:\r\n\r\n---\r\n \r\n   $$\\min \\limits_X \\enspace {f(X)} $$\r\n\r\n s.t. $$ g_i(X)=0$$\r\n\r\n   $$h_i(X) \\le 0$$\r\n\r\n---\r\n\r\nwe can derive the solution by setting up the **Lagrange function** of this problem (by introducing the Lagrangian multiplier $$µ$$ for the equality constraints and $$λ$$ for the inequality constraints)\r\n \r\n---\r\n\r\n$$L=f(X)+\\sum\\mu_ig_i(X)+\\sum\\lambda_ih_i(X)$$\r\n \r\n---\r\n\r\nand obtain the necessary KKT conditions for a minimum (or first-order condition) by taking the partial derivative of the Lagrangian with respect to X and setting the equation equal to zero:\r\n \r\n---\r\n\r\n(1)   $$\\frac{\\partial f(X)}{\\partial X}+\\sum\\mu_i\\frac{\\partial g_i(X)}{\\partial X}+\\sum\\lambda_i\\frac{\\partial h_i(X)}{\\partial X}=0$$\r\n\r\n(2)   $$g_i(X)=0$$\r\n\r\n(3)   $$h_i(X) \\le 0$$\r\n\r\n(4)   $$λ_i h_i(X)=0$$\r\n\r\n(5)   $$λ_i \\ge 0$$\r\n\r\n---\r\n\r\n \r\n**Equation (1)** is the simple optimality criterion that the first-order condition with respect to the decision variables (X) need to equal zero. **Equation (2)** and **(3)** are the feasibility constraints imposed by the side constraints. **Equation (4)** is called the complementary slackness condition and results from inequality constraints. **Equation (5)** the non-negativity restriction on the multipliers of the inequalities. Technically, these equations state the conditions the system has to fulfil in the optimal equilibrium; this is an equilibrium formulation of the above designed optimization problem. (For more information and derivation of the KKT conditions follow the link to additional information below.)\r\n \r\nLet’s rephrase the conditions a little bit to obtain the same logic we have learned in the last chapter about equilibrium problems. For this we need so called **complementarity conditions**. In general, two variables (note: these are not the same variables from the above equations) are complementary to each other if the following holds:\r\n \r\n\r\n$$X\\cdot Y=0; X\\geq 0; Y\\geq 0$$   which is often written as   $$X\\leq0\\perp Y\\geq 0$$\r\n\r\n\r\nThis basically tells us that either X or Y needs to be zero.\r\n\r\n \r\nReturning to the Lagrange formulation of our minimization:\r\n\r\n\r\n$$L=f(X) + \\sum \\mu_i g_i (X) + \\sum \\lambda_i h_i(X)$$\r\n \r\nwe can derive our equilibrium formulation via these **complementarity conditions**, first for the choice variable:\r\n\r\n$$\\frac{\\partial L}{\\partial X}X=0;$$   $$\\frac{\\partial L}{\\partial X} \\leq0;$$   $$X\\geq0$$\r\n \r\nThese equations tell us that the product of the first-order condition, $$\\frac{\\partial L}{\\partial X}$$, with the respective variable, $$X$$, has to equal zero either the variable, $$X$$, or the derivative must be zero. This is equivalent to the economic logic introduced for equilibrium models. Either my decision variable X (eg, my output) is positive, in which case the respective first-order condition has to equal zero (my zero-profit condition), or my decision variable is zero (eg, I don’t produce any output because I won’t make a profit or breakeven).\r\n \r\nThe same holds for the multipliers on the equality and inequality constraints:\r\n \r\n---\r\n\r\n$$\\frac{\\partial L }{ \\partial{\\mu_i}}\\mu_i = 0;$$   $$\\frac{\\partial L}{ \\partial{\\mu_i}} = 0;$$   $$μ_i$$ is free \r\n$$\\frac{\\partial L}{\\partial \\lambda_i}\\lambda_i=0;$$   $$\\frac{\\partial L}{\\partial \\lambda_i}\\leq0;$$   $$λ_i \\ge 0$$\r\n \r\n---\r\n\r\nEither my side constraint is binding (eg, the production capacity limit is reached), in which case my multiplier has a positive value (eg, the shadow price of capacity), or it is not binding and the multiplier has to be zero. Note that for equality constraints the multiplier is free in sign as the enforced equality basically ensures that the derivative has to be zero.\r\n\r\nThe important point with this reformulation is that it is equivalent to the above formulated KKT conditions which are the solution of the optimization. In other words, if we have an optimization formulation, we can reformulate it as an equilibrium problem and obtain the same result. The reverse is not true, as not all equilibrium models can be transferred into optimization models. Consequently, there are some problems where only equilibrium approaches are feasible. This is the case if more than one actor has to be included in the model design (eg, in case of oligopolistic competition) and we lack a single objective that we can optimise.\r\n \r\nSummarising, each optimization formulation can be transformed into an equilibrium formulation. Therefore, many model designs can be realised via both approaches. In the next step, we will use our energy system example to get a more hands-on understanding of the linkage between optimization and equilibrium.\r\n \r\n<br>\r\n \r\nRecommended readings \r\n{.footnote-title}\r\n\r\nThe literature recommendation below takes up on the combined representation of natural gas and electricity market we already recommended in an earlier step. The model is an extension of the static model formulation presented in Abrell and Weigt (2014) to account for investments. Besides presenting an example of how to design a potential investment decision, the paper also shows the relation between optimization and equilibrium. Within the paper the different market actors are described using their respective profit maximizations and side constraints. This logic is then transferred into an equilibrium formulation in the Annex using the above described relation.\r\n \r\nAbrell, J. & Weigt, H. (2014). [Investments in a Combined Energy Network Model: Substitution between Natural Gas And Electricity?](https://ideas.repec.org/p/bsl/wpaper/2014-05.html){:target=“_blank”} WWZ, University Basel.\r\n{.citation-indented}', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 1, 'published', False, None, None, None, None, 228)]])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /app/project/lms_base/templatetags/utils.py in get_previous_step(93) return step.get_previous(published_only=True) /app/project/lms_base/models.py in get_previous(255) return self._get_neighbour_step(is_next=False, published_only=published_only) /app/project/lms_base/models.py in _get_neighbour_step(201) step = self.__class__.next_previous_manager.get_next_previous( /app/project/lms_base/models.py in get_next_previous(72) return qs.last() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,3942 | get_many | (['53169bc24a037802f3e42b2df3d6e48b7ae8482f', 'e3a5db5a670ad803efb866441f33de58309be2e2', '542c27005f4e84288827ce70a7d49bc73324a5e7', '46b014659328adf495daf4dffae82eb17fdee2b5'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /usr/local/lib/python3.11/site-packages/rules/templatetags/rules.py in has_perm(18) return user.has_perm(perm, obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in has_perm(480) return _user_has_perm(self, perm, obj=obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in _user_has_perm(220) if backend.has_perm(user, perm, obj): /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(31) return has_perm(perm, user, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(23) return permissions.test_rule(name, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/rulesets.py in test_rule(6) return name in self and self[name].test(*args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in test(172) return bool(self._apply(*args)) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in OR(184) return self._combine(other, operator.or_, args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _combine(206) self_result = self._apply(*args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /app/project/lms_tales/rules.py in is_in_group(32) for owner in course.owner.all(): /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3270 | get_many | (['53169bc24a037802f3e42b2df3d6e48b7ae8482f', 'e3a5db5a670ad803efb866441f33de58309be2e2', '542c27005f4e84288827ce70a7d49bc73324a5e7', '46b014659328adf495daf4dffae82eb17fdee2b5'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /usr/local/lib/python3.11/site-packages/rules/templatetags/rules.py in has_perm(18) return user.has_perm(perm, obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in has_perm(480) return _user_has_perm(self, perm, obj=obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in _user_has_perm(220) if backend.has_perm(user, perm, obj): /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(31) return has_perm(perm, user, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(23) return permissions.test_rule(name, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/rulesets.py in test_rule(6) return name in self and self[name].test(*args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in test(172) return bool(self._apply(*args)) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in OR(184) return self._combine(other, operator.or_, args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _combine(206) self_result = self._apply(*args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /app/project/lms_tales/rules.py in is_in_group(32) for owner in course.owner.all(): /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3170 | get_many | (['53169bc24a037802f3e42b2df3d6e48b7ae8482f', 'e3a5db5a670ad803efb866441f33de58309be2e2', '542c27005f4e84288827ce70a7d49bc73324a5e7', '46b014659328adf495daf4dffae82eb17fdee2b5'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /usr/local/lib/python3.11/site-packages/rules/templatetags/rules.py in has_perm(18) return user.has_perm(perm, obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in has_perm(480) return _user_has_perm(self, perm, obj=obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in _user_has_perm(220) if backend.has_perm(user, perm, obj): /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(31) return has_perm(perm, user, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(23) return permissions.test_rule(name, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/rulesets.py in test_rule(6) return name in self and self[name].test(*args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in test(172) return bool(self._apply(*args)) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in OR(184) return self._combine(other, operator.or_, args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _combine(206) self_result = self._apply(*args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /app/project/lms_tales/rules.py in is_in_group(32) for owner in course.owner.all(): /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,3125 | get | ('waffle:4.1.0f1f61030d824f38a8926961f0e221887',) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/waffle/templatetags/waffle_tags.py in render(36) if self.condition(context.get('request', None), name): /usr/local/lib/python3.11/site-packages/waffle/__init__.py in flag_is_active(19) flag = get_waffle_flag_model().get(flag_name) /usr/local/lib/python3.11/site-packages/waffle/models.py in get(52) cached = cache.get(cache_key) |
|||||
0,3835 | get_many | (['76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '0fca027ac8b1e71089a43ecc2d0e2c8376872594'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_step_number(110) chapter_list = list( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,6833 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '76e323efd8711853e13c9f7cf976845908364eb2', '6ff2100710d67b2c59548d76f91e53490b3063bd'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_step_number(121) step_list = list(self.chapter.published_steps.all().order_by("order")) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
1,6668 | set_many | ({'6ff2100710d67b2c59548d76f91e53490b3063bd': (1736591323.6154683, [[(1288, datetime.datetime(2022, 5, 5, 19, 16, 51, 472944, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 32, 46, 640902, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 32, 46, 592334, tzinfo=datetime.timezone.utc), False, 'Which model type to choose', None, 'Which model type to choose', None, '', None, None, None, 'Watch Hannes Weigt explaining some basic guidelines on how to decide which model is the best choice for your problem.', None, 'Watch Hannes Weigt explaining some basic guidelines on how to decide which model is the best choice for your problem.', None, 'exploring-possible-futures/second-best-worlds/which-model-type-to-choose/019.jpg', 'which-model-type-to-choose', 'By now you have learned about system perspectives and how to build optimization models, and practised with your first bottom-up energy system model. You followed the explanation of basic building blocks and learned how to design aggregated firm and market models. So the natural question you will likely ask at this point is: which is the best model type to choose for a specific problem?\r\n{.lead}\r\n\r\n![embed](https://vimeo.com/734303964/2f7d8c11a7)\r\n \r\nThere is no general answer to this question as it heavily depends on the problem you want to analyse. One advantage of modelling is that many roads lead to Rome. In many cases you will be able to address your problem with different model types.\r\n \r\nIf you focus on the main characteristics of the different model concepts and designs we discussed, you often get a good idea for which type of question they are well fitted.\r\n \r\n\r\nFor example, think about the **scale** of your question:\r\n\r\n* Large scale energy system models often focus on capturing many technical bottom-up aspects. \r\n* Firm-oriented models allow you to capture the behaviour of profit oriented companies and how their decisions are influenced by external aspects like prices or policy regulations. \r\n* And market models focus on interaction of actors. \r\n \r\nOr whether you are looking for **qualitative** or **quantitative** answers: \r\n\r\n* Conceptual/theoretical models aim to understand mechanisms and arguments. \r\n* Numerical models can provide scenario assessments and are fitted to represent specific real world markets or systems. \r\n\r\nOr, how your **mathematical formulation** fits to your question: \r\n\r\n* Optimization problems need something to optimise like profits or costs. \r\n* Equilibrium problems capture the interaction of different actors. \r\n \r\nWith a bit of experience these considerations will become easier and a natural part of the back and forth between defining your research problem and designing your model.', '', 'By now you have learned about system perspectives and how to build optimization models, and practised with your first bottom-up energy system model. You followed the explanation of basic building blocks and learned how to design aggregated firm and market models. So the natural question you will likely ask at this point is: which is the best model type to choose for a specific problem?\r\n{.lead}\r\n\r\n![embed](https://vimeo.com/734303964/2f7d8c11a7)\r\n \r\nThere is no general answer to this question as it heavily depends on the problem you want to analyse. One advantage of modelling is that many roads lead to Rome. In many cases you will be able to address your problem with different model types.\r\n \r\nIf you focus on the main characteristics of the different model concepts and designs we discussed, you often get a good idea for which type of question they are well fitted.\r\n \r\n\r\nFor example, think about the **scale** of your question:\r\n\r\n* Large scale energy system models often focus on capturing many technical bottom-up aspects. \r\n* Firm-oriented models allow you to capture the behaviour of profit oriented companies and how their decisions are influenced by external aspects like prices or policy regulations. \r\n* And market models focus on interaction of actors. \r\n \r\nOr whether you are looking for **qualitative** or **quantitative** answers: \r\n\r\n* Conceptual/theoretical models aim to understand mechanisms and arguments. \r\n* Numerical models can provide scenario assessments and are fitted to represent specific real world markets or systems. \r\n\r\nOr, how your **mathematical formulation** fits to your question: \r\n\r\n* Optimization problems need something to optimise like profits or costs. \r\n* Equilibrium problems capture the interaction of different actors. \r\n \r\nWith a bit of experience these considerations will become easier and a natural part of the back and forth between defining your research problem and designing your model.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TV', '', 0, 'published', False, None, None, None, None, 228), (1289, datetime.datetime(2022, 5, 5, 19, 17, 2, 835890, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 33, 38, 786946, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 33, 38, 732789, tzinfo=datetime.timezone.utc), False, 'Two sides of the same coin', None, 'Two sides of the same coin', None, '', None, None, None, 'In this article Hannes Weigt explains how optimization problems can be transformed into equilibrium formulations.', None, 'In this article Hannes Weigt explains how optimization problems can be transformed into equilibrium formulations.', None, '', 'two-sides-of-the-same-coin', 'In the previous step you have learned that the choice of your model design will largely depend on your underlying problem, but also that some model approaches are exchangeable and lead to the same results.\r\n{.lead}\r\n\r\n![Coin](/media/markdownx/79a32575-7014-43f8-a8cb-42540817f6a8.png)\r\n\r\nThis is particularly important for optimization or equilibrium formulations. The model choice is often a matter of preference in model design and the underlying economic thinking than a strict necessity. In this step, you will see that there is also a mathematical reasoning behind the fact that most problems can be formulated as both model types.\r\n \r\nIn general, each optimization problem can be transformed into an equilibrium formulation. Remember, how in the examples of equilibria one was the ‘result of an optimization’? This relation is based on the so called **Karush–Kuhn–Tucker (KKT) conditions**.\r\n \r\nLet’s take a generic optimization problem as an example:\r\n\r\n---\r\n \r\n   $$\\min \\limits_X \\enspace {f(X)} $$\r\n\r\n s.t. $$ g_i(X)=0$$\r\n\r\n   $$h_i(X) \\le 0$$\r\n\r\n---\r\n\r\nwe can derive the solution by setting up the **Lagrange function** of this problem (by introducing the Lagrangian multiplier $$µ$$ for the equality constraints and $$λ$$ for the inequality constraints)\r\n \r\n---\r\n\r\n$$L=f(X)+\\sum\\mu_ig_i(X)+\\sum\\lambda_ih_i(X)$$\r\n \r\n---\r\n\r\nand obtain the necessary KKT conditions for a minimum (or first-order condition) by taking the partial derivative of the Lagrangian with respect to X and setting the equation equal to zero:\r\n \r\n---\r\n\r\n(1)   $$\\frac{\\partial f(X)}{\\partial X}+\\sum\\mu_i\\frac{\\partial g_i(X)}{\\partial X}+\\sum\\lambda_i\\frac{\\partial h_i(X)}{\\partial X}=0$$\r\n\r\n(2)   $$g_i(X)=0$$\r\n\r\n(3)   $$h_i(X) \\le 0$$\r\n\r\n(4)   $$λ_i h_i(X)=0$$\r\n\r\n(5)   $$λ_i \\ge 0$$\r\n\r\n---\r\n\r\n \r\n**Equation (1)** is the simple optimality criterion that the first-order condition with respect to the decision variables (X) need to equal zero. **Equation (2)** and **(3)** are the feasibility constraints imposed by the side constraints. **Equation (4)** is called the complementary slackness condition and results from inequality constraints. **Equation (5)** the non-negativity restriction on the multipliers of the inequalities. Technically, these equations state the conditions the system has to fulfil in the optimal equilibrium; this is an equilibrium formulation of the above designed optimization problem. (For more information and derivation of the KKT conditions follow the link to additional information below.)\r\n \r\nLet’s rephrase the conditions a little bit to obtain the same logic we have learned in the last chapter about equilibrium problems. For this we need so called **complementarity conditions**. In general, two variables (note: these are not the same variables from the above equations) are complementary to each other if the following holds:\r\n \r\n\r\n$$X\\cdot Y=0; X\\geq 0; Y\\geq 0$$   which is often written as   $$X\\leq0\\perp Y\\geq 0$$\r\n\r\n\r\nThis basically tells us that either X or Y needs to be zero.\r\n\r\n \r\nReturning to the Lagrange formulation of our minimization:\r\n\r\n\r\n$$L=f(X) + \\sum \\mu_i g_i (X) + \\sum \\lambda_i h_i(X)$$\r\n \r\nwe can derive our equilibrium formulation via these **complementarity conditions**, first for the choice variable:\r\n\r\n$$\\frac{\\partial L}{\\partial X}X=0;$$   $$\\frac{\\partial L}{\\partial X} \\leq0;$$   $$X\\geq0$$\r\n \r\nThese equations tell us that the product of the first-order condition, $$\\frac{\\partial L}{\\partial X}$$, with the respective variable, $$X$$, has to equal zero either the variable, $$X$$, or the derivative must be zero. This is equivalent to the economic logic introduced for equilibrium models. Either my decision variable X (eg, my output) is positive, in which case the respective first-order condition has to equal zero (my zero-profit condition), or my decision variable is zero (eg, I don’t produce any output because I won’t make a profit or breakeven).\r\n \r\nThe same holds for the multipliers on the equality and inequality constraints:\r\n \r\n---\r\n\r\n$$\\frac{\\partial L }{ \\partial{\\mu_i}}\\mu_i = 0;$$   $$\\frac{\\partial L}{ \\partial{\\mu_i}} = 0;$$   $$μ_i$$ is free \r\n$$\\frac{\\partial L}{\\partial \\lambda_i}\\lambda_i=0;$$   $$\\frac{\\partial L}{\\partial \\lambda_i}\\leq0;$$   $$λ_i \\ge 0$$\r\n \r\n---\r\n\r\nEither my side constraint is binding (eg, the production capacity limit is reached), in which case my multiplier has a positive value (eg, the shadow price of capacity), or it is not binding and the multiplier has to be zero. Note that for equality constraints the multiplier is free in sign as the enforced equality basically ensures that the derivative has to be zero.\r\n\r\nThe important point with this reformulation is that it is equivalent to the above formulated KKT conditions which are the solution of the optimization. In other words, if we have an optimization formulation, we can reformulate it as an equilibrium problem and obtain the same result. The reverse is not true, as not all equilibrium models can be transferred into optimization models. Consequently, there are some problems where only equilibrium approaches are feasible. This is the case if more than one actor has to be included in the model design (eg, in case of oligopolistic competition) and we lack a single objective that we can optimise.\r\n \r\nSummarising, each optimization formulation can be transformed into an equilibrium formulation. Therefore, many model designs can be realised via both approaches. In the next step, we will use our energy system example to get a more hands-on understanding of the linkage between optimization and equilibrium.\r\n \r\n<br>\r\n \r\nRecommended readings \r\n{.footnote-title}\r\n\r\nThe literature recommendation below takes up on the combined representation of natural gas and electricity market we already recommended in an earlier step. The model is an extension of the static model formulation presented in Abrell and Weigt (2014) to account for investments. Besides presenting an example of how to design a potential investment decision, the paper also shows the relation between optimization and equilibrium. Within the paper the different market actors are described using their respective profit maximizations and side constraints. This logic is then transferred into an equilibrium formulation in the Annex using the above described relation.\r\n \r\nAbrell, J. & Weigt, H. (2014). [Investments in a Combined Energy Network Model: Substitution between Natural Gas And Electricity?](https://ideas.repec.org/p/bsl/wpaper/2014-05.html){:target=“_blank”} WWZ, University Basel.\r\n{.citation-indented}', '', 'In the previous step you have learned that the choice of your model design will largely depend on your underlying problem, but also that some model approaches are exchangeable and lead to the same results.\r\n{.lead}\r\n\r\n![Coin](/media/markdownx/79a32575-7014-43f8-a8cb-42540817f6a8.png)\r\n\r\nThis is particularly important for optimization or equilibrium formulations. The model choice is often a matter of preference in model design and the underlying economic thinking than a strict necessity. In this step, you will see that there is also a mathematical reasoning behind the fact that most problems can be formulated as both model types.\r\n \r\nIn general, each optimization problem can be transformed into an equilibrium formulation. Remember, how in the examples of equilibria one was the ‘result of an optimization’? This relation is based on the so called **Karush–Kuhn–Tucker (KKT) conditions**.\r\n \r\nLet’s take a generic optimization problem as an example:\r\n\r\n---\r\n \r\n   $$\\min \\limits_X \\enspace {f(X)} $$\r\n\r\n s.t. $$ g_i(X)=0$$\r\n\r\n   $$h_i(X) \\le 0$$\r\n\r\n---\r\n\r\nwe can derive the solution by setting up the **Lagrange function** of this problem (by introducing the Lagrangian multiplier $$µ$$ for the equality constraints and $$λ$$ for the inequality constraints)\r\n \r\n---\r\n\r\n$$L=f(X)+\\sum\\mu_ig_i(X)+\\sum\\lambda_ih_i(X)$$\r\n \r\n---\r\n\r\nand obtain the necessary KKT conditions for a minimum (or first-order condition) by taking the partial derivative of the Lagrangian with respect to X and setting the equation equal to zero:\r\n \r\n---\r\n\r\n(1)   $$\\frac{\\partial f(X)}{\\partial X}+\\sum\\mu_i\\frac{\\partial g_i(X)}{\\partial X}+\\sum\\lambda_i\\frac{\\partial h_i(X)}{\\partial X}=0$$\r\n\r\n(2)   $$g_i(X)=0$$\r\n\r\n(3)   $$h_i(X) \\le 0$$\r\n\r\n(4)   $$λ_i h_i(X)=0$$\r\n\r\n(5)   $$λ_i \\ge 0$$\r\n\r\n---\r\n\r\n \r\n**Equation (1)** is the simple optimality criterion that the first-order condition with respect to the decision variables (X) need to equal zero. **Equation (2)** and **(3)** are the feasibility constraints imposed by the side constraints. **Equation (4)** is called the complementary slackness condition and results from inequality constraints. **Equation (5)** the non-negativity restriction on the multipliers of the inequalities. Technically, these equations state the conditions the system has to fulfil in the optimal equilibrium; this is an equilibrium formulation of the above designed optimization problem. (For more information and derivation of the KKT conditions follow the link to additional information below.)\r\n \r\nLet’s rephrase the conditions a little bit to obtain the same logic we have learned in the last chapter about equilibrium problems. For this we need so called **complementarity conditions**. In general, two variables (note: these are not the same variables from the above equations) are complementary to each other if the following holds:\r\n \r\n\r\n$$X\\cdot Y=0; X\\geq 0; Y\\geq 0$$   which is often written as   $$X\\leq0\\perp Y\\geq 0$$\r\n\r\n\r\nThis basically tells us that either X or Y needs to be zero.\r\n\r\n \r\nReturning to the Lagrange formulation of our minimization:\r\n\r\n\r\n$$L=f(X) + \\sum \\mu_i g_i (X) + \\sum \\lambda_i h_i(X)$$\r\n \r\nwe can derive our equilibrium formulation via these **complementarity conditions**, first for the choice variable:\r\n\r\n$$\\frac{\\partial L}{\\partial X}X=0;$$   $$\\frac{\\partial L}{\\partial X} \\leq0;$$   $$X\\geq0$$\r\n \r\nThese equations tell us that the product of the first-order condition, $$\\frac{\\partial L}{\\partial X}$$, with the respective variable, $$X$$, has to equal zero either the variable, $$X$$, or the derivative must be zero. This is equivalent to the economic logic introduced for equilibrium models. Either my decision variable X (eg, my output) is positive, in which case the respective first-order condition has to equal zero (my zero-profit condition), or my decision variable is zero (eg, I don’t produce any output because I won’t make a profit or breakeven).\r\n \r\nThe same holds for the multipliers on the equality and inequality constraints:\r\n \r\n---\r\n\r\n$$\\frac{\\partial L }{ \\partial{\\mu_i}}\\mu_i = 0;$$   $$\\frac{\\partial L}{ \\partial{\\mu_i}} = 0;$$   $$μ_i$$ is free \r\n$$\\frac{\\partial L}{\\partial \\lambda_i}\\lambda_i=0;$$   $$\\frac{\\partial L}{\\partial \\lambda_i}\\leq0;$$   $$λ_i \\ge 0$$\r\n \r\n---\r\n\r\nEither my side constraint is binding (eg, the production capacity limit is reached), in which case my multiplier has a positive value (eg, the shadow price of capacity), or it is not binding and the multiplier has to be zero. Note that for equality constraints the multiplier is free in sign as the enforced equality basically ensures that the derivative has to be zero.\r\n\r\nThe important point with this reformulation is that it is equivalent to the above formulated KKT conditions which are the solution of the optimization. In other words, if we have an optimization formulation, we can reformulate it as an equilibrium problem and obtain the same result. The reverse is not true, as not all equilibrium models can be transferred into optimization models. Consequently, there are some problems where only equilibrium approaches are feasible. This is the case if more than one actor has to be included in the model design (eg, in case of oligopolistic competition) and we lack a single objective that we can optimise.\r\n \r\nSummarising, each optimization formulation can be transformed into an equilibrium formulation. Therefore, many model designs can be realised via both approaches. In the next step, we will use our energy system example to get a more hands-on understanding of the linkage between optimization and equilibrium.\r\n \r\n<br>\r\n \r\nRecommended readings \r\n{.footnote-title}\r\n\r\nThe literature recommendation below takes up on the combined representation of natural gas and electricity market we already recommended in an earlier step. The model is an extension of the static model formulation presented in Abrell and Weigt (2014) to account for investments. Besides presenting an example of how to design a potential investment decision, the paper also shows the relation between optimization and equilibrium. Within the paper the different market actors are described using their respective profit maximizations and side constraints. This logic is then transferred into an equilibrium formulation in the Annex using the above described relation.\r\n \r\nAbrell, J. & Weigt, H. (2014). [Investments in a Combined Energy Network Model: Substitution between Natural Gas And Electricity?](https://ideas.repec.org/p/bsl/wpaper/2014-05.html){:target=“_blank”} WWZ, University Basel.\r\n{.citation-indented}', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 1, 'published', False, None, None, None, None, 228), (1290, datetime.datetime(2022, 5, 5, 19, 17, 15, 754592, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 34, 30, 287912, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 34, 30, 183736, tzinfo=datetime.timezone.utc), False, 'Perfect competition as example', None, 'Perfect competition as example', None, '', None, None, None, 'Through this article, Hannes Weigt explains how a simple energy system model can be formulated as optimization and as equilibrium market model.', None, 'Through this article, Hannes Weigt explains how a simple energy system model can be formulated as optimization and as equilibrium market model.', None, '', 'perfect-competition-as-example', 'In the last step we took a dive into the underlying mathematics of our models. To get a better understanding of what this means for your model design, we now use our simple energy system logic to design an optimization model and an equilibrium model that will result in the same outcomes.\r\n{.lead}\r\n \r\n![Perfect Competition](/media/markdownx/29fb3dea-0607-45e2-9a08-011fce2e760f.png)\r\n\r\nThe setup is the same for both. We assume a perfectly competitive market in which producers aim to maximise their short run profit given their cost function. Consumers aim to maximise their benefit derived from consuming electricity.\r\n \r\nIn an optimization setting, you know that you need to combine the individual objectives (firm’s profits and consumer benefit) into a single objective, $$B(d)$$. As we assume perfect competition, this is easily doable by maximising the welfare in our system (as discussed in an earlier step). Consequently, the objective function for the social planner looks like this:\r\n \r\n---\r\n\r\n(1)   $$\\max\\limits_{q_i,d\\geq 0} \\enspace B(d)-\\sum\\limits_{i}{c_i(q_i)}$$\r\n \r\n---\r\n\r\n$$B(d)$$ represents the benefit function of consumers (how much utility they derive from their demand $$d$$) and the profits from the firm. $$c_i(q_i)$$ represents the generation costs of firm $$i$$.\r\n \r\nAs side constraints you will again need to ensure that total supply is sufficient to cover demand. Clearly, demand cannot be less than 0:\r\n \r\n---\r\n\r\n(2)   $$\\sum\\limits_{i}{q_i} =d$$\r\n\r\n---\r\n \r\nIf you would derive the Karush–Kuhn–Tucker (KKT) conditions of the Lagrangian formulation of these two equations you would obtain the optimality conditions defining which level of supply and demand maximises welfare. Let’s just focus on the two decision variables: $$q_i$$ and $$d$$. Again, you will need to derive the first order condition of the model with respect to the two variables and set them equal to zero:\r\n \r\n\r\n\r\n---\r\n\r\n(3)   $$\\frac{∂B}{∂d}-μ=0$$ \r\n\r\n(4)   $$\\frac{∂c_i(q_i)}{∂q_i}+μ=0$$\r\n\r\n---\r\n\r\nThe $$µ$$ is again the Lagrangian multipliers on the side constraint.\r\n \r\nEquations (4) and (5) together with the side constraint (2) tell you the optimality criteria for your model.\r\n \r\nOk, let’s shortly switch to the equilibrium world and design the same problem in an equilibrium setting. Here we have firms maximizing profits, consumers maximizing their benefit, and a market that brings the two sides together.\r\n \r\nYou know that firms will only produce if the marginal costs are covered. Using this zero-profit logic you can write their equilibrium conditions as follows:\r\n\r\n---\r\n \r\n(5)   $$\\frac{∂c_i(q_i)}{∂q_i}\\geq p \\bot q_i\\geq0$$\r\n \r\n---\r\n\r\nThis formulation is the mathematical equivalent of our equilibrium logic. Either the firm has a positive output ($$q_i > 0$$) in which case the left hand side of equation (5) needs to hold with equality ($$\\frac{∂c_i(q_i)}{∂q_i}=p$$); or the firm does not produce ($$q_i = 0$$) in which case the left hand side is in inequality ($$\\frac{∂c_i(q_i)}{∂q_i}>p$$). The perpendicular sign $$\\bot$$ allows us to write this combination a bit more compactly.\r\n\r\nThe same logic holds for the consumer side:\r\n \r\n---\r\n\r\n(6)   $$p \\geq \\frac{∂B}{∂d} \\bot d \\geq 0$$\r\n \r\n---\r\n\r\nConsumers will only consume energy if the marginal benefit they can derive ($$\\frac{∂B}{∂d}$$) is at least as large as the price they have to pay for it.\r\n \r\nNow all you need is the market clearing condition to finalise your equilibrium model:\r\n\r\n---\r\n\r\n(7)   $$\\sum\\limits_{i}{q_i}\\geq d \\bot p \\geq 0$$\r\n \r\n---\r\n\r\nSimilar to the zero-profit equations this formulation is the mathematical way of describing the market clearing logic: if we have a positive market price ($$p > 0$$) it means the supply and demand side are in balance ($$\\sum\\limits_{i}{q_i}=d$$). If we have oversupply ($$\\sum\\limits_{i}{q_i}>d$$) the market price is zero ($$p = 0$$).\r\n \r\nNow if you compare equation (5) to (7) of the equilibrium model with equation (2) to (4) of the optimization model you may see some similarities: \r\nEquation (3) tells us that in the optimum, the marginal benefit of consumers is equal to $$µ$$. The same holds for the marginal costs of each firm in the optimum (equation (4)). And this $$µ$$ is linked to the constraint that in the equilibrium total supply and demand have to be balanced.\r\n \r\nNow this is basically the same story you designed with the equilibrium model. If supply and demand are equal, equation (7) tells us that the resulting market price, $$p$$, will be positive. And if you neglect the non-trivial equilibrium of having zero $$d$$ and production (which are balanced by definition) this also means positive production and demand levels. Equations (5) and (6) tell you that in this case the marginal costs of the firms have to be equal to the market price and the marginal benefit of consumers also has to be equal to the market price.\r\n \r\nIf you now replace the symbol for the market price, $$p$$, with some Greek letter, say $$µ$$, you see that those are basically the same results. The only difference is that the equilibrium model is formulated in a more general sense (those are conditions that need to hold for the market to be in equilibrium) whereas the optimization equations show the conditions that need to hold for the market to be in the equilibrium that optimises welfare.\r\n \r\nThis relation between the two model approaches means two things with respect to analysing your problem: \r\nFirst, you are often free to choose one or the other type of model. As long as you can derive a single objective for an optimization you can also formulate an equivalent equilibrium version of your model.\r\n\r\nSecond, the equilibrium logic of who is doing what (activity) when (zero-profit) and how market prices are related to supply and demand (market clearing) also holds when analysing your optimization model results. The underlying economic logic is the driving force of the two models. So, a solid understanding of incentives and market dynamics will help you to design, solve, and interpret your models, regardless of what specific model setup you have chosen.', '', 'In the last step we took a dive into the underlying mathematics of our models. To get a better understanding of what this means for your model design, we now use our simple energy system logic to design an optimization model and an equilibrium model that will result in the same outcomes.\r\n{.lead}\r\n \r\n![Perfect Competition](/media/markdownx/29fb3dea-0607-45e2-9a08-011fce2e760f.png)\r\n\r\nThe setup is the same for both. We assume a perfectly competitive market in which producers aim to maximise their short run profit given their cost function. Consumers aim to maximise their benefit derived from consuming electricity.\r\n \r\nIn an optimization setting, you know that you need to combine the individual objectives (firm’s profits and consumer benefit) into a single objective, $$B(d)$$. As we assume perfect competition, this is easily doable by maximising the welfare in our system (as discussed in an earlier step). Consequently, the objective function for the social planner looks like this:\r\n \r\n---\r\n\r\n(1)   $$\\max\\limits_{q_i,d\\geq 0} \\enspace B(d)-\\sum\\limits_{i}{c_i(q_i)}$$\r\n \r\n---\r\n\r\n$$B(d)$$ represents the benefit function of consumers (how much utility they derive from their demand $$d$$) and the profits from the firm. $$c_i(q_i)$$ represents the generation costs of firm $$i$$.\r\n \r\nAs side constraints you will again need to ensure that total supply is sufficient to cover demand. Clearly, demand cannot be less than 0:\r\n \r\n---\r\n\r\n(2)   $$\\sum\\limits_{i}{q_i} =d$$\r\n\r\n---\r\n \r\nIf you would derive the Karush–Kuhn–Tucker (KKT) conditions of the Lagrangian formulation of these two equations you would obtain the optimality conditions defining which level of supply and demand maximises welfare. Let’s just focus on the two decision variables: $$q_i$$ and $$d$$. Again, you will need to derive the first order condition of the model with respect to the two variables and set them equal to zero:\r\n \r\n\r\n\r\n---\r\n\r\n(3)   $$\\frac{∂B}{∂d}-μ=0$$ \r\n\r\n(4)   $$\\frac{∂c_i(q_i)}{∂q_i}+μ=0$$\r\n\r\n---\r\n\r\nThe $$µ$$ is again the Lagrangian multipliers on the side constraint.\r\n \r\nEquations (4) and (5) together with the side constraint (2) tell you the optimality criteria for your model.\r\n \r\nOk, let’s shortly switch to the equilibrium world and design the same problem in an equilibrium setting. Here we have firms maximizing profits, consumers maximizing their benefit, and a market that brings the two sides together.\r\n \r\nYou know that firms will only produce if the marginal costs are covered. Using this zero-profit logic you can write their equilibrium conditions as follows:\r\n\r\n---\r\n \r\n(5)   $$\\frac{∂c_i(q_i)}{∂q_i}\\geq p \\bot q_i\\geq0$$\r\n \r\n---\r\n\r\nThis formulation is the mathematical equivalent of our equilibrium logic. Either the firm has a positive output ($$q_i > 0$$) in which case the left hand side of equation (5) needs to hold with equality ($$\\frac{∂c_i(q_i)}{∂q_i}=p$$); or the firm does not produce ($$q_i = 0$$) in which case the left hand side is in inequality ($$\\frac{∂c_i(q_i)}{∂q_i}>p$$). The perpendicular sign $$\\bot$$ allows us to write this combination a bit more compactly.\r\n\r\nThe same logic holds for the consumer side:\r\n \r\n---\r\n\r\n(6)   $$p \\geq \\frac{∂B}{∂d} \\bot d \\geq 0$$\r\n \r\n---\r\n\r\nConsumers will only consume energy if the marginal benefit they can derive ($$\\frac{∂B}{∂d}$$) is at least as large as the price they have to pay for it.\r\n \r\nNow all you need is the market clearing condition to finalise your equilibrium model:\r\n\r\n---\r\n\r\n(7)   $$\\sum\\limits_{i}{q_i}\\geq d \\bot p \\geq 0$$\r\n \r\n---\r\n\r\nSimilar to the zero-profit equations this formulation is the mathematical way of describing the market clearing logic: if we have a positive market price ($$p > 0$$) it means the supply and demand side are in balance ($$\\sum\\limits_{i}{q_i}=d$$). If we have oversupply ($$\\sum\\limits_{i}{q_i}>d$$) the market price is zero ($$p = 0$$).\r\n \r\nNow if you compare equation (5) to (7) of the equilibrium model with equation (2) to (4) of the optimization model you may see some similarities: \r\nEquation (3) tells us that in the optimum, the marginal benefit of consumers is equal to $$µ$$. The same holds for the marginal costs of each firm in the optimum (equation (4)). And this $$µ$$ is linked to the constraint that in the equilibrium total supply and demand have to be balanced.\r\n \r\nNow this is basically the same story you designed with the equilibrium model. If supply and demand are equal, equation (7) tells us that the resulting market price, $$p$$, will be positive. And if you neglect the non-trivial equilibrium of having zero $$d$$ and production (which are balanced by definition) this also means positive production and demand levels. Equations (5) and (6) tell you that in this case the marginal costs of the firms have to be equal to the market price and the marginal benefit of consumers also has to be equal to the market price.\r\n \r\nIf you now replace the symbol for the market price, $$p$$, with some Greek letter, say $$µ$$, you see that those are basically the same results. The only difference is that the equilibrium model is formulated in a more general sense (those are conditions that need to hold for the market to be in equilibrium) whereas the optimization equations show the conditions that need to hold for the market to be in the equilibrium that optimises welfare.\r\n \r\nThis relation between the two model approaches means two things with respect to analysing your problem: \r\nFirst, you are often free to choose one or the other type of model. As long as you can derive a single objective for an optimization you can also formulate an equivalent equilibrium version of your model.\r\n\r\nSecond, the equilibrium logic of who is doing what (activity) when (zero-profit) and how market prices are related to supply and demand (market clearing) also holds when analysing your optimization model results. The underlying economic logic is the driving force of the two models. So, a solid understanding of incentives and market dynamics will help you to design, solve, and interpret your models, regardless of what specific model setup you have chosen.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 2, 'published', False, None, None, None, None, 228), (1291, datetime.datetime(2022, 5, 5, 19, 17, 29, 193002, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 35, 32, 392825, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 35, 32, 329627, tzinfo=datetime.timezone.utc), False, 'Assess your knowledge', None, 'Assess your knowledge', None, '', None, None, None, 'Assess your knowledge on the basic concept of optimization and equilibrium models.', None, 'Assess your knowledge on the basic concept of optimization and equilibrium models.', None, '', 'assess-your-knowledge-3', 'Do you understand the basic concept of optimization and equilibrium models?\r\n{.lead}\r\n\r\n<br>\r\n\r\n<iframe src="https://h5p.nmc.unibas.ch/wp-admin/admin-ajax.php?action=h5p_embed&id=324" width="885" height="373" frameborder="0" allowfullscreen="allowfullscreen" title="Energy_Economics_4_4"></iframe><script src="https://h5p.nmc.unibas.ch/wp-content/plugins/h5p/h5p-php-library/js/h5p-resizer.js" charset="UTF-8"></script>', '', 'Do you understand the basic concept of optimization and equilibrium models?\r\n{.lead}\r\n\r\n<br>\r\n\r\n<iframe src="https://h5p.nmc.unibas.ch/wp-admin/admin-ajax.php?action=h5p_embed&id=324" width="885" height="373" frameborder="0" allowfullscreen="allowfullscreen" title="Energy_Economics_4_4"></iframe><script src="https://h5p.nmc.unibas.ch/wp-content/plugins/h5p/h5p-php-library/js/h5p-resizer.js" charset="UTF-8"></script>', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TQ', '', 3, 'published', False, None, None, None, None, 228), (1292, datetime.datetime(2022, 5, 5, 19, 17, 44, 693986, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 36, 32, 915420, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 36, 32, 860504, tzinfo=datetime.timezone.utc), False, 'From perfect to imperfect', None, 'From perfect to imperfect', None, '', None, None, None, 'Watch Frank Krysiak explaining the challenges of modeling real world market distortions.', None, 'Watch Frank Krysiak explaining the challenges of modeling real world market distortions.', None, '', 'from-perfect-to-imperfect', 'The model elements we discussed so far were focused on representing perfect systems: companies take market prices as given, policies are easy to implement, and we possess perfect information on all relevant aspects. Reality is different!\r\n{.lead}\r\n\r\n![embed](https://vimeo.com/734336189/3faa9a46e3)\r\n \r\nIf you want to answer real world challenges and design a credible model for those questions you will also need to account for the imperfections in the world. Theoretic first-best results are always a good place to start your analysis. Especially, if you want to test whether a specific mechanism can achieve a desired outcome in the first place (if it does not work under the best of circumstances chances are small it works under more realistic assumptions).\r\n \r\nBut often you want to test whether a specific market or policy design still performs as intended when companies have the potential to abuse market power. For example, if large incumbents can keep competitors out of the market. Another common problem is the fact that we seldom possess perfect information on all relevant aspects. For example, firms typically have better knowledge on their production and abatement costs than regulators setting environmental policies.\r\n \r\nThose market failures and limitations are common in energy markets and when deciding about environmental policies and as a modeller you need to address those restrictions. This is where we leave the theoretical first-best world and start to aim for second-best solutions.', '', 'The model elements we discussed so far were focused on representing perfect systems: companies take market prices as given, policies are easy to implement, and we possess perfect information on all relevant aspects. Reality is different!\r\n{.lead}\r\n\r\n![embed](https://vimeo.com/734336189/3faa9a46e3)\r\n \r\nIf you want to answer real world challenges and design a credible model for those questions you will also need to account for the imperfections in the world. Theoretic first-best results are always a good place to start your analysis. Especially, if you want to test whether a specific mechanism can achieve a desired outcome in the first place (if it does not work under the best of circumstances chances are small it works under more realistic assumptions).\r\n \r\nBut often you want to test whether a specific market or policy design still performs as intended when companies have the potential to abuse market power. For example, if large incumbents can keep competitors out of the market. Another common problem is the fact that we seldom possess perfect information on all relevant aspects. For example, firms typically have better knowledge on their production and abatement costs than regulators setting environmental policies.\r\n \r\nThose market failures and limitations are common in energy markets and when deciding about environmental policies and as a modeller you need to address those restrictions. This is where we leave the theoretical first-best world and start to aim for second-best solutions.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TV', '', 4, 'published', False, None, None, None, None, 228), (1293, datetime.datetime(2022, 5, 5, 19, 17, 54, 777293, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 37, 58, 159437, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 37, 58, 46277, tzinfo=datetime.timezone.utc), False, 'First-best or second-best: coping with realities', None, 'First-best or second-best: coping with realities', None, '', None, None, None, 'In this article, F. Krysiak explains the difference between perfect competition and monopolies that distort markets and abatement policy design.', None, 'In this article, F. Krysiak explains the difference between perfect competition and monopolies that distort markets and abatement policy design.', None, '', 'first-best-or-second-best-coping-with-realities', 'Do you remember our discussion of firm behaviour from the last chapter? There, we have assumed that our firms behave competitively, that is, they take prices as given and do not try to manipulate markets to their advantage.\r\n{.lead}\r\n\r\n![Competition](/media/markdownx/aa6ef6e3-bf73-475f-9057-196f240d8f59.png)\r\n\r\nUnfortunately, this is a rather optimistic view of most energy markets. In particular, for electricity we often have one (or a few) big suppliers that are able to influence prices. In this step, we will use this example to highlight a crucial difference in designing energy and environmental policies, whether you aim for a first-best or a second-best outcome.\r\n \r\nLet’s start with a first-best case. For this, take the equations that you have used in the last chapter to describe firm behaviour in the Output Abatement Choice Model (OACM) model:\r\n\r\n---\r\n\r\n(1)  $$\\max\\limits_{q_i,a_i\\geq0}\\enspace{p\\cdot q_i}-c_i(q_i,a_i)-t\\cdot e_i(q_i,a_i)$$\r\n\r\n(2)  $$p-\\frac{∂c_i (q_i,a_i )}{∂q_i} -t\\cdot \\frac{∂e_i (q_i ,a_i )}{∂q_i}=0$$\r\n\r\n(3)  $$-\\frac{∂c_i (q_i,a_i )}{∂a_i}-t\\cdot\\frac{∂e_i (q_i ,a_i )}{∂a_i}=0$$\r\n \r\n---\r\n\r\n**Equation (1)** represents each firm’s optimization problem and **equations (2)** and **(3)** are the necessary conditions for optimality resulting from this problem (excluding corner solutions).\r\n \r\nThese equations describe what a **firm** will do. However, how do you know whether this behaviour is good or bad from a **societal** perspective? In chapter 2, we have introduced the concept of **social welfare** to this end. In the OACM model with $$n$$ firms, social welfare can be written as\r\n\r\n---\r\n\r\n(4)  $$\\int_{0}^{\\sum\\limits_{i=1}^{n}{q_i} }{p(q)dq-\\sum\\limits_{i=1}^{n}{c_i(q_i,a_i)-D(\\sum\\limits_{i=1}^{n}{e_i(q_i,a_i)} )} }\r\n$$\r\n \r\n---\r\n\r\nThe first term, $$\\int_{0}^{\\sum\\limits_{i=1}^{n}{q_i} }{p(q)dq}$$, describes the consumer rent; that is, the benefit that consumer have from consuming electricity (the area below the demand curve). The second term, $$\\sum\\limits_{i=1}^{n}{c_i(q_i,a_i)}$$, equals the costs of producing electricity and the final term is the damage (measured by a damage function, $$D$$) caused by the sum of all emissions, $$\\sum\\limits_{i=1}^{n}{e_i(q_i,a_i)}$$.\r\n \r\nA benevolent dictator would maximise **equation (4)** with regard to output and abatement for all firms. Doing this for firm $$i$$ (that is, differentiating with respect to $$q_i, a_i$$ and setting the result equal to zero) leads to the following necessary conditions:\r\n\r\n---\r\n\r\n(5)  $$p-\\frac{∂c_i (q_i,a_i )}{∂q_i} -\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}\\cdot \\frac{∂e_i (q_i ,a_i )}{∂q_i} =0$$,\r\n\r\n(6)  $$-\\frac{∂c_i (q_i,a_i )}{∂a_i} -\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}\\cdot \\frac{∂e_i (q_i ,a_i )}{∂a_i} =0$$\r\n\r\n---\r\n\r\nWhere $$D’$$ is the derivative of the damage function with regard to emissions.\r\n \r\nIf you compare **(2)** and **(5)** as well as **(3)** and **(6)**, you see that these equations become equal, if you set $$t =\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$. That is, there is a specific value of the emission tax that induces firms to produce exactly the right amount with exactly the right level of care (abatement). In fact, this is what is usually called a **Pigouvian tax**, which is a tax that internalises the emission externality by making each firm pay the social costs of the next unit of emissions (ie, $$\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$ ) for all of its emissions. Note that this value is the same for all firms.\r\n \r\nThis calculation has several remarkable implications. First, you have two decision variables (production quantity and abatement) for each firm (altogether $$2 n$$ variables) but a single policy instrument (a mandatory tax) suffices to set incentives so that each firm behaves in a socially optimal way. Second, it implies that all firms should pay the same tax for each unit of emissions, which is a pretty strong policy implication (in fact, all firms in all sectors of an economy that emit the same pollutant should pay the same tax).\r\n \r\nThese are rather strong results for a comparatively simple model. Furthermore, they nicely highlight what constitutes a **first-best solution**: you can achieve the best possible outcome, social welfare is maximized. In fact, by implementing a policy, you can align the interests of all firms in the economy with societal objectives. If the tax is chosen correctly (ie, $$t = \\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$ ), the firms voluntarily do what is best for the society.\r\n \r\nThis holds in the benign situation where firms have no market power. Let us for a moment assume that this is not the case. Instead, assume that we only have a single firm, that is, a monopolist. What would this firm do?\r\n \r\nA monopolist would maximize his profit taking into account the willingness of consumers to consume at different prices. Thus, we would integrate the inverse demand function, $$p(q)$$, which describes the price consumers are willing to pay for a given amount, $$q$$, into the monopolist’s decision problem (we drop the indices now, as there is only a single firm):\r\n \r\n---\r\n\r\n(7)  $$\\max\\limits_{q,a\\geq0}\\enspace{p(q)\\cdot q - c(q,a)-t\\cdot e(q,a)}$$\r\n\r\n(8)  $$\\frac{∂p(q)}{∂q}q+p(q)-\\frac{∂c(q,a)}{∂q} -t\\cdot \\frac{∂e(q ,a)}{∂q} =0$$\r\n\r\n(9)  $$-\\frac{∂c(q,a)}{∂a} -t\\cdot\\frac{∂e(q,a)}{∂a} =0$$\r\n\r\n---\r\n \r\nAgain, you have described the maximisation problem in **equation (7)**, and then you derived the necessary conditions from it. The term $$\\frac{∂p(q)}{∂q}$$ denotes the derivative of the inverse demand function.\r\n\r\nComparing **(2)** and **(8)** as well as **(3)** and **(9)** shows that there is no value of the tax, $$t$$, that makes these equations identical. You can either choose to have the right amount of output (ie, make **(2)** and **(8)** identical) or the right amount of abatement (ie, make (3) and (9) identical); achieving both simultaneously is impossible.\r\n \r\nThis is typical for a **second-best solution**: you cannot achieve the best possible outcome but have to choose among less desirable ones. The reason is that the monopolist already produces too little to keep prices up. Thus, taxing the monopolist with the Pigouvian tax, $$t = \\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$, leads to a too strong drop in output. But a lower tax leads to too little abatement effort by the monopolist. Both of these outcomes reduce social welfare.\r\n \r\nSo, you have to compromise: setting a tax that is somewhat lower than the Pigouvian tax will usually be the best that you can do.\r\n \r\nThis is a typical situation in most **real world problems**. We are faced with more problems (market power and emissions, in your example) that we can cope with in terms of policy instruments (you only have a single instrument here). Therefore, we have to make a compromise and accept some welfare losses. It is still possible to increase welfare by introducing a tax but not up to the theoretical benchmark of the first-best solution.\r\n \r\nOf course, this is a rather formal argument. What you should take out here is that there are two approaches to environmental and energy policy:\r\n\r\n<br>\r\n\r\n1. You can try to achieve the best possible outcome. But to this end, you will typically need a rather complex policy (if you want, you might think about what additional policy instrument could be used to achieve the first-best outcome in the market power case). This is a first-best approach. \r\n2. Or, you can accept some welfare losses and make do with the insufficient policy instruments that you have. You still can do some good, but the scope is more limited. This is a second-best approach.', '', 'Do you remember our discussion of firm behaviour from the last chapter? There, we have assumed that our firms behave competitively, that is, they take prices as given and do not try to manipulate markets to their advantage.\r\n{.lead}\r\n\r\n![Competition](/media/markdownx/aa6ef6e3-bf73-475f-9057-196f240d8f59.png)\r\n\r\nUnfortunately, this is a rather optimistic view of most energy markets. In particular, for electricity we often have one (or a few) big suppliers that are able to influence prices. In this step, we will use this example to highlight a crucial difference in designing energy and environmental policies, whether you aim for a first-best or a second-best outcome.\r\n \r\nLet’s start with a first-best case. For this, take the equations that you have used in the last chapter to describe firm behaviour in the Output Abatement Choice Model (OACM) model:\r\n\r\n---\r\n\r\n(1)  $$\\max\\limits_{q_i,a_i\\geq0}\\enspace{p\\cdot q_i}-c_i(q_i,a_i)-t\\cdot e_i(q_i,a_i)$$\r\n\r\n(2)  $$p-\\frac{∂c_i (q_i,a_i )}{∂q_i} -t\\cdot \\frac{∂e_i (q_i ,a_i )}{∂q_i}=0$$\r\n\r\n(3)  $$-\\frac{∂c_i (q_i,a_i )}{∂a_i}-t\\cdot\\frac{∂e_i (q_i ,a_i )}{∂a_i}=0$$\r\n \r\n---\r\n\r\n**Equation (1)** represents each firm’s optimization problem and **equations (2)** and **(3)** are the necessary conditions for optimality resulting from this problem (excluding corner solutions).\r\n \r\nThese equations describe what a **firm** will do. However, how do you know whether this behaviour is good or bad from a **societal** perspective? In chapter 2, we have introduced the concept of **social welfare** to this end. In the OACM model with $$n$$ firms, social welfare can be written as\r\n\r\n---\r\n\r\n(4)  $$\\int_{0}^{\\sum\\limits_{i=1}^{n}{q_i} }{p(q)dq-\\sum\\limits_{i=1}^{n}{c_i(q_i,a_i)-D(\\sum\\limits_{i=1}^{n}{e_i(q_i,a_i)} )} }\r\n$$\r\n \r\n---\r\n\r\nThe first term, $$\\int_{0}^{\\sum\\limits_{i=1}^{n}{q_i} }{p(q)dq}$$, describes the consumer rent; that is, the benefit that consumer have from consuming electricity (the area below the demand curve). The second term, $$\\sum\\limits_{i=1}^{n}{c_i(q_i,a_i)}$$, equals the costs of producing electricity and the final term is the damage (measured by a damage function, $$D$$) caused by the sum of all emissions, $$\\sum\\limits_{i=1}^{n}{e_i(q_i,a_i)}$$.\r\n \r\nA benevolent dictator would maximise **equation (4)** with regard to output and abatement for all firms. Doing this for firm $$i$$ (that is, differentiating with respect to $$q_i, a_i$$ and setting the result equal to zero) leads to the following necessary conditions:\r\n\r\n---\r\n\r\n(5)  $$p-\\frac{∂c_i (q_i,a_i )}{∂q_i} -\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}\\cdot \\frac{∂e_i (q_i ,a_i )}{∂q_i} =0$$,\r\n\r\n(6)  $$-\\frac{∂c_i (q_i,a_i )}{∂a_i} -\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}\\cdot \\frac{∂e_i (q_i ,a_i )}{∂a_i} =0$$\r\n\r\n---\r\n\r\nWhere $$D’$$ is the derivative of the damage function with regard to emissions.\r\n \r\nIf you compare **(2)** and **(5)** as well as **(3)** and **(6)**, you see that these equations become equal, if you set $$t =\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$. That is, there is a specific value of the emission tax that induces firms to produce exactly the right amount with exactly the right level of care (abatement). In fact, this is what is usually called a **Pigouvian tax**, which is a tax that internalises the emission externality by making each firm pay the social costs of the next unit of emissions (ie, $$\\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$ ) for all of its emissions. Note that this value is the same for all firms.\r\n \r\nThis calculation has several remarkable implications. First, you have two decision variables (production quantity and abatement) for each firm (altogether $$2 n$$ variables) but a single policy instrument (a mandatory tax) suffices to set incentives so that each firm behaves in a socially optimal way. Second, it implies that all firms should pay the same tax for each unit of emissions, which is a pretty strong policy implication (in fact, all firms in all sectors of an economy that emit the same pollutant should pay the same tax).\r\n \r\nThese are rather strong results for a comparatively simple model. Furthermore, they nicely highlight what constitutes a **first-best solution**: you can achieve the best possible outcome, social welfare is maximized. In fact, by implementing a policy, you can align the interests of all firms in the economy with societal objectives. If the tax is chosen correctly (ie, $$t = \\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$ ), the firms voluntarily do what is best for the society.\r\n \r\nThis holds in the benign situation where firms have no market power. Let us for a moment assume that this is not the case. Instead, assume that we only have a single firm, that is, a monopolist. What would this firm do?\r\n \r\nA monopolist would maximize his profit taking into account the willingness of consumers to consume at different prices. Thus, we would integrate the inverse demand function, $$p(q)$$, which describes the price consumers are willing to pay for a given amount, $$q$$, into the monopolist’s decision problem (we drop the indices now, as there is only a single firm):\r\n \r\n---\r\n\r\n(7)  $$\\max\\limits_{q,a\\geq0}\\enspace{p(q)\\cdot q - c(q,a)-t\\cdot e(q,a)}$$\r\n\r\n(8)  $$\\frac{∂p(q)}{∂q}q+p(q)-\\frac{∂c(q,a)}{∂q} -t\\cdot \\frac{∂e(q ,a)}{∂q} =0$$\r\n\r\n(9)  $$-\\frac{∂c(q,a)}{∂a} -t\\cdot\\frac{∂e(q,a)}{∂a} =0$$\r\n\r\n---\r\n \r\nAgain, you have described the maximisation problem in **equation (7)**, and then you derived the necessary conditions from it. The term $$\\frac{∂p(q)}{∂q}$$ denotes the derivative of the inverse demand function.\r\n\r\nComparing **(2)** and **(8)** as well as **(3)** and **(9)** shows that there is no value of the tax, $$t$$, that makes these equations identical. You can either choose to have the right amount of output (ie, make **(2)** and **(8)** identical) or the right amount of abatement (ie, make (3) and (9) identical); achieving both simultaneously is impossible.\r\n \r\nThis is typical for a **second-best solution**: you cannot achieve the best possible outcome but have to choose among less desirable ones. The reason is that the monopolist already produces too little to keep prices up. Thus, taxing the monopolist with the Pigouvian tax, $$t = \\frac{∂D (q_i,a_i )}{∂e_i (q_i ,a_i )}$$, leads to a too strong drop in output. But a lower tax leads to too little abatement effort by the monopolist. Both of these outcomes reduce social welfare.\r\n \r\nSo, you have to compromise: setting a tax that is somewhat lower than the Pigouvian tax will usually be the best that you can do.\r\n \r\nThis is a typical situation in most **real world problems**. We are faced with more problems (market power and emissions, in your example) that we can cope with in terms of policy instruments (you only have a single instrument here). Therefore, we have to make a compromise and accept some welfare losses. It is still possible to increase welfare by introducing a tax but not up to the theoretical benchmark of the first-best solution.\r\n \r\nOf course, this is a rather formal argument. What you should take out here is that there are two approaches to environmental and energy policy:\r\n\r\n<br>\r\n\r\n1. You can try to achieve the best possible outcome. But to this end, you will typically need a rather complex policy (if you want, you might think about what additional policy instrument could be used to achieve the first-best outcome in the market power case). This is a first-best approach. \r\n2. Or, you can accept some welfare losses and make do with the insufficient policy instruments that you have. You still can do some good, but the scope is more limited. This is a second-best approach.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 5, 'published', False, None, None, None, None, 228), (1294, datetime.datetime(2022, 5, 5, 19, 18, 5, 725707, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 40, 7, 411265, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 40, 7, 357921, tzinfo=datetime.timezone.utc), False, 'Exercise: Steering firms – what a difference a monopoly makes', None, 'Exercise: Steering firms – what a difference a monopoly makes', None, '', None, None, None, 'Try this exercise about steering firms and what a difference a monopoly makes.', None, 'Try this exercise about steering firms and what a difference a monopoly makes.', None, '', 'exercise-steering-firms-what-a-difference-a-monopoly-makes', 'Up til now, your firms have behaved well: they competed nicely against each other, even if one firm became dominant, it did not abuse its power.\r\n{.lead}\r\n\r\nUnfortunately, this is a somewhat optimistic view. In reality, firms can have market power. In fact, in many countries, market power is ubiquitous in energy markets.\r\n \r\nLet us see how this alters your results. To this end, we revisit the setting of the previous model but make two fundamental changes: we assume that the firm using a coal-fired power plant is big and tends to abuse its power, that is, it tries to manipulate the market price to its advantage. All other firms behave competitively. Second, we take out nuclear power, as we only want to have one big firm to keep things simple (and nuclear power stations are typically as large as (or even larger than) coal-fired ones).\r\n \r\n**Try to manage this system**. Watch out for differences to the previous model.\r\n\r\n**Note: If you want to keep a certain result for later use we suggest that you make a screenshot (Command-Shift-3 for Mac or CTRL+PrtScn for Windows) and download it.**\r\n\r\n<br>\r\n\r\n##Exercise\r\n\r\n###[Steering firms: what a difference a monopoly makes](https://nmc.unibas.ch/online-courses/exploring/2017/tm7/index.html){:target=“_blank”}', '', 'Up til now, your firms have behaved well: they competed nicely against each other, even if one firm became dominant, it did not abuse its power.\r\n{.lead}\r\n\r\nUnfortunately, this is a somewhat optimistic view. In reality, firms can have market power. In fact, in many countries, market power is ubiquitous in energy markets.\r\n \r\nLet us see how this alters your results. To this end, we revisit the setting of the previous model but make two fundamental changes: we assume that the firm using a coal-fired power plant is big and tends to abuse its power, that is, it tries to manipulate the market price to its advantage. All other firms behave competitively. Second, we take out nuclear power, as we only want to have one big firm to keep things simple (and nuclear power stations are typically as large as (or even larger than) coal-fired ones).\r\n \r\n**Try to manage this system**. Watch out for differences to the previous model.\r\n\r\n**Note: If you want to keep a certain result for later use we suggest that you make a screenshot (Command-Shift-3 for Mac or CTRL+PrtScn for Windows) and download it.**\r\n\r\n<br>\r\n\r\n##Exercise\r\n\r\n###[Steering firms: what a difference a monopoly makes](https://nmc.unibas.ch/online-courses/exploring/2017/tm7/index.html){:target=“_blank”}', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 6, 'published', False, None, None, None, None, 228), (1295, datetime.datetime(2022, 5, 5, 19, 18, 15, 137309, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 41, 38, 347012, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 41, 38, 298827, tzinfo=datetime.timezone.utc), False, 'Reflection: Same prices different outcome', None, 'Reflection: Same prices different outcome', None, '', None, None, None, 'Reflect on the topic of same prices, different outcome.', None, 'Reflect on the topic of same prices, different outcome.', None, '', 'reflection-same-prices-different-outcome', 'In the previous model exercise, you have experienced your first market distortion by a dominant firm.\r\n{.lead}\r\n\r\n**Could you observe any change** in how your choice of CO<sub>2</sub> taxes and renewable subsidies impacted the market results? Did the coal firm deter your policies?\r\n\r\nWe suggest you make a note of your observations.', '', 'In the previous model exercise, you have experienced your first market distortion by a dominant firm.\r\n{.lead}\r\n\r\n**Could you observe any change** in how your choice of CO<sub>2</sub> taxes and renewable subsidies impacted the market results? Did the coal firm deter your policies?\r\n\r\nWe suggest you make a note of your observations.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 7, 'published', True, 'Please share your thoughts and observations in the [comments](#comments) section below.', None, 'Please share your thoughts and observations in the [comments](#comments) section below.', None, 228), (1296, datetime.datetime(2022, 5, 5, 19, 18, 25, 989152, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 42, 41, 171217, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 42, 41, 90417, tzinfo=datetime.timezone.utc), False, 'Monopoly model: the mathematics I', None, 'Monopoly model: the mathematics I', None, '', None, None, None, 'In this article, Frank Krysiak explains the mathematics that underlie the monopoly model.', None, 'In this article, Frank Krysiak explains the mathematics that underlie the monopoly model.', None, '', 'monopoly-model-the-mathematics-i', 'Let’s examine the model in somewhat more detail. In this model, we assume that one firm has market power (the coal-based producer), whereas the other firms behave competitively.\r\n{.lead}\r\n\r\n![Mathematical equatations](/media/markdownx/f59d214e-f674-4a2b-a529-21d6a8cd8572.png)\r\n\r\nThey form a so-called **competitive fringe**. The monopolist takes the behaviour of all other actors in this model into account when making his decisions. To model this, we do the following in the underlying model.\r\n\r\n![Nuclear](/media/markdownx/ed034a9f-5726-456f-9458-6c0ab018dc94.png)\r\n \r\nFirst (for simplicity), we take out nuclear power as an option (we only want to have a single actor with market power and nuclear power stations are usually at least as large as coal-fired power stations).\r\n \r\nSecond, we leave all parts of the model as they have been in the preceding models, but do not solve the optimization problem of the coal-fired power plant yet. Rather, we calculate the production of the competitive fringe as: $$Q^{fringe} = \\sum\\limits_{i=PV,Wind,Coal,Gas}{q_i}$$\r\n\r\nDemand is again given by $$d=\\bar{Q} -η \\cdot p$$. \r\n\r\nRecall that $$\\bar{Q}$$ is the maximum demand when $$p=0$$.\r\n \r\nThe market clearing conditions is now\r\n\r\n---\r\n\r\n(1)   $$d=Q^{fringe}+q_{coal}$$\r\n\r\n---\r\n \r\nThis condition implies that production of the competitive fringe plus production of the non-competitive coal-fired power plant has to equal demand. Note that $$Q^{fringe}$$, that is, the total production of the competitive fringe is already fully specified as a function of the market clearing price, $$p$$, and the policy variables.\r\n \r\nThe coal-fired power plant wants to maximise its profit taking into account all this:\r\n\r\n---\r\n$$\\max \\limits_{q_{coal},a_{coal}\\geq 0}\\enspace \u2061p \\cdot q_{coal} - c_{coal} (q_{coal},a_{coal} ) - t \\cdot e_{coal} (q_{coal} ,a_{coal} )$$\r\n \r\n---\r\n\r\nThe optimization model is then solved numerically with regard to $$p_{coal}, a_{coal}$$, and $$p$$ under the constraint given by **equation (1)**. This yields the market outcome that is most desirable for the non-competitive producer, taking into account the behaviour of all other actors.', '', 'Let’s examine the model in somewhat more detail. In this model, we assume that one firm has market power (the coal-based producer), whereas the other firms behave competitively.\r\n{.lead}\r\n\r\n![Mathematical equatations](/media/markdownx/f59d214e-f674-4a2b-a529-21d6a8cd8572.png)\r\n\r\nThey form a so-called **competitive fringe**. The monopolist takes the behaviour of all other actors in this model into account when making his decisions. To model this, we do the following in the underlying model.\r\n\r\n![Nuclear](/media/markdownx/ed034a9f-5726-456f-9458-6c0ab018dc94.png)\r\n \r\nFirst (for simplicity), we take out nuclear power as an option (we only want to have a single actor with market power and nuclear power stations are usually at least as large as coal-fired power stations).\r\n \r\nSecond, we leave all parts of the model as they have been in the preceding models, but do not solve the optimization problem of the coal-fired power plant yet. Rather, we calculate the production of the competitive fringe as: $$Q^{fringe} = \\sum\\limits_{i=PV,Wind,Coal,Gas}{q_i}$$\r\n\r\nDemand is again given by $$d=\\bar{Q} -η \\cdot p$$. \r\n\r\nRecall that $$\\bar{Q}$$ is the maximum demand when $$p=0$$.\r\n \r\nThe market clearing conditions is now\r\n\r\n---\r\n\r\n(1)   $$d=Q^{fringe}+q_{coal}$$\r\n\r\n---\r\n \r\nThis condition implies that production of the competitive fringe plus production of the non-competitive coal-fired power plant has to equal demand. Note that $$Q^{fringe}$$, that is, the total production of the competitive fringe is already fully specified as a function of the market clearing price, $$p$$, and the policy variables.\r\n \r\nThe coal-fired power plant wants to maximise its profit taking into account all this:\r\n\r\n---\r\n$$\\max \\limits_{q_{coal},a_{coal}\\geq 0}\\enspace \u2061p \\cdot q_{coal} - c_{coal} (q_{coal},a_{coal} ) - t \\cdot e_{coal} (q_{coal} ,a_{coal} )$$\r\n \r\n---\r\n\r\nThe optimization model is then solved numerically with regard to $$p_{coal}, a_{coal}$$, and $$p$$ under the constraint given by **equation (1)**. This yields the market outcome that is most desirable for the non-competitive producer, taking into account the behaviour of all other actors.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 8, 'published', False, None, None, None, None, 228), (1297, datetime.datetime(2022, 5, 5, 19, 18, 48, 778762, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 43, 33, 981537, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 43, 33, 912419, tzinfo=datetime.timezone.utc), False, 'Monopoly model: the mathematics II', None, 'Monopoly model: the mathematics II', None, '', None, None, None, 'In this article, Hannes Weigt recaps the optimization-equilibrium debate using a monopoly market as an example.', None, 'In this article, Hannes Weigt recaps the optimization-equilibrium debate using a monopoly market as an example.', None, '', 'monopoly-model-the-mathematics-ii', "Now that you have seen your first monopoly model, let's use the setting of our perfect competition example to analyse how such a model can be designed as an optimization model and as an equilibrium model and learn a bit on the economics of monopolies on the way.\r\n{.lead}\r\n \r\n![Mathematical equatations](/media/markdownx/3c28be7c-90bc-4a2b-a9c3-3c25996fc465.png)\r\n\r\nThe setup is the same with one change: we now assume monopolistic competition.\r\n \r\nSo instead of many firms, $$i$$, we just have one single firm. This firm does what every firm is doing, it maximises its profit.\r\n\r\n---\r\n\r\n(1)   $$\\max \\limits_{q\\geq 0}\u2061 \\enspace p(q)q-c(q)$$\r\n \r\n---\r\n\r\nBut, given that it is the sole supplier on the market, the firm knows that its output decision will have an impact on the market price. That is why, contrary to a perfectly competitive market, the income side is not only price times quantity, $$pq$$, but the price, $$p$$, is now a function of quantity, $$q$$.\r\n \r\nNow, how does the firm know how $$p$$ and $$q$$ are related?\r\n\r\nRecall the benefit function $$B(d)$$ we used in the perfectly competitive market to model the consumer behaviour. The first order derivative of this function ($$\\frac{∂B}{∂d}$$) tells us exactly this: how does the willingness of to pay for the product change with a marginal change in consumption $$(d)$$. In other words, you could rewrite the benefit-demand relation as a price-demand relation:\r\n\r\n$$\\frac{∂B}{∂d}=p$$\r\n\r\nFor example the demand-price relation we used in the last model exercises was given by:\r\n\r\n$$d=\\bar{Q} -η \\cdot p$$\r\n\r\nor, rearranging the equation,\r\n\r\n$$p=\\frac{d-\\bar{Q}}{\\eta }$$ to be closer to our $$p(d)$$ formulation.\r\n\r\nAs a last step, you now need to consider that the monopoly is the only supplier in this market. Thus, the normal demand balance is now simply $$q = d$$ making $$p(d) = p(q)$$. Therefore equation (1) is all you need for a monopoly optimization model.\r\n \r\nAgain, you will need to derive the first order conditions of the model with respect to the choice variable of the monopoly, $$(q)$$, and set it equal to zero:\r\n\r\n---\r\n \r\n(2)   $$p(q)+\\frac{∂p(q)}{∂q}q-\\frac{∂c(q)}{∂q}=0$$\r\n\r\n---\r\n \r\nNote that the first term in the objective function, $$p(q)q$$, requires you to use the product rule when making the derivation. This is the normal first-order condition of a monopoly.\r\n \r\nLet’s switch to the equilibrium formulation. Similar to the perfect competitive version, we have three elements: the monopoly maximising its profit, consumers maximising their benefit, and a market that brings the two sides together. Thus, we actually only need to change the firm block and can keep the other elements as before.\r\n \r\nConsumers are still described by their zero-profit logic:\r\n \r\n---\r\n\r\n(3)   $$p\\geq \\frac{∂B}{∂d} \\bot d\\geq 0$$\r\n\r\n---\r\n \r\nAnd in the market clearing we just need to replace the output of all firms with the single output of our monopoly:\r\n\r\n---\r\n \r\n(4)   $$q\\geq d \\bot p \\geq 0$$\r\n\r\n---\r\n \r\nThe zero-profit condition for the monopoly is a bit more tricky. You can either derive this logic by formulating the maximisation problem for the monopoly and make the first order derivation and implement this as the zero-profit condition; so basically what we did above for the optimization model. Or, you know the economic equilibrium condition for the behaviour of a monopoly: marginal revenue equals marginal costs.\r\n \r\nIn a perfectly competitive world, a firm simply sells its output on the market assuming that its own decision has no impact on the price. Thus, the marginal revenue a competitive firm can obtain is equal to the market price. Consequently the equilibrium condition was: market price equals marginal costs.\r\n \r\nBut a monopoly knows that its own output decision has an impact on the price. And since it is the only one selling this also has a feedback effect on the total sale revenue. Increasing the output by one unit increases the income by the market price, $$p$$, but as the price declines with higher demand (respective output by the monopolist) the revenue on the total output decreases due to the price reduction. This can be formalised as:\r\n\r\n---\r\n \r\n(5)   $$\\frac{∂c(q)}{∂q}\\geq p+\\frac{∂p(q)}{∂q}q \\bot q \\geq 0$$\r\n\r\n---\r\n \r\nThe left hand side is again the marginal costs, the right hand side is the marginal revenue. A monopoly will produce $$(q > 0)$$ up to the point where its marginal cost level is equal to the additional revenue is can obtain ($$\\frac{∂c(q)}{∂q}= p+\\frac{∂p(q)}{∂q}q$$) defined by the additional income for selling one more unit $$(p)$$ and the reduction in total income on all sold units $$(\\frac{∂p(q)}{∂q}q)$$. Note that $$\\frac{∂p(q)}{∂q}$$ is usually negative as the price-demand relation is downward sloping (with a higher demand prices need to decrease and vice versa).\r\n \r\n\r\nIn other words, the optimization and equilibrium model are again providing the same result: a monopoly will produce up to the point where its profit is maximised and this point is defined where the additional revenue it can obtain is equal to the cost it has for this additional output.\r\n\r\n![Monopolistic market equilibrium](/media/markdownx/021bc21b-8ac2-4c7b-af37-41445aa1af14.png)\r\n\r\n\r\nThis results in a significant shift between consumer and producer rent, a lower $$d$$ and level at higher market prices, and a total loss in welfare.", '', "Now that you have seen your first monopoly model, let's use the setting of our perfect competition example to analyse how such a model can be designed as an optimization model and as an equilibrium model and learn a bit on the economics of monopolies on the way.\r\n{.lead}\r\n \r\n![Mathematical equatations](/media/markdownx/3c28be7c-90bc-4a2b-a9c3-3c25996fc465.png)\r\n\r\nThe setup is the same with one change: we now assume monopolistic competition.\r\n \r\nSo instead of many firms, $$i$$, we just have one single firm. This firm does what every firm is doing, it maximises its profit.\r\n\r\n---\r\n\r\n(1)   $$\\max \\limits_{q\\geq 0}\u2061 \\enspace p(q)q-c(q)$$\r\n \r\n---\r\n\r\nBut, given that it is the sole supplier on the market, the firm knows that its output decision will have an impact on the market price. That is why, contrary to a perfectly competitive market, the income side is not only price times quantity, $$pq$$, but the price, $$p$$, is now a function of quantity, $$q$$.\r\n \r\nNow, how does the firm know how $$p$$ and $$q$$ are related?\r\n\r\nRecall the benefit function $$B(d)$$ we used in the perfectly competitive market to model the consumer behaviour. The first order derivative of this function ($$\\frac{∂B}{∂d}$$) tells us exactly this: how does the willingness of to pay for the product change with a marginal change in consumption $$(d)$$. In other words, you could rewrite the benefit-demand relation as a price-demand relation:\r\n\r\n$$\\frac{∂B}{∂d}=p$$\r\n\r\nFor example the demand-price relation we used in the last model exercises was given by:\r\n\r\n$$d=\\bar{Q} -η \\cdot p$$\r\n\r\nor, rearranging the equation,\r\n\r\n$$p=\\frac{d-\\bar{Q}}{\\eta }$$ to be closer to our $$p(d)$$ formulation.\r\n\r\nAs a last step, you now need to consider that the monopoly is the only supplier in this market. Thus, the normal demand balance is now simply $$q = d$$ making $$p(d) = p(q)$$. Therefore equation (1) is all you need for a monopoly optimization model.\r\n \r\nAgain, you will need to derive the first order conditions of the model with respect to the choice variable of the monopoly, $$(q)$$, and set it equal to zero:\r\n\r\n---\r\n \r\n(2)   $$p(q)+\\frac{∂p(q)}{∂q}q-\\frac{∂c(q)}{∂q}=0$$\r\n\r\n---\r\n \r\nNote that the first term in the objective function, $$p(q)q$$, requires you to use the product rule when making the derivation. This is the normal first-order condition of a monopoly.\r\n \r\nLet’s switch to the equilibrium formulation. Similar to the perfect competitive version, we have three elements: the monopoly maximising its profit, consumers maximising their benefit, and a market that brings the two sides together. Thus, we actually only need to change the firm block and can keep the other elements as before.\r\n \r\nConsumers are still described by their zero-profit logic:\r\n \r\n---\r\n\r\n(3)   $$p\\geq \\frac{∂B}{∂d} \\bot d\\geq 0$$\r\n\r\n---\r\n \r\nAnd in the market clearing we just need to replace the output of all firms with the single output of our monopoly:\r\n\r\n---\r\n \r\n(4)   $$q\\geq d \\bot p \\geq 0$$\r\n\r\n---\r\n \r\nThe zero-profit condition for the monopoly is a bit more tricky. You can either derive this logic by formulating the maximisation problem for the monopoly and make the first order derivation and implement this as the zero-profit condition; so basically what we did above for the optimization model. Or, you know the economic equilibrium condition for the behaviour of a monopoly: marginal revenue equals marginal costs.\r\n \r\nIn a perfectly competitive world, a firm simply sells its output on the market assuming that its own decision has no impact on the price. Thus, the marginal revenue a competitive firm can obtain is equal to the market price. Consequently the equilibrium condition was: market price equals marginal costs.\r\n \r\nBut a monopoly knows that its own output decision has an impact on the price. And since it is the only one selling this also has a feedback effect on the total sale revenue. Increasing the output by one unit increases the income by the market price, $$p$$, but as the price declines with higher demand (respective output by the monopolist) the revenue on the total output decreases due to the price reduction. This can be formalised as:\r\n\r\n---\r\n \r\n(5)   $$\\frac{∂c(q)}{∂q}\\geq p+\\frac{∂p(q)}{∂q}q \\bot q \\geq 0$$\r\n\r\n---\r\n \r\nThe left hand side is again the marginal costs, the right hand side is the marginal revenue. A monopoly will produce $$(q > 0)$$ up to the point where its marginal cost level is equal to the additional revenue is can obtain ($$\\frac{∂c(q)}{∂q}= p+\\frac{∂p(q)}{∂q}q$$) defined by the additional income for selling one more unit $$(p)$$ and the reduction in total income on all sold units $$(\\frac{∂p(q)}{∂q}q)$$. Note that $$\\frac{∂p(q)}{∂q}$$ is usually negative as the price-demand relation is downward sloping (with a higher demand prices need to decrease and vice versa).\r\n \r\n\r\nIn other words, the optimization and equilibrium model are again providing the same result: a monopoly will produce up to the point where its profit is maximised and this point is defined where the additional revenue it can obtain is equal to the cost it has for this additional output.\r\n\r\n![Monopolistic market equilibrium](/media/markdownx/021bc21b-8ac2-4c7b-af37-41445aa1af14.png)\r\n\r\n\r\nThis results in a significant shift between consumer and producer rent, a lower $$d$$ and level at higher market prices, and a total loss in welfare.", '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 9, 'published', False, None, None, None, None, 228), (1298, datetime.datetime(2022, 5, 5, 19, 19, 1, 635533, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 44, 28, 318376, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 44, 28, 264783, tzinfo=datetime.timezone.utc), False, 'From one to many', None, 'From one to many', None, '', None, None, None, 'Watch Hannes Weigt explaining the basic idea of oligopolies and how they fit between perfect competition and monopolies.', None, 'Watch Hannes Weigt explaining the basic idea of oligopolies and how they fit between perfect competition and monopolies.', None, '', 'from-one-to-many', 'Now that we have introduced monopolies to our modelling world we can go one step further by introducing oligopolies.\r\n{.lead}\r\n\r\n![embed](https://vimeo.com/734337386/20fe4afa88)\r\n \r\nFor many markets perfect competition is more of a theoretic benchmark. But the same often also holds for monopolistic competition. While there are markets dominated by one large company many governments aim to prevent a pure monopoly market. Often real world markets are characterised by what economists term oligopolistic competition: a few large companies dominating the market.\r\n \r\nThe basic concept of oligopoly models is that the firms know that they have an influence on the price and take this into account when maximising their profits. However, compared to a monopoly each firm in an oligopoly only has partial influence on market prices. Consequently, equilibrium models are a preferred approach to model oligopolistic markets.\r\n \r\nThere are many different economic oligopoly concepts. Many of them follow the structure that with more firms the results tend towards a more competitive market behaviour and vice versa. Deriving the perfectly competitive and monopoly benchmark therefore provides valuable benchmark conditions for oligopoly models.', '', 'Now that we have introduced monopolies to our modelling world we can go one step further by introducing oligopolies.\r\n{.lead}\r\n\r\n![embed](https://vimeo.com/734337386/20fe4afa88)\r\n \r\nFor many markets perfect competition is more of a theoretic benchmark. But the same often also holds for monopolistic competition. While there are markets dominated by one large company many governments aim to prevent a pure monopoly market. Often real world markets are characterised by what economists term oligopolistic competition: a few large companies dominating the market.\r\n \r\nThe basic concept of oligopoly models is that the firms know that they have an influence on the price and take this into account when maximising their profits. However, compared to a monopoly each firm in an oligopoly only has partial influence on market prices. Consequently, equilibrium models are a preferred approach to model oligopolistic markets.\r\n \r\nThere are many different economic oligopoly concepts. Many of them follow the structure that with more firms the results tend towards a more competitive market behaviour and vice versa. Deriving the perfectly competitive and monopoly benchmark therefore provides valuable benchmark conditions for oligopoly models.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TV', '', 10, 'published', False, None, None, None, None, 228), (1299, datetime.datetime(2022, 5, 5, 19, 19, 11, 699629, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 45, 25, 688906, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 45, 25, 637764, tzinfo=datetime.timezone.utc), False, 'Exercise: Steering firms – from one to many', None, 'Exercise: Steering firms – from one to many', None, '', None, None, None, 'Try this exercise about steering firms: from one to many.', None, 'Try this exercise about steering firms: from one to many.', None, '', 'exercise-steering-firms-from-one-to-many', 'We are now indirectly revisiting the last two model exercises. This time we ask you to adjust the number of firms in our little electricity market.\r\n{.lead}\r\n \r\nAgain the coal firms are the dominant players in the market with all other firms behaving competitively. But this time, you are allowed to decide how many coal firms are active in the market and competing with each other. So you are free to design a monopoly market by reducing the number of firms to only one or move towards perfect competition by shifting the number up to the maximum.\r\n \r\nIn addition, you are tasked to decide about the CO<sub>2</sub> tax level. **Try to manage this system**. Watch out for differences your policy choice has with different levels of competition.\r\n\r\n**Note: If you want to keep a certain result for later use we suggest that you make a screenshot (Command-Shift-3 for Mac or CTRL+PrtScn for Windows) and download it.**\r\n\r\n\r\n<br>\r\n\r\n##Exercise\r\n\r\n###[Steering firms: from one to many](https://nmc.unibas.ch/online-courses/exploring/2017/tm8/index.html){:target=“_blank”}', '', 'We are now indirectly revisiting the last two model exercises. This time we ask you to adjust the number of firms in our little electricity market.\r\n{.lead}\r\n \r\nAgain the coal firms are the dominant players in the market with all other firms behaving competitively. But this time, you are allowed to decide how many coal firms are active in the market and competing with each other. So you are free to design a monopoly market by reducing the number of firms to only one or move towards perfect competition by shifting the number up to the maximum.\r\n \r\nIn addition, you are tasked to decide about the CO<sub>2</sub> tax level. **Try to manage this system**. Watch out for differences your policy choice has with different levels of competition.\r\n\r\n**Note: If you want to keep a certain result for later use we suggest that you make a screenshot (Command-Shift-3 for Mac or CTRL+PrtScn for Windows) and download it.**\r\n\r\n\r\n<br>\r\n\r\n##Exercise\r\n\r\n###[Steering firms: from one to many](https://nmc.unibas.ch/online-courses/exploring/2017/tm8/index.html){:target=“_blank”}', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 11, 'published', False, None, None, None, None, 228), (1300, datetime.datetime(2022, 5, 5, 19, 19, 21, 831522, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 47, 21, 307878, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 47, 21, 254507, tzinfo=datetime.timezone.utc), False, 'Reflection: Compare the results – same policy, different outcome?', None, 'Reflection: Compare the results – same policy, different outcome?', None, '', None, None, None, 'Reflect and compare the results – same policy, different outcome?', None, 'Reflect and compare the results – same policy, different outcome?', None, '', 'reflection-compare-the-results-same-policy-different-outcome', 'In the previous model exercise, you were tasked to analyse how the number of firms, and thereby the level of competition in the market, impacts the effect of your environmental policy.\r\n{.lead}\r\n\r\nDo the number of firms have an impact on the effect of your policy choice? And if so, what does this mean for policy design in the real world?\r\n\r\nWe suggest you make a note of your observations.', '', 'In the previous model exercise, you were tasked to analyse how the number of firms, and thereby the level of competition in the market, impacts the effect of your environmental policy.\r\n{.lead}\r\n\r\nDo the number of firms have an impact on the effect of your policy choice? And if so, what does this mean for policy design in the real world?\r\n\r\nWe suggest you make a note of your observations.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 12, 'published', True, 'Please share your thoughts and observations in the [comments](#comments) section below.', None, 'Please share your thoughts and observations in the [comments](#comments) section below.', None, 228), (1301, datetime.datetime(2022, 5, 5, 19, 19, 30, 699198, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 48, 15, 263116, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 48, 15, 210563, tzinfo=datetime.timezone.utc), False, 'Oligopoly model: the mathematics', None, 'Oligopoly model: the mathematics', None, '', None, None, None, 'Through this article, Hannes Weigt explains the mathematical formulation of an oligopoly model.', None, 'Through this article, Hannes Weigt explains the mathematical formulation of an oligopoly model.', None, '', 'oligopoly-model-the-mathematics', 'Let’s examine how the oligopoly model is designed. It closely follows the monopoly model with respect to its general setup: we assume that coal-based producers have market power and the other firms behave competitively.\r\n{.lead}\r\n\r\n![Mathematical equatations](/media/markdownx/31e795c8-697e-4732-a662-673eee3b3c4e.png)\r\n\r\n\r\nHowever, as we can have more than one coal-producer the market clearing is now given by:\r\n\r\n\r\n \r\n$$d=Q^{fringe}+\\sum\\limits_{i=1}^{N}{q_i^{coal}}$$\r\n\r\n\r\nYou could choose how many ($$N$$) coal firms, $$i$$, are active in the market.\r\n \r\nThe remainder of the market interaction between supply and demand is unchanged with the downward sloping demand-price relation again defined as:\r\n\r\n\r\n$$d=\\bar{Q}-\\eta \\cdot p$$\r\n\r\nUsing those two components one can again derive the price relation independent of the coal firm’s output choice. Contrary to the monopoly case the choice of any single firm, $$i$$, is only a part of the total supply on the market. All other firms (termed $$–i$$ or ‘not i’) are also supplying the market and have an impact on the resulting market price.\r\n \r\nThe coal producers take this relation into account when maximising their profits. For each firm, $$i$$, the respective profit function is given by:\r\n \r\n\r\n(1)   $$\\max \\limits_{q_i^{coal},a_i^{coal}≥0} \\enspace p(q_i^{coal},q_{-i}^{coal})\\cdot q_i^{coal} - c_{coal} (q_i^{coal},a_i^{coal} ) - t\\cdot e_{coal} (q_i^{coal} ,a_i^{coal} )$$\r\n\r\n \r\nThe model follows the **Cournot-competition logic**: firms choose their output and simultaneously take the choice of the other firms as given. In other words, each firm $$i$$ optimises its own production decision ($$q_i^{coal}$$) while assuming all other firms make their own respective optimal output decision ($$q_{-i}^{coal}$$).\r\n \r\nFor the model formulation used in the exercise we make one further simplifying assumption: all firms are symmetric. But the formulation also holds if different firm characteristics are assumed (ie, different cost structures $$c_i^{coal}$$ for the different oligopoly firms instead of the generic $$c_{coal}$$).\r\n \r\nThe model is then again solved numerically with regard to $$q_i^{coal},a_i^{coal}$$ and $$p$$ for the number of firms, $$N$$, you have chosen.', '', 'Let’s examine how the oligopoly model is designed. It closely follows the monopoly model with respect to its general setup: we assume that coal-based producers have market power and the other firms behave competitively.\r\n{.lead}\r\n\r\n![Mathematical equatations](/media/markdownx/31e795c8-697e-4732-a662-673eee3b3c4e.png)\r\n\r\n\r\nHowever, as we can have more than one coal-producer the market clearing is now given by:\r\n\r\n\r\n \r\n$$d=Q^{fringe}+\\sum\\limits_{i=1}^{N}{q_i^{coal}}$$\r\n\r\n\r\nYou could choose how many ($$N$$) coal firms, $$i$$, are active in the market.\r\n \r\nThe remainder of the market interaction between supply and demand is unchanged with the downward sloping demand-price relation again defined as:\r\n\r\n\r\n$$d=\\bar{Q}-\\eta \\cdot p$$\r\n\r\nUsing those two components one can again derive the price relation independent of the coal firm’s output choice. Contrary to the monopoly case the choice of any single firm, $$i$$, is only a part of the total supply on the market. All other firms (termed $$–i$$ or ‘not i’) are also supplying the market and have an impact on the resulting market price.\r\n \r\nThe coal producers take this relation into account when maximising their profits. For each firm, $$i$$, the respective profit function is given by:\r\n \r\n\r\n(1)   $$\\max \\limits_{q_i^{coal},a_i^{coal}≥0} \\enspace p(q_i^{coal},q_{-i}^{coal})\\cdot q_i^{coal} - c_{coal} (q_i^{coal},a_i^{coal} ) - t\\cdot e_{coal} (q_i^{coal} ,a_i^{coal} )$$\r\n\r\n \r\nThe model follows the **Cournot-competition logic**: firms choose their output and simultaneously take the choice of the other firms as given. In other words, each firm $$i$$ optimises its own production decision ($$q_i^{coal}$$) while assuming all other firms make their own respective optimal output decision ($$q_{-i}^{coal}$$).\r\n \r\nFor the model formulation used in the exercise we make one further simplifying assumption: all firms are symmetric. But the formulation also holds if different firm characteristics are assumed (ie, different cost structures $$c_i^{coal}$$ for the different oligopoly firms instead of the generic $$c_{coal}$$).\r\n \r\nThe model is then again solved numerically with regard to $$q_i^{coal},a_i^{coal}$$ and $$p$$ for the number of firms, $$N$$, you have chosen.', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 13, 'published', False, None, None, None, None, 228), (1302, datetime.datetime(2022, 5, 5, 19, 19, 39, 82144, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 49, 31, 941897, tzinfo=datetime.timezone.utc), datetime.datetime(2024, 2, 1, 13, 49, 31, 889519, tzinfo=datetime.timezone.utc), False, 'Wrap up: perfect to imperfect', None, 'Wrap up: perfect to imperfect', None, '', None, None, None, 'In this article, Frank Krysiak and Hannes Weigt sum up how to model real world complexities after leaving the first-best theoretic world.', None, 'In this article, Frank Krysiak and Hannes Weigt sum up how to model real world complexities after leaving the first-best theoretic world.', None, '', 'wrap-up-perfect-to-imperfect', 'This has been a tough chapter with some complex mathematics and economics. So let’s recap the most important take home messages for this chapter.\r\n{.lead}\r\n \r\nFirst, we have examined more detailed aspects of designing equilibrium models and their linkage with optimization models. Remember, many problems can be addressed with both model types, so you can use the one you are more comfortable with. As the basic design of equilibrium models aims to represent the underlying incentive structure of the different market actors, a solid understanding of economics is helpful when designing them and a good understanding of equilibrium modelling can help you to interpret your model results (also optimization models!).\r\n \r\nSecond, we moved from the first-best models of the previous chapters into the challenges of modelling real world market imperfection – the second-best approach. We have added monopolies and oligopolies to the modelling world and seen how changing the level of competitiveness can alter the results of policy choices. Often you will have to live with the trade-off between an increasing complexity of your policy design to overcome all caveats of the underlying market or accept some imperfections and inefficiencies while keeping the policies reasonable.\r\n \r\nThe different forms of competition (perfect, monopoly, and oligopoly) also provide you with a set of market designs to test the robustness of your policy ideas. If a policy works as intended under perfect competition but fails in other markets it may not be the best solution to go for. And the setup also provides you with a good roadmap for designing your more complex models: start with a simple perfect competitive model first and add the complexities of strategic competition afterwards. You will not only learn a lot about the economic aspects of your problem but also more likely get to know your model better this way.\r\n\r\n![Graph showing the four modeling phases: problem, model, solution and interpretation](/media/markdownx/6cbb14b1-23ae-4551-9fa8-2ad542edd214.png)\r\n\r\nWe now have finalised the toolkit on model designs and toolkits for this course. There are plenty of more modelling aspects and challenges left, but the concepts of optimization and equilibrium, system and market perspective, building blocks, first-best and second-best covered in the last three chapters should provide you with a solid backpack to climb larger modelling mountains.\r\n\r\nWe also extended on the model solving aspects by going into detail on optimization and equilibrium modelling and their relation. By doing so, we had a first look at how to interpret your model findings and what they mean from an economic perspective.\r\n \r\nWe are not done yet. We will extend on the model solution and interpretation aspects in the upcoming chapter and also provide some hands-on recommendations for your model coding and data handling. But most importantly, we will finally explore the possible future of our little example market. Will you make it a fossil one or a green one? And what will it cost you?', '', 'This has been a tough chapter with some complex mathematics and economics. So let’s recap the most important take home messages for this chapter.\r\n{.lead}\r\n \r\nFirst, we have examined more detailed aspects of designing equilibrium models and their linkage with optimization models. Remember, many problems can be addressed with both model types, so you can use the one you are more comfortable with. As the basic design of equilibrium models aims to represent the underlying incentive structure of the different market actors, a solid understanding of economics is helpful when designing them and a good understanding of equilibrium modelling can help you to interpret your model results (also optimization models!).\r\n \r\nSecond, we moved from the first-best models of the previous chapters into the challenges of modelling real world market imperfection – the second-best approach. We have added monopolies and oligopolies to the modelling world and seen how changing the level of competitiveness can alter the results of policy choices. Often you will have to live with the trade-off between an increasing complexity of your policy design to overcome all caveats of the underlying market or accept some imperfections and inefficiencies while keeping the policies reasonable.\r\n \r\nThe different forms of competition (perfect, monopoly, and oligopoly) also provide you with a set of market designs to test the robustness of your policy ideas. If a policy works as intended under perfect competition but fails in other markets it may not be the best solution to go for. And the setup also provides you with a good roadmap for designing your more complex models: start with a simple perfect competitive model first and add the complexities of strategic competition afterwards. You will not only learn a lot about the economic aspects of your problem but also more likely get to know your model better this way.\r\n\r\n![Graph showing the four modeling phases: problem, model, solution and interpretation](/media/markdownx/6cbb14b1-23ae-4551-9fa8-2ad542edd214.png)\r\n\r\nWe now have finalised the toolkit on model designs and toolkits for this course. There are plenty of more modelling aspects and challenges left, but the concepts of optimization and equilibrium, system and market perspective, building blocks, first-best and second-best covered in the last three chapters should provide you with a solid backpack to climb larger modelling mountains.\r\n\r\nWe also extended on the model solving aspects by going into detail on optimization and equilibrium modelling and their relation. By doing so, we had a first look at how to interpret your model findings and what they mean from an economic perspective.\r\n \r\nWe are not done yet. We will extend on the model solution and interpretation aspects in the upcoming chapter and also provide some hands-on recommendations for your model coding and data handling. But most importantly, we will finally explore the possible future of our little example market. Will you make it a fossil one or a green one? And what will it cost you?', '', '', '', '', '', None, None, None, None, '', '', '', '', 'TT', '', 14, 'published', False, None, None, None, None, 228)]])}, None) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1064) output = self.filter_expression.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_step_number(121) step_list = list(self.chapter.published_steps.all().order_by("order")) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(71) cache.set_many(to_be_set, cachalot_settings.CACHALOT_TIMEOUT) |
|||||
0,3661 | get | ('waffle:4.1.0e9e267545e7f919d987e2d016e67ed7e',) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/waffle/templatetags/waffle_tags.py in render(36) if self.condition(context.get('request', None), name): /usr/local/lib/python3.11/site-packages/waffle/__init__.py in flag_is_active(19) flag = get_waffle_flag_model().get(flag_name) /usr/local/lib/python3.11/site-packages/waffle/models.py in get(52) cached = cache.get(cache_key) |
|||||
0,4010 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', 'a439e62960789507f764777ff144e549bd185a13'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(320) if match: /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,4618 | get_many | (['76e323efd8711853e13c9f7cf976845908364eb2', '9c197a8f980b2696014db2c2de9547457e0371ac'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(314) match = condition.eval(context) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in eval(60) return func(context, self.first, self.second) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in <lambda>(103) "is not": infix(10, lambda context, x, y: x.eval(context) is not y.eval(context)), /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in eval(877) return self.value.resolve(context, ignore_failures=True) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_absolute_url(99) str(self.chapter.course.slug), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2881 | get_many | (['e3a5db5a670ad803efb866441f33de58309be2e2', 'fd9d74e2f59f427ba11b19f890ef4207c0f2496f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(314) match = condition.eval(context) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in eval(60) return func(context, self.first, self.second) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in <lambda>(103) "is not": infix(10, lambda context, x, y: x.eval(context) is not y.eval(context)), /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in eval(877) return self.value.resolve(context, ignore_failures=True) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_absolute_url(99) str(self.chapter.course.slug), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2518 | get_many | (['76e323efd8711853e13c9f7cf976845908364eb2', '9c197a8f980b2696014db2c2de9547457e0371ac'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(314) match = condition.eval(context) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in eval(60) return func(context, self.first, self.second) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in <lambda>(103) "is not": infix(10, lambda context, x, y: x.eval(context) is not y.eval(context)), /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in eval(877) return self.value.resolve(context, ignore_failures=True) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_absolute_url(99) str(self.chapter.course.slug), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2908 | get_many | (['e3a5db5a670ad803efb866441f33de58309be2e2', 'fd9d74e2f59f427ba11b19f890ef4207c0f2496f'],) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(314) match = condition.eval(context) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in eval(60) return func(context, self.first, self.second) /usr/local/lib/python3.11/site-packages/django/template/smartif.py in <lambda>(103) "is not": infix(10, lambda context, x, y: x.eval(context) is not y.eval(context)), /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in eval(877) return self.value.resolve(context, ignore_failures=True) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(715) obj = self.var.resolve(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in resolve(847) value = self._resolve_lookup(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in _resolve_lookup(914) current = current() /app/project/lms_tales/models.py in get_absolute_url(99) str(self.chapter.course.slug), /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
0,2670 | get | ('waffle:4.1.0e9e267545e7f919d987e2d016e67ed7e',) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/waffle/templatetags/waffle_tags.py in render(36) if self.condition(context.get('request', None), name): /usr/local/lib/python3.11/site-packages/waffle/__init__.py in flag_is_active(19) flag = get_waffle_flag_model().get(flag_name) /usr/local/lib/python3.11/site-packages/waffle/models.py in get(52) cached = cache.get(cache_key) |
|||||
1,9099 | set | ('view_cache_view_/de/exploring-possible-futures-44/second-best-worlds-228/perfect-competition-as-example-1290_anonymous', <TemplateResponse status_code=200, "text/html; charset=utf-8">, 600) | {} | <django_redis.cache.RedisCache object at 0x75247bdd6510> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) |
Cachalot
Database 'default'
Application | Model | Last invalidation |
---|---|---|
django_q | Failure | 2 Stunden, 22 Minuten |
reporting | Report | 2 Stunden, 22 Minuten |
django_q | Schedule | 2 Stunden, 38 Minuten |
lms_tales | CourseMetrics | 9 Stunden, 28 Minuten |
search | FulltextSearchModel | 11 Stunden, 28 Minuten |
lms_tales | HistoricalTalesChapter | 3 Tage, 23 Stunden |
lms_tales | TalesChapter | 3 Tage, 23 Stunden |
search | TrigramSearchModel | 3 Tage, 23 Stunden |
lms_tales | HistoricalTalesCourse | 3 Tage, 23 Stunden |
lms_tales | TalesCourse | 3 Tage, 23 Stunden |
lms_tales | HistoricalTalesStep | 3 Tage, 23 Stunden |
lms_tales | TalesStep | 3 Tage, 23 Stunden |
lms_tales | TalesCourseRun | 3 Tage, 23 Stunden |
startpage | SliderItem | 4 Tage, 18 Stunden |
startpage | CategoryCourse | 4 Tage, 18 Stunden |
tags | Category | 4 Tage, 18 Stunden |
tags | Tag | 4 Tage, 18 Stunden |
lms_static_texts | StaticText | 4 Tage, 18 Stunden |
lms_static_texts | HistoricalStaticText | 4 Tage, 18 Stunden |
lms_comments | Comment | 4 Tage, 18 Stunden |
lms_comments | Reply | 4 Tage, 18 Stunden |
lms_comments | Reaction | 4 Tage, 18 Stunden |
lms_comments | Flag | 4 Tage, 18 Stunden |
lms_tales | TalesStepFileNew | 4 Tage, 18 Stunden |
lms_tales | TalesStepFile | 4 Tage, 18 Stunden |
lms_tales | TalesCourseFile | 4 Tage, 18 Stunden |
lms_tales | TalesAuthor | 4 Tage, 18 Stunden |
lms_tales | TalesPartner | 4 Tage, 18 Stunden |
lms_tales | TalesGlossaryItem | 4 Tage, 18 Stunden |
lms_tales | TalesPath | 4 Tage, 18 Stunden |
lms_tales | TalesPathStep | 4 Tage, 18 Stunden |
lms_tales | TalesPortalPage | 4 Tage, 18 Stunden |
lms_tales | TalesPortalPageCourse | 4 Tage, 18 Stunden |
lms_tales | TalesCourseRunStep | 4 Tage, 18 Stunden |
lms_tales | ScheduledMessage | 4 Tage, 18 Stunden |
lms_tales | HistoricalTalesStepFile | 4 Tage, 18 Stunden |
lms_tales | HistoricalTalesPath | 4 Tage, 18 Stunden |
lms_base | GlossaryMixin | 4 Tage, 18 Stunden |
lms_base | GlossaryItemMixin | 4 Tage, 18 Stunden |
users | User | 4 Tage, 18 Stunden |
users | UserSettings | 4 Tage, 18 Stunden |
auth | Permission | 4 Tage, 18 Stunden |
auth | Group | 4 Tage, 18 Stunden |
contenttypes | ContentType | 4 Tage, 18 Stunden |
sessions | Session | 4 Tage, 18 Stunden |
sites | Site | 4 Tage, 18 Stunden |
flatpages | FlatPage | 4 Tage, 18 Stunden |
admin | LogEntry | 4 Tage, 18 Stunden |
redirects | Redirect | 4 Tage, 18 Stunden |
account | EmailAddress | 4 Tage, 18 Stunden |
account | EmailConfirmation | 4 Tage, 18 Stunden |
socialaccount | SocialApp | 4 Tage, 18 Stunden |
socialaccount | SocialAccount | 4 Tage, 18 Stunden |
socialaccount | SocialToken | 4 Tage, 18 Stunden |
waffle | Flag | 4 Tage, 18 Stunden |
waffle | Switch | 4 Tage, 18 Stunden |
waffle | Sample | 4 Tage, 18 Stunden |
tos | TermsOfService | 4 Tage, 18 Stunden |
tos | UserAgreement | 4 Tage, 18 Stunden |
impersonate | ImpersonationLog | 4 Tage, 18 Stunden |
django_q | OrmQ | 4 Tage, 18 Stunden |
notifications | Notification | 4 Tage, 18 Stunden |
Signale
Signal | Empfänger |
---|---|
class_prepared | StatusField.prepare_class, add_status_query_managers, add_timeframed_query_manager, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class |
connection_created | |
got_request_exception | _got_request_exception |
m2m_changed | flag_membership_changed, flag_membership_changed |
post_delete | HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, delete_search_index, delete_search_index |
post_init | ModelSignalRouter.post_init_receiver, MonitorField._save_initial, MonitorField._save_initial, MonitorField._save_initial, MonitorField._save_initial, ImageField.update_dimension_fields, MonitorField._save_initial, ImageField.update_dimension_fields, MonitorField._save_initial, MonitorField._save_initial, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, MonitorField._save_initial, MonitorField._save_initial, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, MonitorField._save_initial, MonitorField._save_initial, MonitorField._save_initial, delete_mt_init, delete_mt_init, delete_mt_init |
post_migrate | create_permissions, create_contenttypes, create_default_site, _invalidate_on_migration |
post_save | ModelSignalRouter.post_save_receiver, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, call_hook, create_user_settings, save_user_settings, update_search_index, update_search_index |
pre_delete | clear_site_cache |
pre_init | |
pre_migrate | inject_rename_contenttypes_operations |
pre_save | clear_site_cache |
request_finished | close_old_connections, close_caches, reset_urlconf |
request_started | reset_queries, close_old_connections |
setting_changed | reset_cache, reload_settings, clear_cache_handlers, update_installed_apps, update_connections_time_zone, clear_routers_cache, reset_template_engines, storages_changed, clear_serializers_cache, language_changed, localize_settings_changed, file_storage_changed, complex_setting_changed, root_urlconf_changed, static_storage_changed, static_finders_changed, auth_password_validators_changed, user_model_swapped, update_toolbar_config, reset_hashers, update_level_tags, clear_caches, FileSystemStorage._clear_cached_properties, StaticFilesStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties |