Skip to content

Client retries indefinitely if server resolver throws an error #57

Description

@alhambra1

Hi,

Using socket-apollo-link with an Apollo client, if the Absinthe GraphQL resolver on our server throws an error, our client and server seem to get stuck in a cycle where the client action is not aborted but keeps retrying and failing. The raw websocket cycle looks something like:

client: send action
server: ["9","9","__absinthe__:control","phx_error",{}]
client: ["21","21","__absinthe__:control","phx_join",{}]
server: ["21","21","__absinthe__:control","phx_reply",{"response":{},"status":"ok"}]
client: resubscribe to subscriptions
back to top...

How would you recommend handling this on the client? Ideally, the client should have a way to associate a server crash with a permanent error. Is there an exposed method we can use to abort the action (aside from disconnecting the socket)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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