summaryrefslogtreecommitdiff
path: root/src/database-redis.cpp
diff options
context:
space:
mode:
authorLoic Blot <loic.blot@unix-experience.fr>2015-02-17 14:30:32 +0100
committerLoic Blot <loic.blot@unix-experience.fr>2015-02-17 14:35:44 +0100
commit718bcafd5174690a7731f9b04873e9a09f7a47b7 (patch)
treea2414ca7dde34e097bfe6fe2b4d8a1e0701d10fb /src/database-redis.cpp
parentc58d49977da5aab88f5a9d5b540c6237ca5cdcb5 (diff)
downloadminetest-718bcafd5174690a7731f9b04873e9a09f7a47b7.tar.gz
minetest-718bcafd5174690a7731f9b04873e9a09f7a47b7.tar.bz2
minetest-718bcafd5174690a7731f9b04873e9a09f7a47b7.zip
Replace std::list by std::vector into ServerMap::listAllLoadableBlocks ServerMap::listAllLoadedBlocks and their database backends.
This adds a speedup on database migration and /clearobjects command
Diffstat (limited to 'src/database-redis.cpp')
-rw-r--r--src/database-redis.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/database-redis.cpp b/src/database-redis.cpp
index b086f899d..0962e97ba 100644
--- a/src/database-redis.cpp
+++ b/src/database-redis.cpp
@@ -147,7 +147,7 @@ bool Database_Redis::deleteBlock(v3s16 blockpos)
return true;
}
-void Database_Redis::listAllLoadableBlocks(std::list<v3s16> &dst)
+void Database_Redis::listAllLoadableBlocks(std::vector<v3s16> &dst)
{
redisReply *reply;
reply = (redisReply*) redisCommand(ctx, "HKEYS %s", hash.c_str());
@@ -155,8 +155,7 @@ void Database_Redis::listAllLoadableBlocks(std::list<v3s16> &dst)
throw FileNotGoodException(std::string("redis command 'HKEYS %s' failed: ") + ctx->errstr);
if(reply->type != REDIS_REPLY_ARRAY)
throw FileNotGoodException("Failed to get keys from database");
- for(size_t i = 0; i < reply->elements; i++)
- {
+ for(size_t i = 0; i < reply->elements; i++) {
assert(reply->element[i]->type == REDIS_REPLY_STRING);
dst.push_back(getIntegerAsBlock(stoi64(reply->element[i]->str)));
}