gardners
2252fdcaa7
created tool for automatically finding IN()s without matching
...
OUT()s or where return() is used instead of RETURN().
Added OUT() to end of all functions using IN() that lacked it to
make it easier to statically analyse this invariant.
Fixed several return instead of RETURNs detected through use of
this tool. #49
2013-02-20 16:18:56 +10:30
gardners
641d749ab4
Create files for large rhizome bundles
...
- configurable size threashold
2013-02-20 15:36:32 +10:30
gardners
f465f3a9ee
Add lots of profiling to assist in debugging
...
- made some debug output conditional.
- make it possible to debug slip decoding without getting swamped by other output.
- Improve reporting of unnamed schedule() calls.
- always collect performance statistics, and report on any excess
use (>1sec in every 3), even if debug.timing is not enabled.
- include file size information in Rhizome transfer messages.
- reduce output when debug.rhizome_rx is set.
2013-02-20 15:36:30 +10:30
gardners
506ceea309
log when BAR lookups are slow.
2013-02-20 15:36:29 +10:30
gardners
83625198cb
tweak BAR lookup filter in light of packets arriving with 20 BARs
...
at a time, which can take 4seconds(!) to process on a WR703N.
2013-02-20 15:36:29 +10:30
gardners
8befcf7c11
create indexes for ID and VERSION on MANIFESTS table to reduce the
...
time it takes to lookup whether BARs are interesting.
2013-02-20 15:36:29 +10:30
gardners
17ea1b69b3
don't look at all BARs if we are too slow.
2013-02-20 15:36:29 +10:30
Jeremy Lakeman
e4d6520c46
Don't request manifests that are already in the fetch queue
2013-02-20 15:36:25 +10:30
Jeremy Lakeman
ba1800012e
Only advertise BAR's on an alarm
...
- we no longer hit the database for every outgoing packet, attempting to announce bundles
- we no longer advertise manifests periodically
- when an interesting bar arrives, we ask for the manifest to be announced, which uses the existing packet format
2013-02-20 15:36:23 +10:30
Jeremy Lakeman
3a93fee8a5
New JNI interface to better support cursor result sets
2013-01-23 14:43:50 +10:30
Jeremy Lakeman
ad01836d0e
Use database query to respond to rhizome list, add name argument
2013-01-17 11:45:45 +10:30
Jeremy Lakeman
6dcc434541
Add more manifest fields as database columns
2013-01-16 10:56:09 +10:30
Jeremy Lakeman
b25ff45438
Importing the same bundle twice returns duplicate flag
2013-01-15 10:32:48 +10:30
Jeremy Lakeman
09617b9ce0
Set sqlite temp directory explicitly, increase database timeout
2013-01-06 19:43:14 +10:30
Jeremy Lakeman
7978bc0b1a
Add logging for sqlite errors
2013-01-06 14:18:36 +10:30
Jeremy Lakeman
c7cf80b352
Use sqlite user schema version to remember state
2013-01-06 13:04:49 +10:30
Jeremy Lakeman
e26522bdc6
Minor improvements to command line time measurements
2013-01-03 14:16:33 +10:30
Jeremy Lakeman
2e761c17fa
Only consider duplicate manifests that we can re-author
2013-01-03 12:23:50 +10:30
Jeremy Lakeman
2967d1e00f
Don't check for duplicates if an existing id has been supplied
2013-01-03 11:18:30 +10:30
Jeremy Lakeman
8b045dd1a6
Extract files based on the manifest id
...
Renamed rhizome extract file to rhizome dump file
Added rhizome extract file [manifest] [filepath] [pins]
Modified tests to use the appropriate command, assuming that MeshMS payloads will be encrypted
2013-01-02 12:58:05 +10:30
Jeremy Lakeman
6c7ba438a3
Refactor rhizome extract manifest into more useful methods
2013-01-02 11:15:03 +10:30
Jeremy Lakeman
a492c05d64
Re-add database cleanup
2012-12-31 15:09:12 +10:30
Jeremy Lakeman
898cddfcd3
Tidy up rhizome extract return code
2012-12-31 13:21:37 +10:30
Jeremy Lakeman
5b48a85f7d
Don't clean up database on every open call
2012-12-28 13:17:04 +10:30
Jeremy Lakeman
c8fbef9016
Fix transaction error checking
2012-12-28 12:47:21 +10:30
Jeremy Lakeman
04eaf99243
Added transaction around file blob creation to ensure rowid is correctly retrieved
2012-12-28 12:10:42 +10:30
Jeremy Lakeman
57439b2162
Rhizome extract file will now log an error on hash mismatch
2012-12-28 11:34:22 +10:30
Jeremy Lakeman
3f45623d04
New stress test, rhizome add while transferring
2012-12-27 16:51:31 +10:30
Jeremy Lakeman
72bc597e92
Add encryption support to writing of rhizome content
2012-12-27 09:39:10 +10:30
Jeremy Lakeman
f64de66b34
Refactor add via HTTP to be equivalent to command line add
2012-12-20 15:36:07 +10:30
Jeremy Lakeman
181d1363f1
Migrate command line import to new storage api
2012-12-19 16:16:49 +10:30
Jeremy Lakeman
1a26a3e452
Reduce log spam
2012-12-12 10:02:43 +10:30
Andrew Bettison
5985df751d
Overhaul debug flags
...
Replace debugflags_t and DEBUG_XXX bit masks with config schema "debug.xxx"
entries.
No more support for "debug.all".
2012-12-11 15:59:46 +10:30
Andrew Bettison
08fc41f893
Merge branch 'master'
2012-12-07 14:12:43 +10:30
Andrew Bettison
8425882ffc
Merge branch 'newconfig' into 'master'
...
Conflicts:
commandline.c
conf.h
dataformats.c
log.h
overlay_address.c
overlay_interface.c
packetformats.c
rhizome.c
serval.h
tests/directory_service
vomp_console.c
2012-12-07 14:09:55 +10:30
gardners
be9cefc5ba
fixed bug when reporting hash of files during rhizome extract file.
2012-12-07 13:57:26 +10:30
gardners
f827c7c1c8
fixed various problems following split of files into fileblobs
2012-12-04 16:47:45 +10:30
gardners
3ace113be1
fixed error in orphan file cleanup sql statement.
2012-12-04 16:19:01 +10:30
gardners
fc0c134cbf
added speed indication on completion of rhizome transfer.
...
split files table into files and fileblobs to avoid pathological
delays when updating datavalid flag in files table (sqlite copies
the whole table row, including possibly large blob).
2012-12-04 16:03:56 +10:30
Andrew Bettison
caa209fc1d
Integrate new config into servald
...
Not passing any tests yet, but compiles and links and simple uses do not
SEGV.
2012-12-04 14:12:28 +10:30
gardners
de7a4ce2e3
fixed bugs with rhizome streaming direct to database.
...
that now works, but rhizome direct pull now fails.
2012-12-03 20:51:14 +10:30
gardners
adda5b5571
fixed bug when dropping incomplete file fetch row.
2012-12-03 17:10:21 +10:30
gardners
b39c71b206
factor out code for creating empty blob for inserting file into.
2012-12-03 16:19:01 +10:30
gardners
3e7e29f5f5
improve handling of incomplete files in rhizome database (clean
...
all out on start up, but only clean out specific ones when inserting).
2012-12-03 12:20:50 +10:30
Andrew Bettison
c4b90a108b
Fix compile warnings on Solaris (gcc 4.4)
2012-11-28 14:13:25 +10:30
Andrew Bettison
21a0f31ae4
Merge branch 'whacktmps' into 'master'
2012-11-15 13:41:45 +10:30
Andrew Bettison
b04564b6c9
Fix bug in 'rhizome list' command
...
Missing RETURN(), was using 'return' instead.
2012-11-12 14:38:50 +10:30
Andrew Bettison
3d55a019c0
Quieten some unconditional DEBUG messages
2012-11-08 10:23:57 +10:30
Andrew Bettison
3c7eb7b058
Add missing sqlite3_blob_close()
...
Fixes #33 .
2012-10-30 16:12:40 +10:30
Jeremy Lakeman
de95bb3971
Gracefully disable rhizome if the database cannot be opened
...
- close database after every command line operation
- don't cache rhizome enabled configuration
- don't send advertisements unless the database is open and the web server is running
- don't provess advertisements unless the database is open
2012-10-29 13:05:03 +10:30