Questions around async analytic timeouts

analytics
async

#1

I have some async analytic jobs that are stuck in Processing status.

They have been running for 3 hours now.

You site mentioned this

•A maximum of 100 concurrent (queued or processing) asynchronous job queries are permitted per advertiser account.

Do you set the jobs to Failed status after some period of time or do you expect the clients to do this via some api call?

I want to make sure our process doesn’t leave these around and lead us to the 100 limit.

I also haven’t see any examples of Failed async analytics jobs yet.

If a failure occurs and I have 20 entities and only a few fail , how is that messaged back?

Is there also a notion of the entire job failing and how is that messaged back?


#2

Hey @dwillis,

The status of the jobs will be set to FAILED or SUCCEEDED internally, and you can check this status using the GET /1/stats/jobs/accounts/:account_id endpoint by passing in the job_id returned from the POST call.

Hope that helps!


#3

thanks for the response

I have been doing the get call you described.

This job id_str=784023766871470080

has stayed in Processing status for 1 day now.

Will your system eventually indicate this as Failed?

When should our system give up on this job and issue another one?

We did create another job with the same entities and it worked right away.

I worry that these orphaned jobs may count toward the 100 limit for the ad account.


#4

I would like to know if its possible for partial entities to fail.

How is that messaged back if its possible?


#5

@dwillis: If no data exists for a particular entity, you should see an empty array.


#6

can you guys tell me about this job?

This job id_str=784023766871470080

Its still in Processing status.

Do you guys support a Delete endpoint for it?


#7

HEy @dwillis,

We do not support a DELETE endpoint. If you’re jobs have been stuck in the PROCESSING state for quite some time, we would recommend that you submit a new job with the same data set. We’ve responded to a similar question here. Please let us know if that answers your question.

Thanks!


#8

thanks for the response. I read the other post and it stated you don’t look at individual jobs.

If lots of these "orphaned’ jobs occur wont that lead us to hitting the below limit

•A maximum of 100 concurrent (queued or processing) asynchronous job queries are permitted per advertiser account.

Does your system count these “orphaned” jobs for the above limit?

I would think your documentation should state a time to give up on a job left in Processing state.

A delete endpoint would allow your clients to tell your system we have given up on a job

Thanks
Don


#9

Hey @dwillis,

To answer your question, yes, jobs that are in the PROCESSING state will count against your limit. We do not support a means to cancel these jobs at the moment, and we’re working to clear out our backlog as soon as we can.

Thank you for your feedback, regarding the option to cancel jobs, however it’s not something that’s currently on our roadmap. We’ll take this into consideration when planning for our future product roadmap.

Thanks!


#10

@dwillis: Closing the loop here. Today we announced a way to cancel those jobs. Thank you for your feedback!