braidfs 0.0.97 → 0.0.98
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +6 -4
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -14,7 +14,8 @@ var temp_folder = `${braidfs_config_dir}/temp`
|
|
|
14
14
|
|
|
15
15
|
var config = null,
|
|
16
16
|
watcher_misses = 0,
|
|
17
|
-
reconnect_rate_limiter = new ReconnectRateLimiter()
|
|
17
|
+
reconnect_rate_limiter = new ReconnectRateLimiter(() =>
|
|
18
|
+
config?.reconnect_delay_ms ?? 3000)
|
|
18
19
|
|
|
19
20
|
if (require('fs').existsSync(sync_base)) {
|
|
20
21
|
try {
|
|
@@ -40,6 +41,7 @@ if (require('fs').existsSync(sync_base)) {
|
|
|
40
41
|
cookies: { 'example.com': 'secret_pass' },
|
|
41
42
|
port: 45678,
|
|
42
43
|
scan_interval_ms: 1000 * 20,
|
|
44
|
+
reconnect_delay_ms: 1000 * 3
|
|
43
45
|
}
|
|
44
46
|
require('fs').mkdirSync(braidfs_config_dir, { recursive: true })
|
|
45
47
|
require('fs').writeFileSync(braidfs_config_file, JSON.stringify(config, null, 4))
|
|
@@ -1010,7 +1012,7 @@ async function ensure_path(path) {
|
|
|
1010
1012
|
}
|
|
1011
1013
|
}
|
|
1012
1014
|
|
|
1013
|
-
function ReconnectRateLimiter(
|
|
1015
|
+
function ReconnectRateLimiter(get_wait_time) {
|
|
1014
1016
|
var self = {}
|
|
1015
1017
|
|
|
1016
1018
|
self.conns = new Map() // Map<host, Set<url>>
|
|
@@ -1027,7 +1029,7 @@ function ReconnectRateLimiter(wait_time = 1000) {
|
|
|
1027
1029
|
var now = Date.now()
|
|
1028
1030
|
var my_last_turn = () => self.conns.size === 0 ? self.last_turn : self.qs[0].last_turn
|
|
1029
1031
|
|
|
1030
|
-
while (self.qs.length && now >= my_last_turn() +
|
|
1032
|
+
while (self.qs.length && now >= my_last_turn() + get_wait_time()) {
|
|
1031
1033
|
var x = self.qs.shift()
|
|
1032
1034
|
if (!x.turns.length) {
|
|
1033
1035
|
self.host_to_q.delete(x.host)
|
|
@@ -1041,7 +1043,7 @@ function ReconnectRateLimiter(wait_time = 1000) {
|
|
|
1041
1043
|
|
|
1042
1044
|
if (self.qs.length)
|
|
1043
1045
|
self.timer = setTimeout(process, Math.max(0,
|
|
1044
|
-
my_last_turn() +
|
|
1046
|
+
my_last_turn() + get_wait_time() - now))
|
|
1045
1047
|
}
|
|
1046
1048
|
|
|
1047
1049
|
self.get_turn = async (url) => {
|