Commit Graph

98 Commits

Author SHA1 Message Date
gardners
b31817f564 fixed signed/unsigned comparison bug in rhizome manifest cache lookup
that was probably stopping some manifest retrievals for meshms.
debugging tweaks.
2012-05-28 13:51:24 +02:00
gardners
0cccb5bf83 debug cleanup 2012-05-28 13:51:23 +02:00
gardners
6861b9cd1b bug fix for rhizome manifest cache (hopefully realises when
database has been updated now).
2012-05-28 13:51:23 +02:00
Jeremy Lakeman
0f214ed46f Adjust database schema 2012-05-28 19:24:02 +09:30
gardners
884e427fbb work towards making manifests only accept UPPERCASE hex strings
(mixing them between versions of manifests causes confusion).
2012-05-27 17:56:11 +02:00
gardners
07fc646fed various fixes to rhizome re-fetch logic after a failed partial fetch
(which seems to be what is tripping things up)
2012-05-27 17:29:50 +02:00
gardners
40ed766880 debugging fiddles. 2012-05-27 08:52:36 +02:00
gardners
30e53f963c fixed various manifest synchronisation bugs, including probably
the main one that was stopping meshms (large manifests would
practically never get advertised under certain (common) conditions).
2012-05-27 08:31:48 +02:00
gardners
7d345ee2d1 made rhizome manifest cache code a little simpler and saner. 2012-05-26 14:36:12 +02:00
gardners
b0dca7e03f merged in latest changes from team. 2012-05-26 11:36:18 +02:00
Andrew Bettison
d215d90b40 Refactored some rhizome db SQL code
Added sqlite_exec_void() function, so that sqlite_exec_int64() can return
an error if no rows are found instead of 0, which can be misleading.
2012-05-25 19:42:45 +09:30
Andrew Bettison
bea9188cd5 Fix another manifest leak
Add manifest alloc/free debug logging to help, 'debug.manifests' option
2012-05-25 17:01:56 +09:30
Andrew Bettison
214d20f27e Fix a couple of bugs found by clang 2012-05-25 16:29:12 +09:30
Andrew Bettison
c847478140 Add some helpful debug logging 2012-05-24 18:46:33 +09:30
Andrew Bettison
30009c2c71 Fix one cause of manifest struct leakage 2012-05-24 17:28:35 +09:30
Andrew Bettison
3b00110c49 Fix bug in rhizome_bundle_import()
Introduced by recent rhizome import path improvements
2012-05-24 13:00:31 +09:30
Andrew Bettison
24c00091f5 Fix bug in conversion to rhizome uppercase hex DB keys 2012-05-24 11:37:03 +09:30
Andrew Bettison
fa26b53294 Fix SEGV bug
rhizome_write_manifest_file() was not checking for NULL fopen() result
Standardise rhizome "import" directory pathname handling
2012-05-24 11:28:32 +09:30
Andrew Bettison
60e4209b88 Diagnose and fix rhizome MeshMS 2012-05-23 19:01:07 +09:30
Andrew Bettison
54d456e540 Fix and reinstate FORM_RHIZOME_DATASTORE_PATH() 2012-05-23 18:11:34 +09:30
Andrew Bettison
1af9125392 All rhizome database keys are uppercase hex
FILES.id, MANIFESTS.id, FILEMANIFESTS.fileid, FILEMANIFESTS.manifestid
Named constants for hex and binary ID sizes
2012-05-23 16:04:00 +09:30
gardners
299cb92952 further output cleanups. 2012-05-22 17:08:12 +09:30
gardners
6a83f2434f cleaned up some debug output, among other things. 2012-05-22 17:04:24 +09:30
gardners
e3387fbecf periodic sucking in from rhizome prioritised list now works. 2012-05-22 15:57:18 +09:30
gardners
f528110257 almost have priority pre-listing of bundles for rhizome working. 2012-05-22 15:57:18 +09:30
gardners
0abc7ff96e added code to create and maintain priority download list for
rhizome, so that we get things in a sensible order.
2012-05-22 15:57:18 +09:30
gardners
8e9396419c adding ignored manifest list to let us ignore repeated offerings
of broken manifests without wasting effort.
2012-05-22 14:15:35 +09:30
gardners
29bb86d9e7 first cut at supressing rhizome activity during calls. 2012-05-22 13:05:29 +09:30
gardners
fd343ca5b0 debug fiddles etc. 2012-05-22 11:45:54 +09:30
gardners
a2c3ffde6b make sure import path exists, use WHY() macros for all output
to help debugging on android.
2012-05-22 10:01:17 +09:30
gardners
f562a6361d completed working around strbuf_* bugs so that rhizome works again. 2012-05-21 22:45:08 +09:30
gardners
3164a76b1e fixed manifest structure leak when failing to write a manifest. 2012-05-21 22:41:13 +09:30
gardners
231058a218 fixed rhizome transfer bugs. 2012-05-17 11:39:12 +09:30
Andrew Bettison
b02e9b9ac4 Overhaul rhizome datastore path code
Create datastore directory and all parent dirs if it does not exist
More robust error checking and buffer overflow protection
New mkdirs() and mkdirsn() functions
2012-05-14 18:37:32 +09:30
gardners
cd65e47be1 fixed segfault bug in rhizome fetch.
(serval-node/import directory needs to exist to fetch files,
 maybe the code should just make the directory if not present)
2012-05-11 19:07:27 +09:30
Andrew Bettison
836f8332e8 Replace perror() with WHY_perror()
Puts more diagnostics to Android log
2012-05-08 14:53:34 +09:30
Andrew Bettison
de88d3db21 Make "dna rhizome add" work for more test cases
- adding a bundle using an existing manifest with an incorrect payload should
   fail with an error
 - adding a bundle using an existing manifest to update the payload to a new
   version should succeed
 - improve format of "dna rhizome list" output to one bundle per line
2012-04-13 18:03:19 +09:30
Andrew Bettison
575ef91c45 Include <time.h> to eliminate compile warning 2012-04-12 18:33:43 +09:30
gardners
1eb4c34015 Renamed mphlr.h to serval.h
(also some temporary debugging has been added in some places)
2012-02-23 12:45:42 +10:30
gardners
423fb589b9 Bug fixes to rhizome manifest:version cache.
Lookup now really happens before database query.
2012-01-27 17:18:14 +10:30
gardners
45e8d68522 Added a manifest:version cache to avoid database lookups when being
offered manifests, thus saving cpu/energy.
2012-01-27 17:11:18 +10:30
gardners
c0676fd530 Fixed various bugs and memory leaks in rhizome file fetching.
Now successfully fetches manifests for files we already have in
the database, using the existing database copy of the file.
Also added filter to stop same file being fetched more than once at
same time..
2012-01-27 16:21:48 +10:30
gardners
41daec5c96 Fixed all zeroes manifestid problem.
Removed incorrectly pasted piece of code.
Various debug cleanups along the way.
2012-01-27 15:38:06 +10:30
gardners
cdf1c45da4 Rhizome fetching over http now receives files and imports them.
Still some wrinkles to work out.
2012-01-13 21:13:17 +10:30
gardners
f862ba0af6 Rhizome file transfer via http getting close
(send side needs to send file body)
2012-01-13 17:21:06 +10:30
gardners
7bcc852279 Fixed bug with non-blocking call to connect() for integrated http client.
Cleaned up some debugging stuff.
2012-01-12 17:02:22 +10:30
gardners
bf9f8559f1 Various debug fiddles and conversion from select() to poll()
(although poll() still doesn't let us monitor ordinary files
which is silly.)
2012-01-12 16:47:24 +10:30
gardners
abb3021986 Added refactored rhizome code in separate files. 2012-01-12 14:08:24 +10:30