aboutsummaryrefslogtreecommitdiff
path: root/weed/filer/redis_lua/stored_procedure/delete_entry.lua
diff options
context:
space:
mode:
authorChris Lu <chrislusf@users.noreply.github.com>2022-02-15 12:10:34 -0800
committerGitHub <noreply@github.com>2022-02-15 12:10:34 -0800
commitaa7fc299b87a1b3e7e787733f9d46c79f9d69619 (patch)
tree25cd83628cd4d9d171c0083400c966aba6872b8a /weed/filer/redis_lua/stored_procedure/delete_entry.lua
parent5eb3a7e4665f1e99ac040127a51bf1afeab3d837 (diff)
parentb5ec3467003b2becca9a91f9cf56ab6b24ede25e (diff)
downloadseaweedfs-aa7fc299b87a1b3e7e787733f9d46c79f9d69619.tar.xz
seaweedfs-aa7fc299b87a1b3e7e787733f9d46c79f9d69619.zip
Merge pull request #2676 from banjiaojuhao/add_filer_store-redis_lua
FilerStore: add redis_lua
Diffstat (limited to 'weed/filer/redis_lua/stored_procedure/delete_entry.lua')
-rw-r--r--weed/filer/redis_lua/stored_procedure/delete_entry.lua19
1 files changed, 19 insertions, 0 deletions
diff --git a/weed/filer/redis_lua/stored_procedure/delete_entry.lua b/weed/filer/redis_lua/stored_procedure/delete_entry.lua
new file mode 100644
index 000000000..445337c77
--- /dev/null
+++ b/weed/filer/redis_lua/stored_procedure/delete_entry.lua
@@ -0,0 +1,19 @@
+-- KEYS[1]: full path of entry
+local fullpath = KEYS[1]
+-- KEYS[2]: full path of entry
+local fullpath_list_key = KEYS[2]
+-- KEYS[3]: dir of the entry
+local dir_list_key = KEYS[3]
+
+-- ARGV[1]: isSuperLargeDirectory
+local isSuperLargeDirectory = ARGV[1] == "1"
+-- ARGV[2]: name of the entry
+local name = ARGV[2]
+
+redis.call("DEL", fullpath, fullpath_list_key)
+
+if not isSuperLargeDirectory and name ~= "" then
+ redis.call("ZREM", dir_list_key, name)
+end
+
+return 0 \ No newline at end of file