@514labs/moose-lib 0.6.267-ci-2-g580f80e4 → 0.6.267-ci-3-g2d546d7e
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/dist/browserCompatible.js.map +1 -1
- package/dist/browserCompatible.mjs.map +1 -1
- package/dist/dmv2/index.js.map +1 -1
- package/dist/dmv2/index.mjs.map +1 -1
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +48 -0
- package/dist/index.mjs.map +1 -1
- package/dist/moose-runner.js +89 -12
- package/dist/moose-runner.js.map +1 -1
- package/dist/moose-runner.mjs +89 -12
- package/dist/moose-runner.mjs.map +1 -1
- package/package.json +1 -1
package/dist/moose-runner.mjs
CHANGED
|
@@ -962,8 +962,15 @@ var runApis = async (config) => {
|
|
|
962
962
|
const apisCluster = new Cluster({
|
|
963
963
|
maxWorkerCount: (config.workerCount ?? 0) > 0 ? config.workerCount : void 0,
|
|
964
964
|
workerStart: async () => {
|
|
965
|
+
const workerInfo = `[Worker ${process.pid}]`;
|
|
966
|
+
const startTime = Date.now();
|
|
967
|
+
console.log(`${workerInfo} workerStart: beginning initialization`);
|
|
965
968
|
let temporalClient;
|
|
966
969
|
if (config.temporalConfig) {
|
|
970
|
+
const temporalStart = Date.now();
|
|
971
|
+
console.log(
|
|
972
|
+
`${workerInfo} workerStart: initializing Temporal client...`
|
|
973
|
+
);
|
|
967
974
|
temporalClient = await getTemporalClient(
|
|
968
975
|
config.temporalConfig.url,
|
|
969
976
|
config.temporalConfig.namespace,
|
|
@@ -971,29 +978,51 @@ var runApis = async (config) => {
|
|
|
971
978
|
config.temporalConfig.clientKey,
|
|
972
979
|
config.temporalConfig.apiKey
|
|
973
980
|
);
|
|
981
|
+
console.log(
|
|
982
|
+
`${workerInfo} workerStart: Temporal client initialized in ${Date.now() - temporalStart}ms`
|
|
983
|
+
);
|
|
974
984
|
}
|
|
985
|
+
const clickhouseStart = Date.now();
|
|
986
|
+
console.log(
|
|
987
|
+
`${workerInfo} workerStart: initializing ClickHouse client...`
|
|
988
|
+
);
|
|
975
989
|
const clickhouseClient = getClickhouseClient(
|
|
976
990
|
toClientConfig(config.clickhouseConfig)
|
|
977
991
|
);
|
|
992
|
+
console.log(
|
|
993
|
+
`${workerInfo} workerStart: ClickHouse client initialized in ${Date.now() - clickhouseStart}ms`
|
|
994
|
+
);
|
|
978
995
|
let publicKey;
|
|
979
996
|
if (config.jwtConfig?.secret) {
|
|
980
|
-
|
|
997
|
+
const jwtStart = Date.now();
|
|
998
|
+
console.log(`${workerInfo} workerStart: importing JWT public key...`);
|
|
981
999
|
publicKey = await jose.importSPKI(config.jwtConfig.secret, "RS256");
|
|
1000
|
+
console.log(
|
|
1001
|
+
`${workerInfo} workerStart: JWT key imported in ${Date.now() - jwtStart}ms`
|
|
1002
|
+
);
|
|
982
1003
|
}
|
|
983
|
-
const
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
1004
|
+
const routerStart = Date.now();
|
|
1005
|
+
console.log(`${workerInfo} workerStart: creating main router...`);
|
|
1006
|
+
const router = await createMainRouter(
|
|
1007
|
+
publicKey,
|
|
1008
|
+
clickhouseClient,
|
|
1009
|
+
temporalClient,
|
|
1010
|
+
config.apisDir,
|
|
1011
|
+
config.enforceAuth,
|
|
1012
|
+
config.isDmv2,
|
|
1013
|
+
config.jwtConfig
|
|
1014
|
+
);
|
|
1015
|
+
console.log(
|
|
1016
|
+
`${workerInfo} workerStart: main router created in ${Date.now() - routerStart}ms`
|
|
993
1017
|
);
|
|
1018
|
+
const serverStart = Date.now();
|
|
1019
|
+
console.log(`${workerInfo} workerStart: creating HTTP server...`);
|
|
1020
|
+
const server = http2.createServer(router);
|
|
994
1021
|
const port = config.proxyPort !== void 0 ? config.proxyPort : 4001;
|
|
995
1022
|
server.listen(port, "localhost", () => {
|
|
996
|
-
console.log(
|
|
1023
|
+
console.log(
|
|
1024
|
+
`${workerInfo} Server running on port ${port} (total startup: ${Date.now() - startTime}ms)`
|
|
1025
|
+
);
|
|
997
1026
|
});
|
|
998
1027
|
return server;
|
|
999
1028
|
},
|
|
@@ -1624,15 +1653,43 @@ var dumpMooseInternal = async () => {
|
|
|
1624
1653
|
var indexLoadState = "unloaded";
|
|
1625
1654
|
var indexLoadPromise = null;
|
|
1626
1655
|
var loadIndex = async () => {
|
|
1656
|
+
const workerInfo = `[Worker ${process2.pid}]`;
|
|
1627
1657
|
if (indexLoadState === "loaded") {
|
|
1658
|
+
console.log(
|
|
1659
|
+
`${workerInfo} loadIndex: already loaded, returning immediately`
|
|
1660
|
+
);
|
|
1628
1661
|
return;
|
|
1629
1662
|
}
|
|
1630
1663
|
if (indexLoadState === "loading" && indexLoadPromise) {
|
|
1664
|
+
console.log(
|
|
1665
|
+
`${workerInfo} loadIndex: already loading, waiting for completion`
|
|
1666
|
+
);
|
|
1667
|
+
return indexLoadPromise;
|
|
1668
|
+
}
|
|
1669
|
+
console.log(`${workerInfo} loadIndex: starting load process`);
|
|
1670
|
+
const startTime = Date.now();
|
|
1671
|
+
const delay = Math.random() * 500;
|
|
1672
|
+
console.log(
|
|
1673
|
+
`${workerInfo} loadIndex: waiting ${delay.toFixed(0)}ms to stagger load`
|
|
1674
|
+
);
|
|
1675
|
+
await new Promise((resolve2) => setTimeout(resolve2, delay));
|
|
1676
|
+
if (indexLoadState === "loading" && indexLoadPromise) {
|
|
1677
|
+
console.log(
|
|
1678
|
+
`${workerInfo} loadIndex: another worker started loading during delay, waiting`
|
|
1679
|
+
);
|
|
1631
1680
|
return indexLoadPromise;
|
|
1632
1681
|
}
|
|
1682
|
+
if (indexLoadState === "loaded") {
|
|
1683
|
+
console.log(
|
|
1684
|
+
`${workerInfo} loadIndex: loaded by another worker during delay`
|
|
1685
|
+
);
|
|
1686
|
+
return;
|
|
1687
|
+
}
|
|
1633
1688
|
indexLoadState = "loading";
|
|
1634
1689
|
indexLoadPromise = (async () => {
|
|
1635
1690
|
try {
|
|
1691
|
+
console.log(`${workerInfo} loadIndex: clearing registry...`);
|
|
1692
|
+
const clearStart = Date.now();
|
|
1636
1693
|
const registry = getMooseInternal();
|
|
1637
1694
|
registry.tables.clear();
|
|
1638
1695
|
registry.streams.clear();
|
|
@@ -1641,15 +1698,35 @@ var loadIndex = async () => {
|
|
|
1641
1698
|
registry.sqlResources.clear();
|
|
1642
1699
|
registry.workflows.clear();
|
|
1643
1700
|
registry.webApps.clear();
|
|
1701
|
+
console.log(
|
|
1702
|
+
`${workerInfo} loadIndex: registry cleared in ${Date.now() - clearStart}ms`
|
|
1703
|
+
);
|
|
1704
|
+
console.log(`${workerInfo} loadIndex: clearing require cache...`);
|
|
1705
|
+
const cacheStart = Date.now();
|
|
1644
1706
|
const appDir = `${process2.cwd()}/${getSourceDir()}`;
|
|
1645
1707
|
Object.keys(__require.cache).forEach((key) => {
|
|
1646
1708
|
if (key.startsWith(appDir)) {
|
|
1647
1709
|
delete __require.cache[key];
|
|
1648
1710
|
}
|
|
1649
1711
|
});
|
|
1712
|
+
console.log(
|
|
1713
|
+
`${workerInfo} loadIndex: require cache cleared in ${Date.now() - cacheStart}ms`
|
|
1714
|
+
);
|
|
1715
|
+
console.log(`${workerInfo} loadIndex: requiring index.ts...`);
|
|
1716
|
+
const requireStart = Date.now();
|
|
1650
1717
|
__require(`${process2.cwd()}/${getSourceDir()}/index.ts`);
|
|
1718
|
+
console.log(
|
|
1719
|
+
`${workerInfo} loadIndex: require completed in ${Date.now() - requireStart}ms`
|
|
1720
|
+
);
|
|
1651
1721
|
indexLoadState = "loaded";
|
|
1722
|
+
console.log(
|
|
1723
|
+
`${workerInfo} loadIndex: total load time ${Date.now() - startTime}ms`
|
|
1724
|
+
);
|
|
1652
1725
|
} catch (error) {
|
|
1726
|
+
console.error(
|
|
1727
|
+
`${workerInfo} loadIndex: FAILED after ${Date.now() - startTime}ms`,
|
|
1728
|
+
error
|
|
1729
|
+
);
|
|
1653
1730
|
indexLoadState = "unloaded";
|
|
1654
1731
|
indexLoadPromise = null;
|
|
1655
1732
|
let hint;
|