Error: This app has gone over its usage quota limits

Hello everyone, I’m a phd student in human-computer interaction and I recently started using Streamlit for my interactive data vis course. I built and deployed an app and it was working for about a day. After a while, I got this error: “Argh. This app has gone over its usage quota limits. Please try again in a few minutes.”

I know other people in my class also got it, they told me that it goes away when you wait. But it’s been like that for more than 3 days now. Any suggestions on what to do?

Here’s the github repo just in case.

Thank you,
Nur

Hey @nuryildirim,

Welcome to the forum :wave:

Still looking into the root cause of this, but your app is accessible again just FYI.

Jonathan

1 Like

Great! Thank you so much for the swift response. I will follow up if the same error occurs again.

Hey @nuryildirim,

We’re planning some changes on our end so apps don’t get stuck in fail-whale limbo.

If your app gets stuck again before then, restarting it via the dashboard should fix things.

Looks like your app was being a little memory heavy (or maybe a memory leak?).

See chart of memory usage percentage below (1.0 is 100%).

Jonathan

Here’s the documentation on our Resource Limits for Streamlit Sharing.

Apps get up to 1 CPU, 800 MB of RAM, and 800 MB of dedicated storage in a shared execution environment.

We’re actually allowing apps to go a little over that at the moment but shhhh, don’t tell anyone :wink:

If an app exceeds the limits we’ll show the fail whale and ideally with no traffic the resource usage will fall so the app can serve requests again, but as you saw this isn’t always the case.

Hoping to get some improvements out around this flow in the near future!

1 Like

Thank you so much for the detailed reply Jonathan! A couple of friends from my course have experienced the same problem, so I shared the work around you posted. Looking forward to future improvements.

Thanks,
Nur

1 Like

Is it possible for me to inspect those charts? My app is also hitting a quota but I’m not exactly sure which one. I’ll hit restart for now though.

This isn’t something we provide to the general public (yet?), but if you give me the app link I can ask our engineers if they can help out.

Thanks! It’s the one found here:

https://share.streamlit.io/koaning/nlu-cluster-demo/

Earlier today my colleagues couldn’t see it and got a quota limit message. It seems to behave strangely and it might be due to something going awry with the caching of TensorFlow.

The repo for the project can be found here.

Yep. It’s down again.

https://share.streamlit.io/koaning/nlu-cluster-demo/main

I’ll gladly aid any engineer who is investigating this. AskMeAynthing[tm].

2 Likes

Hi @koaning,

Your app’s memory usage is exceeding our quota.

1 Like

I’m removing the caching now to see if that has any effect on memory.

You might want to try memory-profiler

mprof run streamlit run app.py
MPLBACKEND=macosx mprof plot

That’ll give you time-based memory usage of the app.

To get line by line memory usage you need to wrap functions that you want to trace with the @profile decorator.

2 Likes

That’s a neat trick. TIL!

Yeah it seems that python is loading in just … to many packages here. It’ll sure help me debug though. Thanks!