Configuration: stopped automatic migration to the "share" behavior.

This commit removed the $uri auto-append for the "share" option
introduced in rev be6409cdb028.

The main reason is that it causes problems when preparing Unit configurations
to be loaded at startup from the state directory. E.g. Docker. A valid conf.json
file with $uri references will end up with $uri$uri due to the auto-append.
This commit is contained in:
Zhidao HONG
2022-10-14 14:00:02 +08:00
parent db86dc0586
commit c03ebf7ffe
2 changed files with 6 additions and 21 deletions

View File

@@ -31,6 +31,12 @@ NGINX Unit updated to 1.29.0.
date="" time="" date="" time=""
packager="Nginx Packaging <nginx-packaging@f5.com>"> packager="Nginx Packaging <nginx-packaging@f5.com>">
<change type="change">
<para>
removed $uri auto-append for "share" when loading configuration.
</para>
</change>
<change type="feature"> <change type="feature">
<para> <para>
compatibility with PHP 8.2. compatibility with PHP 8.2.

View File

@@ -1690,11 +1690,6 @@ static nxt_int_t
nxt_conf_vldt_share(nxt_conf_validation_t *vldt, nxt_conf_value_t *value, nxt_conf_vldt_share(nxt_conf_validation_t *vldt, nxt_conf_value_t *value,
void *data) void *data)
{ {
u_char *p;
nxt_str_t name, temp;
static nxt_str_t uri = nxt_string("$uri");
if (nxt_conf_type(value) == NXT_CONF_ARRAY) { if (nxt_conf_type(value) == NXT_CONF_ARRAY) {
if (nxt_conf_array_elements_count(value) == 0) { if (nxt_conf_array_elements_count(value) == 0) {
return nxt_conf_vldt_error(vldt, "The \"share\" array " return nxt_conf_vldt_error(vldt, "The \"share\" array "
@@ -1707,22 +1702,6 @@ nxt_conf_vldt_share(nxt_conf_validation_t *vldt, nxt_conf_value_t *value,
/* NXT_CONF_STRING */ /* NXT_CONF_STRING */
if (vldt->ver < 12600) {
nxt_conf_get_string(value, &name);
temp.length = name.length + uri.length;
temp.start = nxt_mp_get(vldt->conf_pool, temp.length);
if (nxt_slow_path(temp.start == NULL)) {
return NXT_ERROR;
}
p = nxt_cpymem(temp.start, name.start, name.length);
nxt_memcpy(p, uri.start, uri.length);
nxt_conf_set_string(value, &temp);
}
return nxt_conf_vldt_share_element(vldt, value); return nxt_conf_vldt_share_element(vldt, value);
} }