ktmud commented on a change in pull request #10274:
URL: 
https://github.com/apache/incubator-superset/pull/10274#discussion_r454031704



##########
File path: superset/errors.py
##########
@@ -46,6 +47,23 @@ class SupersetErrorType(str, Enum):
     DATASOURCE_SECURITY_ACCESS_ERROR = "DATASOURCE_SECURITY_ACCESS_ERROR"
     MISSING_OWNERSHIP_ERROR = "MISSING_OWNERSHIP_ERROR"
 
+    # Other errors
+    BACKEND_TIMEOUT_ERROR = "BACKEND_TIMEOUT_ERROR"
+
+
+ERROR_TYPES_TO_ERROR_CODES_MAPPING = {
+    SupersetErrorType.BACKEND_TIMEOUT_ERROR: [
+        {
+            "code": 1000,
+            "message": _("Error 1000 - The datasource is too large to query."),
+        },
+        {
+            "code": 1001,
+            "message": _("Error 1001 - The database is under an unusual 
load."),
+        },
+    ]
+}

Review comment:
       It's also possible to remove such mapping altogether:
   
   ```python
   class SupersetError(IntEnum):
     BACKEND_TIMEOUT = 1001
   
   class SupersetException(Exception):
       code = None
       
       def __init__(self, message=None, description=None):
           if not self.code:
              raise RuntimeError('Must not raise SupersetException directly')
           error_name = SupersetError(self.code).name
           self.message = message or _(f'error.{error_name}.message')
           self.description = description or _(f'error.{error_name}.message')
   
   class SupersetTimeoutException(SupersetException):
       code = SupersetErrorEnum.BACKEND_TIMEOUT
   ```
   
   Then add the detailed message and explanation in i18n.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to