Uploaded image for project: 'Magnolia GraphQL'
  1. Magnolia GraphQL
  2. MGNLGQL-54

Schema generation fails when referenced content type doesn't exist

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Neutral
    • 1.0
    • None
    • None

    Description

      Schema generation fails in the following scenario:

      • let there be a content type with name book.
      • content type book is referencing another content type called bookCategory
      • content type bookCategory is however not present in the registry to whatever reason and it's GraphQL type is thus not generated
      • schema generation will fail because GraphQL type Book is expecting GraphQL type BookCategory to exist

      Error:

      2020-09-04 13:45:15,574 ERROR info.magnolia.event.SimpleEventBus                : Exception caught when dispatching info.magnolia.graphql.core.GraphQLDefinitionChangedEvent with info.magnolia.graphql.core.GraphQLProvider$$Lambda$878/1830549084 eventHandler.
      graphql.AssertException: type Event not found in schema
      	at graphql.Assert.assertNotNull(Assert.java:15) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.GraphQLTypeResolvingVisitor.handleTypeReference(GraphQLTypeResolvingVisitor.java:46) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.GraphQLTypeResolvingVisitor.visitGraphQLTypeReference(GraphQLTypeResolvingVisitor.java:41) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.GraphQLTypeReference.accept(GraphQLTypeReference.java:55) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.SchemaTraverser$TraverserDelegateVisitor.enter(SchemaTraverser.java:72) ~[graphql-java-14.1.jar:?]
      	at graphql.util.Traverser.traverse(Traverser.java:144) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.SchemaTraverser.doTraverse(SchemaTraverser.java:59) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.SchemaTraverser.depthFirst(SchemaTraverser.java:51) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.SchemaTraverser.depthFirst(SchemaTraverser.java:38) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.SchemaUtil.replaceTypeReferences(SchemaUtil.java:113) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.GraphQLSchema$Builder.buildImpl(GraphQLSchema.java:533) ~[graphql-java-14.1.jar:?]
      	at graphql.schema.GraphQLSchema$Builder.build(GraphQLSchema.java:515) ~[graphql-java-14.1.jar:?]
      	at info.magnolia.graphql.core.schema.builder.GraphQLSchemaBuilder.build(GraphQLSchemaBuilder.java:131) ~[magnolia-graphql-core-1.0-SNAPSHOT.jar:?]
      

      Checklists

        Acceptance criteria

        Attachments

          Issue Links

            Activity

              People

                rsiska Robert Šiška
                jsimak Jaroslav Simak
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  Checklists

                    Bug DoR
                    Task DoD

                    Time Tracking

                      Estimated:
                      Original Estimate - Not Specified
                      Not Specified
                      Remaining:
                      Remaining Estimate - 0d
                      0d
                      Logged:
                      Time Spent - 0.5d
                      0.5d