diff options
author | jonmv <venstad@gmail.com> | 2022-04-28 14:04:00 +0200 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2022-04-28 14:04:00 +0200 |
commit | 24d500837af3f3e4c15d910f110408f286cbcf73 (patch) | |
tree | da199691f5add851b48605012f8d4bd503907e72 /controller-server | |
parent | cd04e0c3a06499971c82678e88510b257d4d6faa (diff) |
Discard notification entires with outdated job type
Diffstat (limited to 'controller-server')
-rw-r--r-- | controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/NotificationsSerializer.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/NotificationsSerializer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/NotificationsSerializer.java index 16ec240a116..99687a9893c 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/NotificationsSerializer.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/NotificationsSerializer.java @@ -69,6 +69,16 @@ public class NotificationsSerializer { public List<Notification> fromSlime(TenantName tenantName, Slime slime) { return SlimeUtils.entriesStream(slime.get().field(notificationsFieldName)) + .filter(inspector -> { // TODO: remove in summer. + if ( ! inspector.field(jobTypeField).valid()) return true; + try { + JobType.ofSerialized(inspector.field(jobTypeField).asString()); + return true; + } + catch (RuntimeException e) { + return false; + } + }) .map(inspector -> fromInspector(tenantName, inspector)) .collect(Collectors.toUnmodifiableList()); } |