Skip to content

Commit 32cef44

Browse files
committed
Add datasource type exclusion from schema refresh
- Add SCHEMAS_REFRESH_EXCLUDED_TYPES setting with default 'results,python' - Add type-based exclusion check in refresh_schemas() - Prevents unnecessary errors for datasources without schema support
1 parent 772b160 commit 32cef44

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

redash/settings/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@
5151

5252
SCHEMAS_REFRESH_SCHEDULE = int(os.environ.get("REDASH_SCHEMAS_REFRESH_SCHEDULE", 30))
5353
SCHEMAS_REFRESH_TIMEOUT = int(os.environ.get("REDASH_SCHEMAS_REFRESH_TIMEOUT", 300))
54+
SCHEMAS_REFRESH_EXCLUDED_TYPES = set_from_string(
55+
os.environ.get("REDASH_SCHEMAS_REFRESH_EXCLUDED_TYPES", "results,python")
56+
)
5457

5558
AUTH_TYPE = os.environ.get("REDASH_AUTH_TYPE", "api_key")
5659
INVITATION_TOKEN_MAX_AGE = int(os.environ.get("REDASH_INVITATION_TOKEN_MAX_AGE", 60 * 60 * 24 * 7))

redash/tasks/queries/maintenance.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,8 @@ def refresh_schemas():
205205
)
206206
elif ds.id in blacklist:
207207
logger.info("task=refresh_schema state=skip ds_id=%s reason=blacklist", ds.id)
208+
elif ds.type in settings.SCHEMAS_REFRESH_EXCLUDED_TYPES:
209+
logger.info("task=refresh_schema state=skip ds_id=%s reason=type_excluded", ds.id)
208210
elif ds.org.is_disabled:
209211
logger.info("task=refresh_schema state=skip ds_id=%s reason=org_disabled", ds.id)
210212
else:

0 commit comments

Comments
 (0)