I have a python script which reads all tweets about a specific sporting event and enters them into a database. While I was running it this weekend every time a big event occurred in the game the script would stop and I would get an error. It said it was with the code but I don't believe that is the case. I found this on Twitter's api site:
"Falling behind
Clients which are unable to process messages fast enough will be disconnected. A way to track whether your client is falling behind is to compare the timestamp of the Tweets you receive with the current time. If the difference between the timestamps increases over time, then the client is not processing Tweets as fast as they are being delivered. Another way to receive notifications that a client is falling behind is to pass the stall_warnings parameter when establishing the streaming connection."
and I was wondering if this is whats happening to me and what would be the best way to implement a solution.
As straming API creates a permanent connection, Falling behind technically means that tweets are put in this connection faster than consumed by your client. 
Solution is straightforward, you have to process tweets faster, that is optimize your landscape. There must be a bottleneck/bottlenecks, identify them and handle properly. For example, it might be database latency, when your db can not process sufficient inserts per second, IO latency, when data cant be stored to disk as fast as needed; code inefficiency; high CPU load; network bandwidth bound etc. 
No silver bullet for all cases, but some obvious steps include: 

storing received from Twitter data as is, and do post-processing in windows of lower load;
deploy of a cluster with several tweets consumers (processors) and data sharding; 
usage of faster disks/some raid configuration can speed-up IO;
tweet query optimisation, making sure to request and process least amount of tweets possible;
code optimisation; 
migration to a datacenter with higher bandwith;
Tweepy streaming API falling behind