SaaS Errors.js error categorization.

Source error material

https://github.com/Datameer-Inc/europa/tree/dev/europa-ui/app/store/__generated__/events
https://github.com/Datameer-Inc/europa/blob/dev/europa-ui/app/store/__generated__/errors.js

Error translation for all defined (backend) errors

https://github.com/Datameer-Inc/europa/blob/7021dc921225d57baa1ca1721f7ef976d4e44abe/europa-ui/app/locales/en-US/errorFallbacks.js

Possibly User Manageable

AMBIGUOUS_COLUMN_REFERENCE = 'AmbiguousColumnReference';

  • Should state which column is ambiguous to direct the user.

BLEND_CONDITIONS_EMPTY = 'BlendConditionsEmpty';

  • Notify the user they have an incomplete blend. State any conditions that are NOT empty to assist user in identifying the node.

CIRCULAR_REFERENCE = 'CircularReference';

  • Identify the step in their flow that contains the circular reference to direct the user.

COLUMN_DOES_NOT_EXIST = 'ColumnDoesNotExist';

  • Name the missing column and direct to the step in question that uses the missing column

DATABASE_NOT_EXISTS_OR_NOT_AUTHORIZED = 'DatabaseNotExistsOrNotAuthorized';

  • Name the database that no longer exists and direct the user to contact their Snowflake administrator/DBA.

EMAIL_DOMAIN_NOT_AUTHORIZED = 'EmailDomainNotAuthorized';

  • Name the domain in question and direct to their administrators for authorization. Provide documentation link for authorizing a domain.

EMAIL_SCHEDULE_NOT_FOUND = 'EmailScheduleNotFound';

  • Name and link to the project with the missing schedule.

FILE_IS_EMPTY = 'FileIsEmpty';

  • Let the user know their scheduled execution produced no results and link to the project in question.

INSUFFICIENT_PRIVILEGES = 'InsufficientPrivileges';

  • Inform the user they no longer have sufficient permissions to a project or Snowflake db/table/view. Name specific warehouse/db/table/view and direct user to contact Snowflake administrator/DBA.

INSUFFICIENT_TASK_PRIVILEGES = 'InsufficientTaskPrivileges';

  • Inform the user they don’t have sufficient Datameer privileges. Direct to Datameer administrator to have permission granted.

INVALID_CRON_PATTERN = 'InvalidCronPattern';

  • Show the user the invalid cron pattern and link to the relevant project. Also supply a documentation reference to assist the user.

INVALID_WAREHOUSE = 'InvalidWarehouse';

  • Inform the user and name the Snowflake Warehouse in question that doesn’t exist or is inaccessible to them. Direct the user to contact their Snowflake administrator.

MAX_FILE_SIZE_EXCEEDED = 'MaxFileSizeExceeded';

  • Inform the user their project result exceeded the maximum file size allowed over email. Link the user to the project where they can download the data directly as a workaround.

  • Suggest adding filtering or removing some columns to shrink result size to allow email delivery.

MISSING_SOURCE_COLUMN = 'MissingSourceColumn';

  • Inform the user of the missing column in question and link to the relevant step using a missing column to assist them in resolving the issue.

MISSING_TABLE = 'MissingTable';

  • Inform the user of the missing table name in question and link to the relevant step using a missing table to assist them in resolving the issue.

NOT_AUTHENTICATED = 'NotAuthenticated';

  • Inform the user that they are not authenticated and link them to the relevant step to re-authenticate.

REFERENCED_COLUM_IN_ERROR = 'ReferencedColumInError';

  • Inform the user which column is having an error and what the specific error is. Link the user to the step where the column is calculated to assist in resolving the error.

SCHEMA_NOT_EXISTS_OR_NOT_AUTHORIZED = 'SchemaNotExistsOrNotAuthorized';

  • Inform the user they do not have access to the defined schema that they are attempting to use. Mention that it cannot be determined if the schema does not exist or if it is a lack of permissions in Snowflake. Direct the user to contact their Snowflake administrators to determine root cause.

SCHEMA_NOT_FOUND = 'SchemaNotFound';

  • Inform the user that the schema they are trying to use cannot be found. Instruct the user to contact their Snowflake administrators to determine if the name has changed or if it has been replaced.

SNOWFLAKE_OBJECT_NOT_FOUND_OR_NOT_ACCESSIBLE = 'SnowflakeObjectNotFoundOrNotAccessible';

  • Inform the user the object the yare attempting to access cannot be found within Snowflake. Direct the user to contact their Snowflake administrator to diagnose next steps - replacement, rebuild, etc.

TOO_MANY_COLUMNS = 'TooManyColumns';

  • Inform the user that their output has too many columns, and link to the relevant step so they can reduce the number of columns.

UNKNOWN_COLUMN_REFERENCE = 'UnknownColumnReference';

  • Inform the user that a function or aggregation is using a column that cannot be found, name the column and link to the relevant step so they can resolve the column reference.

UNKNOWN_FUNCTION = 'UnknownFunction';

  • Inform the user and provide the full function and argument string that is causing the unknown function error. Link to the relevant project step.

UNKNOWN_FUNCTIONS = 'UnknownFunctions';

  • Inform the user and provide the full function and argument string that is causing the unknown functions error. Link to the relevant project step.

UNSUPPORTED_SCHEDULE = 'UnsupportedSchedule';

  • Inform the user that the specified schedule is not correctly defined. Link to the appropriate project and schedule configuration.

UPLOAD_NOT_FOUND = 'UploadNotFound';

  • Inform the user that the data for the uploaded file is missing. Suggest that the user contact the user that originally uploaded the data.

USER_TEMPORARILY_LOCKED = 'UserTemporarilyLocked';

  • Inform the user their account has been temporary locked and that they can wait a bit and try again, or reach out to their administrator to unlock their account.

USERNAME_INVALID = 'UsernameInvalid';

  • Inform the user to check their User ID or to contact their administrator to take a look at their account.

WAREHOUSE_SUSPENDED = 'WarehouseSuspended';

  • Inform the user to reach out to their Snowflake administrator to start the warehouse they need.

No User Action Available

ALREADY_UP_TO_DATE = 'AlreadyUpToDate';
ASSET_DELETION_NOT_PERMITTED = 'AssetDeletionNotPermitted';
ASSET_MODIFICATION_NOT_PERMITTED = 'AssetModificationNotPermitted';
ASSET_NAME_ALREADY_EXISTS = 'AssetNameAlreadyExists';
ASSET_NOT_DELETABLE = 'AssetNotDeletable';
ASSET_NOT_FOUND_BY_SLUG = 'AssetNotFoundBySlug';
ASSET_PROPERTY_DEFINITION_ALREADY_EXISTS = 'AssetPropertyDefinitionAlreadyExists';
ASSET_PROPERTY_DEFINITION_NOT_FOUND = 'AssetPropertyDefinitionNotFound';
ASSET_PROPERTY_DEFINITION_NOT_MODIFIABLE = 'AssetPropertyDefinitionNotModifiable';
ASSET_PROPERTY_VALUE_NOT_FOUND = 'AssetPropertyValueNotFound';
AUTHENTICATION_FAILED = 'AuthenticationFailed';
AUTHENTICATION_REQUIRED = 'AuthenticationRequired';
CANCELED = 'Canceled';
COLUMN_IS_REFERENCED = 'ColumnIsReferenced';
COLUMN_NAME_ALREADY_EXISTS = 'ColumnNameAlreadyExists';
COMMENT_NOT_DELETABLE = 'CommentNotDeletable';
COMMENT_NOT_FOUND = 'CommentNotFound';
COMPILATION_FAILED_WITH_DATASET_ERROR = 'CompilationFailedWithDatasetError';
COMPILATION_FAILED_WITH_TRANSFORMATION_ERRORS = 'CompilationFailedWithTransformationErrors';
CONFIG_FAILURE = 'ConfigFailure';
CONNECTION_NOT_CONFIGURED = 'ConnectionNotConfigured';
DATA_LOADING_FAILED = 'DataLoadingFailed';
DATA_SOURCE_ALREADY_EXISTS = 'DataSourceAlreadyExists';
DERIVED_ASSET_MUST_NOT_BE_MODIFIED = 'DerivedAssetMustNotBeModified';
DUPLICATE_COLUMN_NAMES = 'DuplicateColumnNames';
EMAIL_ADDRESS_ALREADY_TAKEN = 'EmailAddressAlreadyTaken';
ENTITY_NOT_FOUND_OR_NOT_ACCESSIBLE = 'EntityNotFoundOrNotAccessible';
EVENT_TYPES_CANNOT_BE_EMPTY = 'EventTypesCannotBeEmpty';
EXPLORATION_NOT_FOUND = 'ExplorationNotFound';
FILE_PARSING_FAILURE = 'FileParsingFailure';
FILTER_VALUE_HAS_INCOMPATIBLE_TYPE = 'FilterValueHasIncompatibleType';
GLOSSARY_CATEGORY_EXISTS = 'GlossaryCategoryExists';
GLOSSARY_CATEGORY_NAME_UP_TO_DATE = 'GlossaryCategoryNameUpToDate';
GLOSSARY_CATEGORY_NOT_FOUND = 'GlossaryCategoryNotFound';
GLOSSARY_CATEGORY_STILL_CONTAINS_TERMS = 'GlossaryCategoryStillContainsTerms';
GLOSSARY_NOT_MODIFIABLE = 'GlossaryNotModifiable';
GLOSSARY_TERM_EXISTS = 'GlossaryTermExists';
GLOSSARY_TERM_NOT_FOUND = 'GlossaryTermNotFound';
GROUP_NOT_EXISTS = 'GroupNotExists';
INTERNAL_EVENT_TYPES_NOT_FOUND = 'InternalEventTypesNotFound';
INVALID_EXPRESSION = 'InvalidExpression';
INVALID_IDENTIFIER = 'InvalidIdentifier';
INVALID_PARAMETER_TYPE_FOR_FUNCTION = 'InvalidParameterTypeForFunction';
INVALID_SCHEMA = 'InvalidSchema';
INVALID_SQL_SYNTAX = 'InvalidSqlSyntax';
NAME_ALREADY_EXISTS = 'NameAlreadyExists';
NAME_CANNOT_BE_BLANK = 'NameCannotBeBlank';
NO_ACTIVE_WAREHOUSE_SELECTED = 'NoActiveWarehouseSelected';
NO_CSV_CREATED = 'NoCsvCreated';
NO_DEFAULT_WAREHOUSE_SET = 'NoDefaultWarehouseSet';
NO_DEPLOYMENT_HISTORY = 'NoDeploymentHistory';
NO_SQL_AVAILABLE = 'NoSqlAvailable';
NOT_AUTO_RESUMING = 'NotAutoResuming';
NOT_EXISTS_OR_NOT_AUTHORIZED = 'NotExistsOrNotAuthorized';
NOT_EXISTS_OR_OPERATION_CANNOT_BE_PERFORMED = 'NotExistsOrOperationCannotBePerformed';
NOT_INTROSPECTED = 'NotIntrospected';
NOT_PERMITTED = 'NotPermitted';
NOT_YET_DEFINED = 'NotYetDefined';
OBJECT_ALREADY_EXISTS = 'ObjectAlreadyExists';
OPERATION_NOT_PERMITTED = 'OperationNotPermitted';
OUTPUT_COLUMNS_WITH_INVISIBLE_CONTROL_CHARACTERS = 'OutputColumnsWithInvisibleControlCharacters';
OUTPUT_COLUMNS_WITH_LINE_SEPARATOR = 'OutputColumnsWithLineSeparator';
OWNER_MUST_NOT_BE_ADDED_AS_COLLABORATOR = 'OwnerMustNotBeAddedAsCollaborator';
REQUIREMENT_NOT_MET = 'RequirementNotMet';
SECRET_NOT_FOUND = 'SecretNotFound';
SELF_REFERENCE = 'SelfReference';
SNOWFLAKE_NOT_CONFIGURED = 'SnowflakeNotConfigured';
SNOWFLAKE_TABLE_ALREADY_EXISTS = 'SnowflakeTableAlreadyExists';
SOURCE_VIEW_NOT_EXCHANGEABLE = 'SourceViewNotExchangeable';
SQL_NOT_MODIFIED = 'SqlNotModified';
TABLE_ALREADY_EXISTS = 'TableAlreadyExists';
TARGET_VIEW_OR_TABLE_NOT_ALLOWED_TO_OVERWRITE = 'TargetViewOrTableNotAllowedToOverwrite';
TIMEOUT = 'Timeout';
TOKEN_EXPIRED = 'TokenExpired';
TOO_MANY_ENABLED_USERS = 'TooManyEnabledUsers';
TRANSFORMATION_NOT_OPERATIONAL = 'TransformationNotOperational';
UNABLE_TO_RECONNECT = 'UnableToReconnect';
UNCATEGORIZED_SQL_ERROR = 'UncategorizedSqlError';
UNEXPECTED_FAILURE = 'UnexpectedFailure';
UPDATING_OWN_GROUP_NOT_ALLOWED = 'UpdatingOwnGroupNotAllowed';
URL_ALREADY_EXISTS = 'UrlAlreadyExists';
URL_NOT_VALID = 'UrlNotValid';
USER_ALREADY_DISABLED = 'UserAlreadyDisabled';
USER_ALREADY_ENABLED = 'UserAlreadyEnabled';
USERNAME_ALREADY_TAKEN = 'UsernameAlreadyTaken';
USER_CANNOT_DISABLE_ITSELF = 'UserCannotDisableItself';
USER_RELATED_DATA_NOT_FOUND = 'UserRelatedDataNotFound';
VALUE_NOT_RECOGNIZED = 'ValueNotRecognized';
VIEW_ALREADY_EXISTS = 'ViewAlreadyExists';
VIEW_DEPENDENCIES_NOT_EXISTS_OR_NOT_AUTHORIZED = 'ViewDependenciesNotExistsOrNotAuthorized';
VIEW_IS_A_REFERENCE = 'ViewIsAReference';
VIEW_WITH_SAME_NAME_ALREADY_EXISTS = 'ViewWithSameNameAlreadyExists';
WEBHOOK_NOT_FOUND = 'WebhookNotFound';