Skip to content

inconsistencies in supergraph generated by apollo and us #173

@n1ru4l

Description

@n1ru4l

Internal reference for getting the subgraphs:

select schema_log.service_name, schema_log.sdl 
from schema_version_to_log inner join schema_log on schema_version_to_log.action_id = schema_log.id
where schema_version_to_log.version_id = (
  select id from schema_versions where target_id = '9563132d-94ed-481d-9593-e17d4e922f68' order by created_at DESC limit 1
)

When composing these subgraphs with apollo and our federation library we get the following diff:

6390c6390
<     @join__field(external: true, graph: TEMPLATE_SERVICE)
---
>     @join__field(external: true, graph: TEMPLATE_SERVICE, usedOverridden: true)
8963d8962
<   @join__type(extension: true, graph: TEMPLATE_SERVICE_MEDIA, key: "assetId")
8964a8964
>   @join__type(graph: TEMPLATE_SERVICE_MEDIA, key: "assetId")
10292,10293c10292,10293
<     @join__field(external: true, graph: POST_ORDER_EXPERIENCE_API)
<     @join__field(graph: ORDER_LEDGER)
---
>     @join__field(graph: ORDER_LEDGER)
>     @join__field(graph: POST_ORDER_EXPERIENCE_API)
13392c13392
<   @join__type(extension: true, graph: TEMPLATE_SERVICE, key: "surfaceId")
---
>   @join__type(graph: TEMPLATE_SERVICE, key: "surfaceId")

In apollos supergraph result:

  • usedOverridden: true does not exist

In our supergraph result:

  • extension: true is missing
  • external: true is missing

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions