filecluster 0.5.21 → 0.5.22
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/lib/daemon/global_daemon_thread.rb +6 -2
- data/lib/fc/db.rb +5 -0
- data/lib/fc/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 10e10527f25a50e402b200e74a8e130f01455254fb8532a3c21b41745634309c
|
4
|
+
data.tar.gz: 316f0184215fa4e23069de2141562aca7b5f0bd1b58d518e2bfd230e597cca74
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 619b4b7999ece7b80a2077fdd010675b61ca950c355c1fb10eaad99b39b0f50b39f865f50b52d5cfff8d8e99851ac0d204125534dc4fdcf9da3296e07de71061
|
7
|
+
data.tar.gz: db6a19f940784f459c5f4ad72cee8a580a5399be0867fe38698b08d643808accbe60718e1d2313936096ae26a0bc3afb481cd4e846e08c0c866de040763b7be5
|
data/README.md
CHANGED
@@ -64,6 +64,8 @@ Can be used the following variables:
|
|
64
64
|
|daemon_global_error_items_ttl|86400|ttl for items with error status before delete|
|
65
65
|
|daemon_global_error_items_storages_ttl|86400|ttl for items_storages with error status before delete|
|
66
66
|
|daemon_restart_period|86400|time between fc-daemon self restart|
|
67
|
+
|daemon_global_delete_limit|1000|limits number of deleted items per query|
|
68
|
+
|daemon_global_delete_dela|1|delay in seconds(float) between items delete query|
|
67
69
|
|
68
70
|
## Usage
|
69
71
|
|
@@ -96,11 +96,15 @@ class GlobalDaemonThread < BaseThread
|
|
96
96
|
$log.debug("GlobalDaemonThread: delete_deleted_items")
|
97
97
|
|
98
98
|
r = FC::DB.query("SELECT i.id FROM #{FC::Item.table_name} as i LEFT JOIN #{FC::ItemStorage.table_name} as ist ON i.id=ist.item_id WHERE i.status = 'delete' AND ist.id IS NULL")
|
99
|
-
|
100
|
-
|
99
|
+
item_ids = r.map{|row| row['id']}
|
100
|
+
limit = FC::Var.get('daemon_global_delete_limit', 1000).to_i
|
101
|
+
limit = 1000 if limit < 2
|
102
|
+
delay = FC::Var.get('daemon_global_delete_delay', 1).to_f
|
103
|
+
item_ids.each_slice(limit) do |ids|
|
101
104
|
ids = ids.join(',')
|
102
105
|
FC::DB.query("DELETE FROM #{FC::Item.table_name} WHERE id in (#{ids})")
|
103
106
|
$log.info("GlobalDaemonThread: delete items #{ids}")
|
107
|
+
sleep delay if delay > 0
|
104
108
|
end
|
105
109
|
end
|
106
110
|
|
data/lib/fc/db.rb
CHANGED
@@ -343,5 +343,10 @@ module FC
|
|
343
343
|
def self.migrate_6
|
344
344
|
FC::DB.query("ALTER TABLE #{@prefix}storages ADD COLUMN http_check_time int(11) DEFAULT 0")
|
345
345
|
end
|
346
|
+
|
347
|
+
def self.migrate_7
|
348
|
+
FC::DB.query("INSERT IGNORE INTO #{@prefix}vars SET name='daemon_global_delete_limit', val='1000', descr='limits number of deleted items per query'")
|
349
|
+
FC::DB.query("INSERT IGNORE INTO #{@prefix}vars SET name='daemon_global_delete_delay', val='1', descr='delay in seconds between items delete query'")
|
350
|
+
end
|
346
351
|
end
|
347
352
|
end
|
data/lib/fc/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: filecluster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.22
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-01-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mysql2
|