{"record":{"id":"491bcec7cde44f5e","repo":"prestodb/presto","slug":"missing-schema-491bce","errorCode":"MISSING_SCHEMA","errorMessage":"Schema name is empty","messagePattern":"Schema name is empty","errorType":"error_code","errorClass":"SemanticException","httpStatus":null,"severity":"error","filePath":"presto-main-base/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java","lineNumber":2418,"sourceCode":"                                    inputField.getOriginColumnName(),\n                                    inputField.isAliased());\n                            fieldBuilder.add(field);\n                            analysis.propagateLineage(field, inputField);\n                        }\n                        fields = fieldBuilder.build();\n                    }\n\n                    return createAndAssignScope(table, scope, fields);\n                }\n            }\n\n            QualifiedObjectName name = createQualifiedObjectName(session, table, table.getName(), metadata);\n            analysis.setRelationName(table, QualifiedName.of(name.getCatalogName(), name.getSchemaName(), name.getObjectName()));\n            if (name.getObjectName().isEmpty()) {\n                throw new SemanticException(MISSING_TABLE, table, \"Table name is empty\");\n            }\n            if (name.getSchemaName().isEmpty()) {\n                throw new SemanticException(MISSING_SCHEMA, table, \"Schema name is empty\");\n            }\n            analysis.addEmptyColumnReferencesForTable(accessControl, session.getIdentity(), session.getTransactionId(), session.getAccessControlContext(), name);\n\n            Optional<ViewDefinition> optionalView = getViewDefinition(session, metadataResolver, analysis.getMetadataHandle(), name);\n            if (optionalView.isPresent()) {\n                return processView(table, scope, name, optionalView);\n            }\n\n            Optional<MaterializedViewDefinition> optionalMaterializedView = getMaterializedViewDefinition(session, metadataResolver, analysis.getMetadataHandle(), name);\n            // Prevent INSERT when selecting from a materialized view into one of its base tables (circular dependency).\n            if (optionalMaterializedView.isPresent() && analysis.getStatement() instanceof Insert) {\n                Insert insert = (Insert) analysis.getStatement();\n                QualifiedObjectName targetTable = createQualifiedObjectName(session, insert, insert.getTarget(), metadata);\n                SchemaTableName targetSchemaTable = new SchemaTableName(targetTable.getSchemaName(), targetTable.getObjectName());\n                if (optionalMaterializedView.get().getBaseTables().contains(targetSchemaTable)) {\n                    throw new SemanticException(\n                            NOT_SUPPORTED,\n                            table,","sourceCodeStart":2400,"sourceCodeEnd":2436,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-main-base/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java#L2400-L2436","documentation":"Analysis error from table name resolution: the qualified name built for a table reference ended up with an empty schema component (e.g. a quoted empty identifier like \"\".\"t\" or a malformed qualified name). A table reference must resolve to catalog.schema.table with a non-empty schema.","triggerScenarios":"Thrown at presto-main-base/src/main/java/com/facebook/presto/sql/analyzer/StatementAnalyzer.java:2418 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Spell out a full catalog.schema.table name","Check for accidentally quoted empty identifiers in the query","Set a valid default schema in the session (e.g. USE catalog.schema)"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"55bb57d202de3b926896fa966c2c4a44c779634e","analyzedAt":"2026-09-04T12:50:26.162Z","contentChangedAt":"2026-09-04T12:50:26.162Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}