Patrick LeBlanc
8b29e3f9ce
Fixed a bug where Cache could delete the wrong file after a flush.
2019-05-17 12:11:57 -05:00
Patrick LeBlanc
eb3608bf70
Fixed a race in Cache usage during delete & truncate ops.
...
An object could be flushed between the existence check & the delete
done by delete() & truncate(). Made it atomic within Cache.
2019-05-17 09:07:49 -05:00
Patrick LeBlanc
8ec7e4a9af
Fixed a couple bugs in S3Storage.
...
- there was no closing of any file descriptors (!!)
- there was the typo in the connection pruning code s.t. nothing
would get pruned.
- added -lm to the libmarias3 stuff, was getting a linker error, not sure why.
2019-05-16 13:31:00 -05:00
Patrick LeBlanc
09eec724c8
Wrote simplified versions of Cache::read() and Downloader::download()
...
to make it easier to find & fix bugs. Then fixed a bug that
would result in a stalled read(). Later, it will be worth it
re-complicate things to get more lock granulatity.
2019-05-03 16:40:41 -05:00
Patrick LeBlanc
5443f8662c
Checkpointing some paranoid assertions & some fixes I noticed.
2019-04-12 15:08:01 -05:00
Patrick LeBlanc
867c12f07f
Fixed a bug in the cache.
2019-04-09 09:41:26 -05:00
Patrick LeBlanc
64bbf44227
Realized Cache::_makeSpace() could deadlock, made a mutex a recursive_mutex.
2019-04-08 10:39:30 -05:00
Patrick LeBlanc
6f234f45c0
More fixes around sync, error handling, and logging.
2019-04-05 16:38:37 -05:00
Patrick LeBlanc
1879499ad3
Fixed a few random things.
2019-04-05 14:10:59 -05:00
Patrick LeBlanc
d5dfe5ee67
Fixed all compiler warnings. For debugging builds, also made
...
the compiler treat warnings as errors.
2019-04-04 16:52:47 -05:00
Patrick LeBlanc
fe2c5b64d0
Added a couple assertions in Cache to keep us honest during testing.
...
Added a 'real' test for IOC::copyFile(). Looks good, will merge it.
2019-04-04 11:06:17 -05:00
Patrick LeBlanc
e164cbc364
Got a basic unit test to work for IOC::read()
2019-03-28 14:13:21 -05:00
Patrick LeBlanc
de1d849d14
Fixed Cache::reset()
2019-03-26 14:04:28 -05:00
Patrick LeBlanc
4ff769ab24
Got a pretty decent unit test for Sync working.
2019-03-22 12:04:36 -05:00
Patrick LeBlanc
323fd18953
Fixed some stuff, got a basic unit test for sync to work.
2019-03-21 15:23:23 -05:00
Patrick LeBlanc
07b4bdd19c
Got the synchronizer stuff to build.
2019-03-21 12:42:10 -05:00
Patrick LeBlanc
6366a54bbc
Revamped/simplified the Sync impl. Won't build yet.
2019-03-18 14:49:25 -05:00
Patrick LeBlanc
6f294b8c07
Made Cache populate itself on init.
2019-03-15 14:56:11 -05:00
Patrick LeBlanc
931cb9fb54
First cut of synchronizer is done, won't build yet.
2019-03-15 14:08:19 -05:00
Patrick LeBlanc
9906ff9efb
Check pointing some changes I made all over the place
...
working on Synchronizer. Won't build yet.
2019-03-11 16:09:07 -05:00
Patrick LeBlanc
13ade9e724
Added more Cache tests, fixed a couple bugs.
2019-03-08 10:35:36 -06:00
Patrick LeBlanc
0626b30c88
Finished initial cut of the Cache class
2019-03-07 16:14:21 -06:00
Patrick LeBlanc
df6675db01
Checkpointing additions to Cache
2019-03-07 13:18:38 -06:00
Patrick LeBlanc
1627f46ee5
Commented some debugging output
2019-03-07 08:54:48 -06:00
Patrick LeBlanc
c386881f40
Simple unit test for Cache::read(), and corresponding fixes.
2019-03-06 14:41:30 -06:00
Patrick LeBlanc
3c84e8d749
Checkpointing work on Cache::read() functionality.
...
It builds but 0% chance it works here.
2019-03-06 12:53:04 -06:00
Patrick LeBlanc
2619aa8983
Added to the unit test
...
Effectively this is just a test of Config, to make sure it's
doing envvar substitutions & number suffix expansions right.
2019-02-21 16:27:22 -06:00
Patrick LeBlanc
402a49c27a
Added 'k, m, g' suffix processing to Config class
...
Started writing the Cache class. Mostly stubs right now.
2019-02-21 16:19:29 -06:00