"use strict";(self.webpackChunkdocs_v_2=self.webpackChunkdocs_v_2||[]).push([[2751],{95788:(e,s,a)=>{a.d(s,{Iu:()=>d,yg:()=>h});var t=a(11504);function r(e,s,a){return s in e?Object.defineProperty(e,s,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[s]=a,e}function n(e,s){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);s&&(t=t.filter((function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable}))),a.push.apply(a,t)}return a}function u(e){for(var s=1;s<arguments.length;s++){var a=null!=arguments[s]?arguments[s]:{};s%2?n(Object(a),!0).forEach((function(s){r(e,s,a[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):n(Object(a)).forEach((function(s){Object.defineProperty(e,s,Object.getOwnPropertyDescriptor(a,s))}))}return e}function i(e,s){if(null==e)return{};var a,t,r=function(e,s){if(null==e)return{};var a,t,r={},n=Object.keys(e);for(t=0;t<n.length;t++)a=n[t],s.indexOf(a)>=0||(r[a]=e[a]);return r}(e,s);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(t=0;t<n.length;t++)a=n[t],s.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=t.createContext({}),l=function(e){var s=t.useContext(o),a=s;return e&&(a="function"==typeof e?e(s):u(u({},s),e)),a},d=function(e){var s=l(e.components);return t.createElement(o.Provider,{value:s},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var s=e.children;return t.createElement(t.Fragment,{},s)}},y=t.forwardRef((function(e,s){var a=e.components,r=e.mdxType,n=e.originalType,o=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),c=l(a),y=r,h=c["".concat(o,".").concat(y)]||c[y]||p[y]||n;return a?t.createElement(h,u(u({ref:s},d),{},{components:a})):t.createElement(h,u({ref:s},d))}));function h(e,s){var a=arguments,r=s&&s.mdxType;if("string"==typeof e||r){var n=a.length,u=new Array(n);u[0]=y;var i={};for(var o in s)hasOwnProperty.call(s,o)&&(i[o]=s[o]);i.originalType=e,i[c]="string"==typeof e?e:r,u[1]=i;for(var l=2;l<n;l++)u[l]=a[l];return t.createElement.apply(null,u)}return t.createElement.apply(null,a)}y.displayName="MDXCreateElement"},57640:(e,s,a)=>{a.r(s),a.d(s,{assets:()=>o,contentTitle:()=>u,default:()=>p,frontMatter:()=>n,metadata:()=>i,toc:()=>l});var t=a(45072),r=(a(11504),a(95788));const n={title:"Issue Codes",sidebar_position:3,version:1},u="Issue Code Reference",i={unversionedId:"miscellaneous/issue-codes",id:"miscellaneous/issue-codes",title:"Issue Codes",description:"This page lists issue codes that may be displayed in",source:"@site/docs/miscellaneous/issue-codes.mdx",sourceDirName:"miscellaneous",slug:"/miscellaneous/issue-codes",permalink:"/docs/miscellaneous/issue-codes",draft:!1,editUrl:"https://github.com/apache/superset/edit/master/docs/docs/miscellaneous/issue-codes.mdx",tags:[],version:"current",sidebarPosition:3,frontMatter:{title:"Issue Codes",sidebar_position:3,version:1},sidebar:"tutorialSidebar",previous:{title:"Importing and Exporting Datasources",permalink:"/docs/miscellaneous/importing-exporting-datasources"},next:{title:"Chart Parameters Reference",permalink:"/docs/miscellaneous/chart-params"}},o={},l=[{value:"Issue 1000",id:"issue-1000",level:2},{value:"Issue 1001",id:"issue-1001",level:2},{value:"Issue 1002",id:"issue-1002",level:2},{value:"Issue 1003",id:"issue-1003",level:2},{value:"Issue 1004",id:"issue-1004",level:2},{value:"Issue 1005",id:"issue-1005",level:2},{value:"Issue 1006",id:"issue-1006",level:2},{value:"Issue 1007",id:"issue-1007",level:2},{value:"Issue 1008",id:"issue-1008",level:2},{value:"Issue 1009",id:"issue-1009",level:2},{value:"Issue 1010",id:"issue-1010",level:2},{value:"Issue 1011",id:"issue-1011",level:2},{value:"Issue 1012",id:"issue-1012",level:2},{value:"Issue 1013",id:"issue-1013",level:2},{value:"Issue 1014",id:"issue-1014",level:2},{value:"Issue 1015",id:"issue-1015",level:2},{value:"Issue 1016",id:"issue-1016",level:2},{value:"Issue 1017",id:"issue-1017",level:2},{value:"Issue 1018",id:"issue-1018",level:2},{value:"Issue 1019",id:"issue-1019",level:2},{value:"Issue 1020",id:"issue-1020",level:2},{value:"Issue 1021",id:"issue-1021",level:2},{value:"Issue 1022",id:"issue-1022",level:2},{value:"Issue 1023",id:"issue-1023",level:2},{value:"Issue 1024",id:"issue-1024",level:2},{value:"Issue 1025",id:"issue-1025",level:2},{value:"Issue 1026",id:"issue-1026",level:2},{value:"Issue 1027",id:"issue-1027",level:2},{value:"Issue 1028",id:"issue-1028",level:2},{value:"Issue 1029",id:"issue-1029",level:2},{value:"Issue 1030",id:"issue-1030",level:2},{value:"Issue 1031",id:"issue-1031",level:2},{value:"Issue 1032",id:"issue-1032",level:2},{value:"Issue 1033",id:"issue-1033",level:2},{value:"Issue 1034",id:"issue-1034",level:2},{value:"Issue 1035",id:"issue-1035",level:2},{value:"Issue 1036",id:"issue-1036",level:2}],d={toc:l},c="wrapper";function p(e){let{components:s,...a}=e;return(0,r.yg)(c,(0,t.c)({},d,a,{components:s,mdxType:"MDXLayout"}),(0,r.yg)("h1",{id:"issue-code-reference"},"Issue Code Reference"),(0,r.yg)("p",null,"This page lists issue codes that may be displayed in\nSuperset and provides additional context."),(0,r.yg)("h2",{id:"issue-1000"},"Issue 1000"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The datasource is too large to query.\n")),(0,r.yg)("p",null,"It's likely your datasource has grown too large to run the current\nquery, and is timing out. You can resolve this by reducing the\nsize of your datasource or by modifying your query to only process a\nsubset of your data."),(0,r.yg)("h2",{id:"issue-1001"},"Issue 1001"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The database is under an unusual load.\n")),(0,r.yg)("p",null,"Your query may have timed out because of unusually high load on the\ndatabase engine. You can make your query simpler, or wait until the\ndatabase is under less load and try again."),(0,r.yg)("h2",{id:"issue-1002"},"Issue 1002"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The database returned an unexpected error.\n")),(0,r.yg)("p",null,"Your query failed because of an error that occurred on the database.\nThis may be due to a syntax error, a bug in your query, or some other\ninternal failure within the database. This is usually not an\nissue within Superset, but instead a problem with the underlying\ndatabase that serves your query."),(0,r.yg)("h2",{id:"issue-1003"},"Issue 1003"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"There is a syntax error in the SQL query. Perhaps there was a misspelling or a typo.\n")),(0,r.yg)("p",null,"Your query failed because of a syntax error within the underlying query. Please\nvalidate that all columns or tables referenced within the query exist and are spelled\ncorrectly."),(0,r.yg)("h2",{id:"issue-1004"},"Issue 1004"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The column was deleted or renamed in the database.\n")),(0,r.yg)("p",null,"Your query failed because it is referencing a column that no longer exists in\nthe underlying datasource. You should modify the query to reference the\nreplacement column, or remove this column from your query."),(0,r.yg)("h2",{id:"issue-1005"},"Issue 1005"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The table was deleted or renamed in the database.\n")),(0,r.yg)("p",null,"Your query failed because it is referencing a table that no longer exists in\nthe underlying database. You should modify your query to reference the correct\ntable."),(0,r.yg)("h2",{id:"issue-1006"},"Issue 1006"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"One or more parameters specified in the query are missing.\n")),(0,r.yg)("p",null,"Your query was not submitted to the database because it's missing one or more\nparameters. You should define all the parameters referenced in the query in a\nvalid JSON document. Check that the parameters are spelled correctly and that\nthe document has a valid syntax."),(0,r.yg)("h2",{id:"issue-1007"},"Issue 1007"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The hostname provided can't be resolved.\n")),(0,r.yg)("p",null,"The hostname provided when adding a new database is invalid and cannot be\nresolved. Please check that there are no typos in the hostname."),(0,r.yg)("h2",{id:"issue-1008"},"Issue 1008"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The port is closed.\n")),(0,r.yg)("p",null,"The port provided when adding a new database is not open. Please check that\nthe port number is correct, and that the database is running and listening on\nthat port."),(0,r.yg)("h2",{id:"issue-1009"},"Issue 1009"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The host might be down, and cannot be reached on the provided port.\n")),(0,r.yg)("p",null,"The host provided when adding a new database doesn't seem to be up.\nAdditionally, it cannot be reached on the provided port. Please check that\nthere are no firewall rules preventing access to the host."),(0,r.yg)("h2",{id:"issue-1010"},"Issue 1010"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Superset encountered an error while running a command.\n")),(0,r.yg)("p",null,"Something unexpected happened, and Superset encountered an error while\nrunning a command. Please reach out to your administrator."),(0,r.yg)("h2",{id:"issue-1011"},"Issue 1011"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Superset encountered an unexpected error.\n")),(0,r.yg)("p",null,"Something unexpected happened in the Superset backend. Please reach out\nto your administrator."),(0,r.yg)("h2",{id:"issue-1012"},"Issue 1012"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The username provided when connecting to a database is not valid.\n")),(0,r.yg)("p",null,"The user provided a username that doesn't exist in the database. Please check\nthat the username is typed correctly and exists in the database."),(0,r.yg)("h2",{id:"issue-1013"},"Issue 1013"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The password provided when connecting to a database is not valid.\n")),(0,r.yg)("p",null,"The user provided a password that is incorrect. Please check that the\npassword is typed correctly."),(0,r.yg)("h2",{id:"issue-1014"},"Issue 1014"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Either the username or the password used are incorrect.\n")),(0,r.yg)("p",null,"Either the username provided does not exist or the password was written incorrectly. Please\ncheck that the username and password were typed correctly."),(0,r.yg)("h2",{id:"issue-1015"},"Issue 1015"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Either the database is spelled incorrectly or does not exist.\n")),(0,r.yg)("p",null,"Either the database was written incorrectly or it does not exist. Check that it was typed correctly."),(0,r.yg)("h2",{id:"issue-1016"},"Issue 1016"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The schema was deleted or renamed in the database.\n")),(0,r.yg)("p",null,"The schema was either removed or renamed. Check that the schema is typed correctly and exists."),(0,r.yg)("h2",{id:"issue-1017"},"Issue 1017"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The user doesn't have the proper permissions to connect to the database\n")),(0,r.yg)("p",null,"We were unable to connect to your database. Please confirm that your service account has the Viewer and Job User roles on the project."),(0,r.yg)("h2",{id:"issue-1018"},"Issue 1018"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"One or more parameters needed to configure a database are missing.\n")),(0,r.yg)("p",null,"Not all parameters required to test, create, or edit a database were present. Please double check which parameters are needed, and that they are present."),(0,r.yg)("h2",{id:"issue-1019"},"Issue 1019"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The submitted payload has the incorrect format.\n")),(0,r.yg)("p",null,"Please check that the request payload has the correct format (eg, JSON)."),(0,r.yg)("h2",{id:"issue-1020"},"Issue 1020"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The submitted payload has the incorrect schema.\n")),(0,r.yg)("p",null,"Please check that the request payload has the expected schema."),(0,r.yg)("h2",{id:"issue-1021"},"Issue 1021"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Results backend needed for asynchronous queries is not configured.\n")),(0,r.yg)("p",null,"Your instance of Superset doesn't have a results backend configured, which is needed for asynchronous queries. Please contact an administrator for further assistance."),(0,r.yg)("h2",{id:"issue-1022"},"Issue 1022"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Database does not allow data manipulation.\n")),(0,r.yg)("p",null,"Only ",(0,r.yg)("inlineCode",{parentName:"p"},"SELECT")," statements are allowed against this database. Please contact an administrator if you need to run DML (data manipulation language) on this database."),(0,r.yg)("h2",{id:"issue-1023"},"Issue 1023"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"CTAS (create table as select) doesn't have a SELECT statement at the end.\n")),(0,r.yg)("p",null,"The last statement in a query run as CTAS (create table as select) MUST be a SELECT statement. Please make sure the last statement in the query is a SELECT."),(0,r.yg)("h2",{id:"issue-1024"},"Issue 1024"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"CVAS (create view as select) query has more than one statement.\n")),(0,r.yg)("p",null,"When running a CVAS (create view as select) the query should have a single statement. Please make sure the query has a single statement, and no extra semi-colons other than the last one."),(0,r.yg)("h2",{id:"issue-1025"},"Issue 1025"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"CVAS (create view as select) query is not a SELECT statement.\n")),(0,r.yg)("p",null,"When running a CVAS (create view as select) the query should be a SELECT statement. Please make sure the query has a single statement and it's a SELECT statement."),(0,r.yg)("h2",{id:"issue-1026"},"Issue 1026"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Query is too complex and takes too long to run.\n")),(0,r.yg)("p",null,"The submitted query might be too complex to run under the time limit defined by your Superset administrator. Please double check your query and verify if it can be optimized. Alternatively, contact your administrator to increase the timeout period."),(0,r.yg)("h2",{id:"issue-1027"},"Issue 1027"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The database is currently running too many queries.\n")),(0,r.yg)("p",null,"The database might be under heavy load, running too many queries. Please try again later, or contact an administrator for further assistance."),(0,r.yg)("h2",{id:"issue-1028"},"Issue 1028"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"One or more parameters specified in the query are malformed.\n")),(0,r.yg)("p",null,'The query contains one or more malformed template parameters. Please check your query and confirm that all template parameters are surround by double braces, for example, "{{ ds }}". Then, try running your query again.'),(0,r.yg)("h2",{id:"issue-1029"},"Issue 1029"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The object does not exist in this database.\n")),(0,r.yg)("p",null,"Either the schema, column, or table do not exist in the database."),(0,r.yg)("h2",{id:"issue-1030"},"Issue 1030"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The query potentially has a syntax error.\n")),(0,r.yg)("p",null,"The query might have a syntax error. Please check and run again."),(0,r.yg)("h2",{id:"issue-1031"},"Issue 1031"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The results backend no longer has the data from the query.\n")),(0,r.yg)("p",null,"The results from the query might have been deleted from the results backend after some period. Please re-run your query."),(0,r.yg)("h2",{id:"issue-1032"},"Issue 1032"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The query associated with the results was deleted.\n")),(0,r.yg)("p",null,"The query associated with the stored results no longer exists. Please re-run your query."),(0,r.yg)("h2",{id:"issue-1033"},"Issue 1033"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The results stored in the backend were stored in a different format, and no longer can be deserialized.\n")),(0,r.yg)("p",null,"The query results were stored in a format that is no longer supported. Please re-run your query."),(0,r.yg)("h2",{id:"issue-1034"},"Issue 1034"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The database port provided is invalid.\n")),(0,r.yg)("p",null,"Please check that the provided database port is an integer between 0 and 65535 (inclusive)."),(0,r.yg)("h2",{id:"issue-1035"},"Issue 1035"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"Failed to start remote query on a worker.\n")),(0,r.yg)("p",null,"The query was not started by an asynchronous worker. Please reach out to your administrator for further assistance."),(0,r.yg)("h2",{id:"issue-1036"},"Issue 1036"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre"},"The database was deleted.\n")),(0,r.yg)("p",null,"The operation failed because the database referenced no longer exists. Please reach out to your administrator for further assistance."))}p.isMDXComponent=!0}}]);