https://dagster.io/ logo
Title
l

ljx

11/22/2022, 4:05 AM
Hi, guys I am working on pipelineRunLogs subscription on a third party graphql websocket client to keep track of my pipeline run. Everything works just fine, but I cannot get any update on the run status, the status part remains "QUEUED". However, I can get update on step changes and time changes for this run. My dagster version is 0.15.7. Is this my subscription problem, the dagster bug, or my client problem? My subscription is as below
subscription($runId:ID!){
  pipelineRunLogs(runId:$runId){
    ...on PipelineRunLogsSubscriptionSuccess{
      __typename
      run{
        runId
        pipelineName
        status
        stats{
          ...on RunStatsSnapshot{
            enqueuedTime
            launchTime
            startTime
            endTime
            stepsFailed
            stepsSucceeded
          }
          ...on PythonError{
            message
          }
        }
      }
    }
    ...on PipelineRunLogsSubscriptionFailure{
      __typename
      message
      missingRunId
    }
  }
}
Any help matters! Thank you
p

prha

11/22/2022, 6:01 PM
I think in your graphql query, you are fetching the run status off of the
PipelineRunLogsSubscriptionSuccess
object, which is returned when you successfully establish the subscription… it is not updated as messages come in
hmm, maybe this is a bug… but I think we want to avoid refetching the run on every single log message.
m

Marco Salazar

11/22/2022, 6:06 PM
p

prha

11/22/2022, 6:07 PM
In the future, we might remove the
run
field from the
PipelineRunLogsSubscriptionSuccess
field to avoid this confusion. I’d try to reconcile using the messages like @Marco Salazar recommends