d36ece3767
Fix up dependencies
2013-04-08 18:53:13 -04:00
231963538e
Add some info about binary interface to design docs
2013-04-08 18:53:13 -04:00
b4d6aad6de
Merge branch 'binary'
2013-04-08 18:52:52 -04:00
e95142eabf
Huge update to support inserting in client.numpyclient, with tests
...
This includes both client.stream_insert_numpy and
client.stream_insert_numpy_context(). The test code is based on
similar test code for client.stream_insert_context, so it should be
fairly complete.
2013-04-08 18:51:45 -04:00
d21c3470bc
Client cleanups; fix tests to account for time epsilon = 1
2013-04-08 18:51:45 -04:00
7576883f49
Add basic binary support to client, and restructure a bit
2013-04-08 18:51:45 -04:00
cc211542f8
Add binary support to nilmdb.server; enforce content-type
2013-04-08 18:51:45 -04:00
8292dcf70b
Clean up stream/extract content-type and add a test for it
2013-04-08 18:51:45 -04:00
b362fd37f6
Add binary option to nilmdb.stream_insert
2013-04-08 18:51:45 -04:00
41ec13ee17
Rename bulkdata.append_string to bulkdata.append_data
2013-04-08 18:51:45 -04:00
efa9aa9097
Add binary option to bulkdata.append_string
2013-04-08 18:51:45 -04:00
d9afb48f45
Make append_binary signature look like append_string
2013-04-08 18:51:44 -04:00
d1140e0f16
Timestamps are int64, not uint64
2013-04-08 18:51:44 -04:00
6091e44561
Fix fread return value check
2013-04-08 18:51:44 -04:00
e233ba790f
Add append_binary to rocket
2013-04-08 18:51:44 -04:00
f0304b4c00
Merge branch 'binary' into HEAD
2013-04-07 18:08:10 -04:00
60594ca58e
Numpy is required for tests now, due to nilmdb.client.numpyclient
...
Still allow installation without it, though.
2013-04-07 18:05:43 -04:00
c7f2df4abc
Add nilmdb.client.numpyclient.NumpyClient with stream_extract_numpy
...
This is a subclass of nilmdb.client.client.Client that adds numpy
specific routines, which should be a lot faster.
2013-04-07 17:43:52 -04:00
5b7409f802
Add binary extract to client, server, nilmdb, bulkdata, and rocket.
2013-04-07 16:06:52 -04:00
06038062a2
Fix error in time parsing
2013-04-06 19:12:17 -04:00
ae9fe89759
Parse timestamps with '@' before any other checks
2013-04-04 14:43:18 -04:00
04def60021
Include stream path in "no such stream" errors
2013-04-02 21:06:49 -04:00
9ce0f69dff
Add "--delete" option to "nilmtool metadata" tool
...
This is the same as "--update" with an empty string as the value.
2013-04-02 16:07:28 -04:00
90c3be91c4
Natural sort for streams in client.stream_list
2013-04-02 14:37:32 -04:00
ebccfb3531
Fix stream renaming when the new path is a parent of the old
2013-04-01 19:25:17 -04:00
e006f1d02e
Change default URL to http://localhost/nilmdb/
2013-04-01 18:04:31 -04:00
5292319802
server: consolidate time processing and checks
2013-03-30 21:16:40 -04:00
173121ca87
Switch URL to one that should definitely not resolve
2013-03-30 17:31:35 -04:00
26bab031bd
Add StreamInserter.send() to trigger intermediate block send
2013-03-30 17:30:43 -04:00
b5fefffa09
Use a global cached server object for WSGI app
...
This is instead of caching it inside nilmdb.server.wsgi_application.
Might make things work a bit better in case the web server decides
to call wsgi_application multiple times.
2013-03-30 15:56:57 -04:00
dccb3e370a
WSGI config needs to specify application group
...
This ensures that the same Python sub-instance handles the request,
even if it's coming in from two different virtual hosts.
2013-03-30 15:56:02 -04:00
95ca55aa7e
Print out WSGI environment on DB init failure
2013-03-30 15:55:41 -04:00
e01813f29d
Fix wsgi documentation
2013-03-25 13:52:32 -04:00
7f41e117a2
Fix tabs
2013-03-25 13:44:03 -04:00
dd5fc806e5
Restructure WSGI app to regenerate error on each call, if needed
...
This way, errors like "database already locked" can be fixed and the
page reloaded, without needing to restart Apache.
2013-03-24 21:52:11 -04:00
f8ca8d31e6
Remove Iteratorizer, as it's no longer needed
2013-03-24 21:31:03 -04:00
ed89d803f0
Remove aplotter code
2013-03-24 21:29:09 -04:00
3d24092cd2
Replace bare 'except:' with 'except: Exception'
...
Otherwise we might inadvertently catch SystemExit or KeyboardExit or
something we don't want to catch.
2013-03-24 21:28:01 -04:00
304bb43d85
Move lockfile out of data dir, to avoid stream tree conflicts
2013-03-24 21:23:45 -04:00
59a79a30a5
Remove lockfile when done.
...
This isn't necessary for correct behavior: if the database is killed,
the old flock() will go away when the file descriptor gets closed.
2013-03-24 21:20:47 -04:00
c0d450d39e
Add locking mechanism to avoid multiple servers on one DB
2013-03-24 21:20:20 -04:00
6f14d609b2
Fix issue where bulkdata was accidentally closed
2013-03-24 21:16:18 -04:00
77ef87456f
Improve WSGI application support, fix docs
2013-03-24 21:16:03 -04:00
32d6af935c
Improve wsgi docs
2013-03-22 19:17:36 -04:00
6af3a6fc41
Add WSGI application support and documentation
2013-03-22 19:14:34 -04:00
f8a06fb3b7
Clarify default DB path in nilmdb_server.py help text
2013-03-22 15:09:37 -04:00
e790bb9e8a
Fix test failure when tests are run as root
2013-03-21 14:33:02 -04:00
89be6f5931
Add option to include interval start/end markup on extract
...
When enabled, lines like "# interval-start 1234567890123456" and "#
interval-end 1234567890123456" will be added to the data output. Note
that there may be an "interval-end" timestamp followed by an identical
"interval-start" timestamp, if the response at the nilmdb level was
split up into multiple chunks.
In general, assume contiguous data if previous_interval_end ==
new_interval_start.
2013-03-19 14:23:33 -04:00
4cdef3285d
Destroy now requires that all data has been previously removed.
...
Added new flag "-R" to command line to perform an automatic removal.
This should be the last of the ways in which a single command could
block the nilmdb thread for a long time.
2013-03-18 19:39:03 -04:00
bcd82c4d59
Limit the number of rows removed per call to nilmdb.stream_remove
...
Server class will retry as needed, as with stream_extract and
stream_intervals.
2013-03-18 18:22:45 -04:00