hasura / hasura/graphql-engine
Allow for case-insensitive type matching in remote joins
- Dominant language
- TypeScript
- Stars
- 32.1k
- Forks
- 3k
- PR merge metrics
- PR metrics pending
Description
Unfortunately, GraphQL schemas generated by different GraphQL servers use different cases for the same type. It is possible that one endpoint exposes `BigInt` as `BigInt` while another endpoint may name it `bigint`. Even though both columns reference the same data type and values, the remote join will fail with the error message:
`in table "foo": in remote relationship "bar": expected type "BigInt" but got "bigint"`.
While the spec mentions case-sensitive variable and type names, it may be in favour of the users to allow for case-insensitive type matching on remote joins.
Relevant issue: #6313
Contributor guide
Research direction
Start with the remote-join validation discussed in this issue and review related issue #6313. Identify the relevant implementation and test locations, then verify the expected behavior against the BigInt/bigint example; done when the requested matching behavior is covered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- graphql
- Domain
- api
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100