diff options
| author | Florent Devillechabrol <[email protected]> | 2025-08-14 10:56:44 -0700 |
|---|---|---|
| committer | GitHub Enterprise <[email protected]> | 2025-08-14 10:56:44 -0700 |
| commit | f224ec9678a0bdaec5ecb84b37452b38f8e1c60b (patch) | |
| tree | 6e61ec2e126f36907f5affc7b34393f100e0dd7e | |
| parent | 5.6.16 (diff) | |
| parent | New frontend zip. (diff) | |
| download | zen-f224ec9678a0bdaec5ecb84b37452b38f8e1c60b.tar.xz zen-f224ec9678a0bdaec5ecb84b37452b38f8e1c60b.zip | |
Merge pull request #467 from ue-foundation/fd-show-all-oplog
Zen dashboard : don't skip oplogs without package data
| -rw-r--r-- | CHANGELOG.md | 3 | ||||
| -rw-r--r-- | src/zenserver/frontend/html.zip | bin | 161002 -> 161185 bytes | |||
| -rw-r--r-- | src/zenserver/frontend/html/indexer/worker.js | 46 | ||||
| -rw-r--r-- | src/zenserver/frontend/html/pages/entry.js | 36 |
4 files changed, 47 insertions, 38 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index dc53b7904..91f9674aa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,7 @@ ## +- Bugfix: Don't skip oplogs without package data in zen dashboard. + +## 5.5.16 - Feature: Added `zen build ls` option to list the content of a build part(s) - Build source is specified using one of the following options - `--cloud-url` cloud artifact URL to build diff --git a/src/zenserver/frontend/html.zip b/src/zenserver/frontend/html.zip Binary files differindex 5778fa3d2..1de4c3d74 100644 --- a/src/zenserver/frontend/html.zip +++ b/src/zenserver/frontend/html.zip diff --git a/src/zenserver/frontend/html/indexer/worker.js b/src/zenserver/frontend/html/indexer/worker.js index 69ee234fa..c0cbb7e11 100644 --- a/src/zenserver/frontend/html/indexer/worker.js +++ b/src/zenserver/frontend/html/indexer/worker.js @@ -73,33 +73,38 @@ async function map_id_to_key(project_id, oplog, start, end, page_size, stride) else if (field.is_named("packagedata")) pkg_data = field; else if (field.is_named("bulkdata")) bulk_data = field; } - if (key == undefined || pkg_data == undefined) + + if (key == undefined) continue; var id = 0n; var size = 0n; var raw_size = 0n; - for (const item of pkg_data.as_array()) - { - var found = 0, pkg_id = undefined; - for (const field of item.as_object()) + + if (pkg_data) + { + for (const item of pkg_data.as_array()) { - if (!id && field.is_named("id")) pkg_id = field.as_value(); - else if (field.is_named("size")) size += field.as_value(); - else if (field.is_named("rawsize")) raw_size += field.as_value(); - else continue; - if (found++ >= 3) - break; - } + var found = 0, pkg_id = undefined; + for (const field of item.as_object()) + { + if (!id && field.is_named("id")) pkg_id = field.as_value(); + else if (field.is_named("size")) size += field.as_value(); + else if (field.is_named("rawsize")) raw_size += field.as_value(); + else continue; + if (found++ >= 3) + break; + } - if (pkg_id === undefined) - continue; + if (pkg_id === undefined) + continue; - pkg_id = pkg_id.subarray(0, 8); - for (var i = 7; i >= 0; --i) - { - id <<= 8n; - id |= BigInt(pkg_id[i]); + pkg_id = pkg_id.subarray(0, 8); + for (var i = 7; i >= 0; --i) + { + id <<= 8n; + id |= BigInt(pkg_id[i]); + } } } @@ -119,9 +124,6 @@ async function map_id_to_key(project_id, oplog, start, end, page_size, stride) } } - if (id == 0) - continue; - result[count] = [id, key.as_value(), size, raw_size]; count++; } diff --git a/src/zenserver/frontend/html/pages/entry.js b/src/zenserver/frontend/html/pages/entry.js index 54fb11c18..08589b090 100644 --- a/src/zenserver/frontend/html/pages/entry.js +++ b/src/zenserver/frontend/html/pages/entry.js @@ -239,30 +239,34 @@ export class Page extends ZenPage _convert_legacy_to_tree(entry) { - const pkg_data = entry.find("packagedata"); - if (pkg_data == undefined) - return + const raw_pkgst_entry = entry.find("packagestoreentry"); + if (raw_pkgst_entry == undefined) //if there is no packagestorentry then don't show the fancy webpage, just show the raw json + return; const tree = {}; - var id = 0n; - for (var item of pkg_data.as_array()) + const pkg_data = entry.find("packagedata"); + if (pkg_data) { - var pkg_id = item.as_object().find("id"); - if (pkg_id == undefined) - continue; - - pkg_id = pkg_id.as_value().subarray(0, 8); - for (var i = 7; i >= 0; --i) + var id = 0n; + for (var item of pkg_data.as_array()) { - id <<= 8n; - id |= BigInt(pkg_id[i]); + var pkg_id = item.as_object().find("id"); + if (pkg_id == undefined) + continue; + + pkg_id = pkg_id.as_value().subarray(0, 8); + for (var i = 7; i >= 0; --i) + { + id <<= 8n; + id |= BigInt(pkg_id[i]); + } + break; } - break; + tree["$id"] = id; } - tree["$id"] = id; - const pkgst_entry = entry.find("packagestoreentry").as_object(); + const pkgst_entry = raw_pkgst_entry.as_object(); for (const field of pkgst_entry) { |