From e47b4a4e71ff3de5eb981aef1aa1a209da06ed58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1n=20Osusk=C3=BD?= Date: Mon, 13 Apr 2026 16:28:34 +0200 Subject: [PATCH 1/2] Clarify Global Cache behavior when not caching a data instance Emphasising that a Global Cache shall publish WME if it decides not to cache an otherwise cacheable data instance. --- guide/sections/part2/global-services.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guide/sections/part2/global-services.adoc b/guide/sections/part2/global-services.adoc index 7950e2f..749aee1 100644 --- a/guide/sections/part2/global-services.adoc +++ b/guide/sections/part2/global-services.adoc @@ -119,7 +119,7 @@ In WIS2, Global Caches provide access to WMO core data for data consumers. This * A Global Cache is designed to support real-time content distribution. Data consumers access data objects from a Global Cache instance by resolving the URL in a data availability notification message and downloading the file to which the URL points. Only by checking the URL, is it transparent to the data consumers from which Global Cache they are downloading the data. There is no need to download the same data object from multiple Global Caches. The data id contained within notification messages is used by data consumers and Global Services to detect such duplicates. * There is no requirement for a Global Cache to provide a browsable interface to the files in its repository in order to allow data consumers to discover what content is available. However, a Global Cache may choose to provide such a capability (for example, implemented as a WAF), along with documentation to inform data consumers of how the capability works. * The default behaviour for a Global Cache is to cache all data published under the ``origin/a/wis2/data/+/core`` topic. A data publisher may indicate that data should not be cached by adding the ``"cache": false`` assertion in the WIS2 Notification Message. -* A Global Cache may decide not to cache data, for example, if the data are considered too large, or if a WIS2 Node publishes an excessive number of small files. If a Global Cache decides not to cache data, it should behave as though the cache property is set to false and send a message on the ``monitor`` topic hierarchy to inform the originating centre and its GISC. The Global Cache operator should work with the originating WIS2 Node and its GISC to remedy this issue. +* A Global Cache may decide not to cache data, for example, if the data are considered too large, or if a WIS2 Node publishes an excessive number of small files. If a Global Cache decides not to cache data, it should behave as though the cache property is set to false and shall send a WME (WIS2 Monitoring Event) message on the ``monitor`` topic hierarchy to inform other centres about this irregularity. The Global Cache operator should work with the originating WIS2 Node and its GISC to remedy this issue. * If core data are not cached on a Global Cache (that is, if the data are flagged as ``"cache": false`` or if the Global Cache decides not to cache these data), the Global Cache shall nevertheless republish the WIS2 Notification Message to the ``cache/a/wis2/...`` topic. In this case, the message id will be changed, and the rest of the message will not be modified. * A Global Cache should operate with a fixed IP address so that WIS2 Nodes can permit access to download resources based on IP address filtering. A Global Cache should also operate with a publicly resolvable DNS name pointing to that IP address. The WMO Secretariat must be informed of the IP address and/or hostname, and any subsequent changes. * A Global Cache should validate the integrity of the resources it caches and only accept data that match the integrity value from the WIS2 Notification Message. If the WIS2 Notification Message does not contain an integrity value, the Global Cache should accept the data as valid. In this case, the Global Cache may add an integrity value to the message it republishes. From 3faa2745cc5eddf89f614b0906c4e4c0ac25da9c Mon Sep 17 00:00:00 2001 From: Jan Osusky Date: Thu, 16 Apr 2026 16:39:59 +0100 Subject: [PATCH 2/2] Improve the wording of the paragraph about Global Cache behaviour when no data instance is cached --- guide/sections/part2/global-services.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guide/sections/part2/global-services.adoc b/guide/sections/part2/global-services.adoc index 749aee1..e2cb111 100644 --- a/guide/sections/part2/global-services.adoc +++ b/guide/sections/part2/global-services.adoc @@ -119,7 +119,7 @@ In WIS2, Global Caches provide access to WMO core data for data consumers. This * A Global Cache is designed to support real-time content distribution. Data consumers access data objects from a Global Cache instance by resolving the URL in a data availability notification message and downloading the file to which the URL points. Only by checking the URL, is it transparent to the data consumers from which Global Cache they are downloading the data. There is no need to download the same data object from multiple Global Caches. The data id contained within notification messages is used by data consumers and Global Services to detect such duplicates. * There is no requirement for a Global Cache to provide a browsable interface to the files in its repository in order to allow data consumers to discover what content is available. However, a Global Cache may choose to provide such a capability (for example, implemented as a WAF), along with documentation to inform data consumers of how the capability works. * The default behaviour for a Global Cache is to cache all data published under the ``origin/a/wis2/data/+/core`` topic. A data publisher may indicate that data should not be cached by adding the ``"cache": false`` assertion in the WIS2 Notification Message. -* A Global Cache may decide not to cache data, for example, if the data are considered too large, or if a WIS2 Node publishes an excessive number of small files. If a Global Cache decides not to cache data, it should behave as though the cache property is set to false and shall send a WME (WIS2 Monitoring Event) message on the ``monitor`` topic hierarchy to inform other centres about this irregularity. The Global Cache operator should work with the originating WIS2 Node and its GISC to remedy this issue. +* A Global Cache may decide not to cache data, for example, if the data are considered too large, or if a WIS2 Node publishes an excessive number of small files. If a Global Cache decides not to cache data, it should behave as though the cache property is set to false and shall send a WME (WIS2 Monitoring Event) message on the ``monitor`` topic hierarchy to inform other WIS centres about it. The Global Cache operator should work with the originating WIS2 Node and its GISC to remedy this issue. * If core data are not cached on a Global Cache (that is, if the data are flagged as ``"cache": false`` or if the Global Cache decides not to cache these data), the Global Cache shall nevertheless republish the WIS2 Notification Message to the ``cache/a/wis2/...`` topic. In this case, the message id will be changed, and the rest of the message will not be modified. * A Global Cache should operate with a fixed IP address so that WIS2 Nodes can permit access to download resources based on IP address filtering. A Global Cache should also operate with a publicly resolvable DNS name pointing to that IP address. The WMO Secretariat must be informed of the IP address and/or hostname, and any subsequent changes. * A Global Cache should validate the integrity of the resources it caches and only accept data that match the integrity value from the WIS2 Notification Message. If the WIS2 Notification Message does not contain an integrity value, the Global Cache should accept the data as valid. In this case, the Global Cache may add an integrity value to the message it republishes.