1
0
Fork 0
mirror of https://github.com/KingDuckZ/dindexer.git synced 2024-11-25 00:53:43 +00:00
Commit graph

422 commits

Author SHA1 Message Date
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
77fb699ec2 Drop unneeded (and wrong) prototype. 2016-07-10 14:02:42 +01:00
de00a4b469 Add and load dele_tag_if_in_set Lua script. 2016-07-10 14:01:43 +01:00
af7443c48b Implement tagging by regex. 2016-07-10 14:00:51 +01:00
9c2f1d7403 Move tagging by id into a separate file. 2016-07-10 13:59:45 +01:00
7b77913b49 Allow passing a pattern to *scan commands. 2016-07-10 13:57:16 +01:00
01d587b7da Move redis range to record data struct into a separate file. 2016-07-10 13:56:46 +01:00
d6e95eac8e Enable tagging by id in Redis backend. 2016-07-09 14:57:58 +01:00
446d173ad3 Fix broken static_assert. 2016-07-09 14:57:30 +01:00