emergency: add route selection failure debug
This commit is contained in:
1 parent
122ca77106
commit
d1d06b4fa5
1 file changed
+16
-1
Vendored
+16
-1
@@ -3613,6 +3613,7 @@ function selectEmergencyRoutes() {
|
|||||||
var top = pool.slice(0, Math.max(EMERGENCY_COUNT * 8, 24));
|
var top = pool.slice(0, Math.max(EMERGENCY_COUNT * 8, 24));
|
||||||
emergencyShuffle(top);
|
emergencyShuffle(top);
|
||||||
var used = {};
|
var used = {};
|
||||||
|
var routeFailures = [];
|
||||||
for (var r = 0; r < top.length && emergencyRoutes.length < EMERGENCY_COUNT; r++) {
|
for (var r = 0; r < top.length && emergencyRoutes.length < EMERGENCY_COUNT; r++) {
|
||||||
var cand = top[r];
|
var cand = top[r];
|
||||||
var usedKey = cand.netKey + ':' + cand.ci;
|
var usedKey = cand.netKey + ':' + cand.ci;
|
||||||
@@ -3623,7 +3624,14 @@ function selectEmergencyRoutes() {
|
|||||||
var base = route.length ? route[0].d : 0;
|
var base = route.length ? route[0].d : 0;
|
||||||
for (var rp = 0; rp < route.length; rp++) route[rp].d -= base;
|
for (var rp = 0; rp < route.length; rp++) route[rp].d -= base;
|
||||||
var len = route.length ? route[route.length - 1].d : 0;
|
var len = route.length ? route[route.length - 1].d : 0;
|
||||||
if (len <= 0) continue;
|
if (len <= 0) {
|
||||||
|
routeFailures.push({
|
||||||
|
netKey: cand.netKey, ci: cand.ci, lenKm: +cand.lenKm.toFixed(1),
|
||||||
|
nearKm: +(cand.near * KM_PER_TILE).toFixed(1), reverse: cand.reverse,
|
||||||
|
pts: route.length, rawLen: +(cand.len * KM_PER_TILE).toFixed(1)
|
||||||
|
});
|
||||||
|
continue;
|
||||||
|
}
|
||||||
emergencyRoutes.push({ pts: route, len: len, lenKm: len * KM_PER_TILE, nearKm: cand.near * KM_PER_TILE });
|
emergencyRoutes.push({ pts: route, len: len, lenKm: len * KM_PER_TILE, nearKm: cand.near * KM_PER_TILE });
|
||||||
}
|
}
|
||||||
for (var v = 0; v < emergencyRoutes.length; v++) {
|
for (var v = 0; v < emergencyRoutes.length; v++) {
|
||||||
@@ -3646,6 +3654,13 @@ function selectEmergencyRoutes() {
|
|||||||
} : null,
|
} : null,
|
||||||
poolMode: poolMode,
|
poolMode: poolMode,
|
||||||
candidates: pool.length,
|
candidates: pool.length,
|
||||||
|
candidateSample: top.slice(0, 5).map(function (c) {
|
||||||
|
return {
|
||||||
|
netKey: c.netKey, ci: c.ci, lenKm: +c.lenKm.toFixed(1),
|
||||||
|
nearKm: +(c.near * KM_PER_TILE).toFixed(1), reverse: c.reverse
|
||||||
|
};
|
||||||
|
}),
|
||||||
|
routeFailures: routeFailures.slice(0, 5),
|
||||||
networks: nets.map(function (n) { return { key: n.key, chains: n.net.cnts.length }; }),
|
networks: nets.map(function (n) { return { key: n.key, chains: n.net.cnts.length }; }),
|
||||||
routes: emergencyRoutes.map(function (r) { return { km: +r.lenKm.toFixed(1), nearKm: +r.nearKm.toFixed(1) }; })
|
routes: emergencyRoutes.map(function (r) { return { km: +r.lenKm.toFixed(1), nearKm: +r.nearKm.toFixed(1) }; })
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in new issue
Block a user