Comprehensive ECharts plugin suite for Apache Superset providing 15+ chart types including timeseries, pie, bar, scatter, radar, and more with advanced analytics features.
57
Quality
Pending
Does it follow best practices?
Impact
57%
1.05xAverage score across 10 eval scenarios
Build a utility module that helps determine the effective cache timeout for database queries in a BI application with hierarchical cache configuration. The system should follow Apache Superset's multi-level cache timeout resolution pattern.
Implement a cache timeout resolver that follows this hierarchy (from most specific to most general):
The resolver should return the first non-null timeout value found when traversing this hierarchy.
Create a function that determines the effective cache timeout:
def resolve_cache_timeout(
query_timeout: Optional[int] = None,
chart_timeout: Optional[int] = None,
dataset_timeout: Optional[int] = None,
database_timeout: Optional[int] = None,
system_default: int = 3600
) -> int:
"""
Resolve cache timeout using hierarchical configuration.
Returns the first non-None timeout from the hierarchy,
or system_default if all are None.
"""
passCreate a function that generates consistent cache keys from query parameters:
def generate_cache_key(
sql: str,
database_name: str,
schema: Optional[str] = None,
user_id: Optional[int] = None
) -> str:
"""
Generate a cache key hash from query parameters.
The key should deterministically represent the query context
and include user_id for user-specific caching.
"""
passCreate a helper class that combines both capabilities:
class CacheConfigHelper:
def __init__(self, system_default_timeout: int = 3600):
"""Initialize with system default timeout in seconds."""
pass
def get_effective_timeout(
self,
query_timeout: Optional[int] = None,
chart_timeout: Optional[int] = None,
dataset_timeout: Optional[int] = None,
database_timeout: Optional[int] = None
) -> int:
"""Get the effective timeout following the hierarchy."""
pass
def create_cache_key(
self,
sql: str,
database_name: str,
schema: Optional[str] = None,
user_id: Optional[int] = None
) -> str:
"""Generate cache key for the given query parameters."""
pass@generates
Provides cryptographic hash functions for cache key generation (Python standard library).
Install with Tessl CLI
npx tessl i tessl/npm-superset-ui--plugin-chart-echartsevals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10