7a3438def6
Fix namespaces.
...
Build works, except for incredis which I'm going to move out anyways.
2016-07-14 16:02:15 +01:00
a5477c99cf
Import duckhandy as a submodule and fix includes.
2016-07-14 15:52:03 +01:00
aeb8dee561
Fix detection of strings starting by ../
2016-07-14 15:36:29 +01:00
a5d9d6b716
Remove helpers from this repo.
...
They have been pulled out into a separate git repository.
Adding that as a submodule in an upcoming commit.
2016-07-14 15:27:11 +01:00
3edb83dce3
Add new shared_git_project module for cmake.
2016-07-14 14:05:19 +01:00
dc814b4d09
Move flatinsertin2dlist to postgresql backend.
...
It's the only place using that header and its use is so
specialized I struggle to even remember what it does.
2016-07-14 11:24:41 +01:00
0b10316d9e
Use lexical_cast from dinhelp, not boost.
2016-07-14 11:02:06 +01:00
4e41ea1864
Move hiredis wrapper into a separate .so
...
...but the new cmake file has some ugly hacks. Trying to work on
the problems...
2016-07-13 15:13:59 +01:00
43e53c3740
Move pending futures count's ownership to Command.
...
This is to make the count global across batches created from
the same Command.
2016-07-13 14:28:32 +01:00
960f10c370
Silence verbose feedback from commands sent to Redis.
2016-07-13 12:19:52 +01:00
853fb13495
Implement find_paths_starting_by().
2016-07-13 12:19:27 +01:00
12c062b939
Prevent values being stolen accidentally and provide proper overloads.
2016-07-13 12:17:54 +01:00
f58d7d84eb
Implement find_file_details().
2016-07-13 01:49:29 +01:00
9a84f63e54
Implement zrangebyscore().
2016-07-13 01:49:29 +01:00
a9b979dd03
Implement zadd().
2016-07-13 01:49:29 +01:00
d7c254e1a0
Implement find_set_details().
2016-07-12 20:31:57 +01:00
d10ae6846d
Bugfix - cope with empty scan replies.
...
And, don't assert if anybody tries to disconnect twice. Just do nothing.
2016-07-12 20:31:31 +01:00
4b0aa85ac2
Fix typo in enum name.
2016-07-12 19:31:52 +01:00
5e69367c2c
Implement locate_sets_in_db().
...
It's finally got fast & easy to write! Too bad it was the last one...
2016-07-12 19:01:31 +01:00
346f7ce971
Refactor code so there is less copy paste.
2016-07-12 18:50:51 +01:00
e0eaad2587
Implement locate_sets_in_db().
2016-07-12 18:08:10 +01:00
bcfd1287c9
Extract the boost::copy_range part into a new function.
...
By making a more generic function, both locate functions can
use the same code now.
2016-07-12 17:20:56 +01:00
afb2e68849
Implement locate_in_db() by hash.
2016-07-12 16:42:27 +01:00
01be1a94e5
Bugfix - files where not being stored reliably.
...
Some crashes were also happening.
2016-07-12 13:40:12 +01:00
e2122277ee
Crash fix.
2016-07-12 12:37:39 +01:00
d6682eb130
Call wrapper methods instead of plain run().
2016-07-12 12:30:53 +01:00
f4c495c5ea
New wrapper methods.
2016-07-12 12:30:17 +01:00
e0670ff433
New IncRedisBatch class.
...
Wraps Batch similarly to how IncRedis wraps Command.
2016-07-12 12:07:36 +01:00
e02b0a16f5
Implement hmget() method and use it.
2016-07-12 11:40:44 +01:00
64b87c52bb
Move *scan function from Command to IncRedis.
...
Pass down IncRedis as required to fix the build.
2016-07-12 10:55:45 +01:00
d0242e2721
New IncRedis class. Makes high-level access to Redis easier.
2016-07-12 10:43:32 +01:00
0d16e4005e
I forgot to check the tags...
2016-07-11 19:30:44 +01:00
417e7105d3
Import Sprout. This is to fix the build on clang.
...
Sprout is needed because pow, log2 and log10 are constexpr on gcc,
but that's nonstandard. Sprout provides the constexpr version of
those functions.
Also fix warnings. I still get plenty of warnings about some suggested
paretheses, but it seems to be a bug from clang. See
https://llvm.org/bugs/show_bug.cgi?id=21629 for the bug report.
2016-07-11 19:30:21 +01:00
d46cb322b9
Implement locate_in_db().
2016-07-11 18:38:08 +01:00
5566b81b45
Add a reset() method to batch.
2016-07-11 18:37:47 +01:00
645cf5858b
Implement find_all_sets.
2016-07-11 18:02:50 +01:00
bfdf849711
Implement delete_group.
2016-07-11 17:48:05 +01:00
dbd958daec
Recursively check for failures.
2016-07-11 17:47:28 +01:00
e3fa82006f
Fix off-by-one error.
...
Also use undordered_set instead of set.
2016-07-11 17:47:00 +01:00
e5007cf96f
Use GroupIDType and FileIDType instead of uint.
2016-07-11 17:46:08 +01:00
bd06158d4c
Store group id and file id instead of full keys.
2016-07-11 17:44:54 +01:00
62727d6831
Make sequence_bt more generic by taking the index type as well.
2016-07-11 16:45:46 +01:00
e70b137002
Fix sporadic failure in lexical_cast.
2016-07-11 16:45:24 +01:00
016f357704
Use boost::regex and implement delete_all_tags by regex.
...
std::regex doesn't understand the (?i) modifier, which makes it
throw an exception on regex generated by the frontend. I can't
change the frontend, or the postgre plugin would break... thankfully
boost comes to the rescue :)
2016-07-11 11:58:52 +01:00
83fe7c75d6
Implement delete all tags by id.
2016-07-10 17:15:45 +01:00
f12d498e40
Move split_tags to core.
2016-07-10 17:12:19 +01:00
4bd7c3515a
Improve lua scripts.
...
Now a "tags" field gets added to the file item. It contains a comma
separated sorted list of the tags to which the item belongs.
2016-07-10 16:52:20 +01:00
9423c4da73
Implement deleting tags by regex.
2016-07-10 14:13:41 +01:00
7451b8dc5d
Implement delete tag by id.
2016-07-10 14:10:39 +01:00
3d7632ef2c
Forgot to wait for batch to complete.
...
And batch was declared in the wrong place anyways -_-
2016-07-10 14:07:15 +01:00