v0.12.1: Hot Fixes to Database Connections and Error Handling
New in v0.12.1: Hot Fixes to Database Connections and Error Handling
This hot fix release improves the performance and stability of our new deployment on AWS by better managing database connections, more efficiently inserting data from device POSTs, and more accurately providing HTTP error codes.
This work was supported by a contract from the Stroud Water Research Center's general fund.
Improvements
- Faster API traffic response times, by at least 3x or more, for devices POSTing data at logging intervals. #547
- This improved performance was gained by replacing data insert code based on older Django models with newer code based on SQLAlchemy. These are first steps toward our next Milestone: Release 0.13 - Refactor code for performance & scalability
- Better error handling for device HTTP POST requests, providing more accurate HTTP error codes in server responses. #539, #541
Bug Fixes
- Stabilized system response times, due to CPU utilization maxing out over time from accumulating open database connections that were consuming server resources even though idle. #547
- Fixed aliasing for plots in the new Time Series Visualization (TSV). #536
- Replaced additional code that was related to the now deprecated Time Series Analyst (TSA) and was causing incorrect error code responses with some devices. #538, #539
For the full list of issues that we addressed, see these Milestones on GitHub: