Lines 1-27javascript
3 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
4 * Licensed under the MIT License.
6Object.defineProperty(exports, "__esModule", { value: true });
7exports.ConnectionStateHandler = exports.ConnectionStateCatchup = exports.createConnectionStateHandlerCore = exports.createConnectionStateHandler = void 0;
8const core_interfaces_1 = require("@fluidframework/core-interfaces");
9const internal_1 = require("@fluidframework/core-utils/internal");
HighCopied Package Dependency Bridge
Package metadata claims a different repository identity while copied source loads a runtime dependency bridge.
dist/connectionStateHandler.jsView on unpkg · L7 10const internal_2 = require("@fluidframework/telemetry-utils/internal");
11const catchUpMonitor_js_1 = require("./catchUpMonitor.js");
12const connectionState_js_1 = require("./connectionState.js");
13// Based on recent data, it looks like majority of cases where we get stuck are due to really slow or
14// timing out ops fetches. So attempt recovery infrequently. Also fetch uses 30 second timeout, so
15// if retrying fixes the problem, we should not see these events.
16const JoinOpTimeoutMs = 45000;
17// Timeout waiting for "self" join signal, before giving up
18const JoinSignalTimeoutMs = 10000;
19function createConnectionStateHandler(inputs, deltaManager, clientId) {
20 const config = inputs.mc.config;
21 return createConnectionStateHandlerCore(config.getBoolean("Fluid.Container.DisableCatchUpBeforeDeclaringConnected") !== true, // connectedRaisedWhenCaughtUp
22 config.getBoolean("Fluid.Container.DisableJoinSignalWait") !== true, // readClientsWaitForJoinSignal
23 inputs, deltaManager, clientId);
25exports.createConnectionStateHandler = createConnectionStateHandler;
26function createConnectionStateHandlerCore(connectedRaisedWhenCaughtUp, readClientsWaitForJoinSignal, inputs, deltaManager, clientId) {
27 const factory = (handler) => new ConnectionStateHandler(handler, readClientsWaitForJoinSignal, clientId);