Jim Paris
eb8037ee3c
Add a description for the rocket interface
11 years ago
Jim Paris
fadb84d703
Move ascii formatting into nilmdb thread via rocket interface
11 years ago
Jim Paris
9d0d2415be
Test bulkdata a little more carefully
11 years ago
Jim Paris
130dae0734
Add extract_string to pyrocket
11 years ago
Jim Paris
402234dfc3
Better layout handling in pyrocket
11 years ago
Jim Paris
4406d51a98
First pass at Python implementation of rocket
11 years ago
Jim Paris
9b6de6ecb7
Replace old layout strings everywhere
11 years ago
Jim Paris
c512631184
bulkdata: Build up rows and write to disk all at once
11 years ago
Jim Paris
19d27c31bc
Fix streaming requests like stream_extract
11 years ago
Jim Paris
28310fe886
Add test for extents
11 years ago
Jim Paris
1ccc2bce7e
Add commandline support for listing extents
11 years ago
Jim Paris
00237e30b2
Add "extent" option to stream_list in client, server, and nilmdb
11 years ago
Jim Paris
521ff88f7c
Support 'nilmtool help command' just like 'nilmtool command --help'
11 years ago
Jim Paris
64897a1dd1
Change port from 12380 -> 32180 when running tests
This is so tests can be run without interfering with a normal server.
11 years ago
Jim Paris
41ce8480bb
cmdline: Support NILMDB_URL environment variable for default URL
11 years ago
Jim Paris
204a6ecb15
Optimize bulkdata.append() by postponing flushes & mmap resize
Rather than flushing and resizing after each row is written to the
file, have the file object iterate by itself and do all of the
writes. Only flush and resize the mmap after finishing. This should
be pretty safe to do, especially since nothing is concurrent at the
moment.
11 years ago
Jim Paris
5db3b186a4
Make test_mustclose more complete
11 years ago
Jim Paris
fe640cf421
Remove must_close verification wrappers on bulkdata
At this point we know that the close() behavior is correct, so it's
not worth slowing everything down for these checks.
11 years ago
Jim Paris
ca67c79fe4
Improve test_layout_speed
11 years ago
Jim Paris
8917bcd4bf
Fix test case failures due to increased client chunk size
11 years ago
Jim Paris
a75ec98673
Slight speed improvements in layout.pyx
11 years ago
Jim Paris
e476338d61
Remove outdated numpy dependency
11 years ago
Jim Paris
d752b882f2
Bump up block sizes in client
This will help amortize the sqlite synchronization costs.
11 years ago
Jim Paris
ade27773e6
Add --nosync option to nilmdb-server script
11 years ago
Jim Paris
0c1a1d2388
Fix nilmdb-server script
11 years ago
Jim Paris
e3f335dfe5
Move time parsing from cmdline into nilmdb.utils.time
11 years ago
Jim Paris
7a191c0ebb
Fix versioneer to update versions on install
11 years ago
Jim Paris
55bf11e393
Fix error when pyximport is too old
11 years ago
Jim Paris
e90dcd10f3
Update README and setup.py with python-requests dependency
11 years ago
Jim Paris
7d44f4eaa0
Cleanup Makefile; make tests run through setup.py when outside emacs
11 years ago
Jim Paris
f541432d44
Merge branch 'requests'
11 years ago
Jim Paris
aa4e32f78a
Merge branch 'curl-multi'
11 years ago
Jim Paris
2bc1416c00
Merge branch 'fixups'
11 years ago
Jim Paris
68bbbf757d
Remove nilmdb.utils.urllib
python-requests seems to handle UTF-8 just fine.
11 years ago
Jim Paris
3df96fdfdd
Reorder code
11 years ago
Jim Paris
740ab76eaf
Re-add persistent connection test for Requests based httpclient
11 years ago
Jim Paris
ce13a47fea
Save full response object for tests
11 years ago
Jim Paris
50a4a60786
Replace pyCurl with Requests
Only tested with v1.1.0. It's not clear how well older versions will
work.
11 years ago
Jim Paris
14afa02db6
Temporarily remove curl-specific keepalive tests
11 years ago
Jim Paris
cc990d6ce4
Test persistent connections
11 years ago
Jim Paris
0f5162e0c0
Always use the curl multi interface
.. even for non-generator requests
11 years ago
Jim Paris
b26cd52f8c
Work around curl multi bug
11 years ago
Jim Paris
236d925a1d
Make sure we use POST when requested, even if the body is empty
11 years ago
Jim Paris
a4a4bc61ba
Switch to using pycurl.Multi instead of Iteratorizer
11 years ago
Jim Paris
3d82888580
Enforce method types, and require POST for actions that change things.
This is a pretty big change that will render existing clients unable
to modify the database, but it's important that we use POST or PUT
instead of GET for anything that may change state, in case this
is ever put behind a cache.
11 years ago
Jim Paris
749b878904
Add an explicit lock to httpclient's public methods
This is to prevent possible reentrancy problems.
11 years ago
Jim Paris
f396e3934c
Remove cherrypy version check
Dependencies should be handled by installation, not at runtime.
11 years ago
Jim Paris
dd7594b5fa
Fix issue where PUT responses were being dropped
PUTs generate a "HTTP/1.1 100 Continue" response before the
"HTTP/1.1 200 OK" response, and so we were mistakenly picking up
the 100 status code and not returning any data. Improve the
header callback to correctly process any number of status codes.
11 years ago
Jim Paris
4ac1beee6d
layout: allow zero and negative timestamps in parser
11 years ago
Jim Paris
8c0ce736d8
Disable use of signals in Curl
Various places suggest that this is needed for better thread-safety,
and the only drawback is that some systems cannot timeout properly on
DNS lookups.
11 years ago