Spent way too long trying to track down a cryptic error that turned
out to be a CherryPy bug. Now we catch this using a decorator in the
'extract' and 'intervals' generators that transforms exceptions that
trigger the bugs into one that does not. fun!
rework how this all works together, but will probably move on to
extraction now.
Update runserver.py with some options for profiling, port, etc.
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@10839 ddd99763-3ecb-0310-9145-efcb8ce7c51f
On the big database, the server takes a few seconds to figure out the
interval intersections. Need to think about how to improve that --
the real key might be to start reducing the number of intervals we're
storing by combining them, potentially as they're inserted.
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@10838 ddd99763-3ecb-0310-9145-efcb8ce7c51f
handled by the HTTP server.
Add /stream/get_metadata HTTP request.
Fill out test_stream_metadata
Add runserver.py script to just run the server from the command line,
outside of the testing environment. Add necessary hooks within
nilmdb/server.py to allow this to happen.
Metadata operations get stream_id first and report error on missing
stream, instead of returning an empty dict.
git-svn-id: https://bucket.mit.edu/svn/nilm/nilmdb@10443 ddd99763-3ecb-0310-9145-efcb8ce7c51f