)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"833c75caa029352106c3e0d0723dcf63db2fa226","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9a0a4ebf_75e78624","updated":"2022-03-15 01:50:06.000000000","message":"I don\u0027t see much benefit of having this feature within the resource type as IP protocol version can\u0027t be detected automatically.\n\nIf users are aware they are using IPv6 then they can compose up the proper server address instead of setting the memcached_ipv6 parameter.","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"}],"manifests/resource/authtoken.pp":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"4d5f495d2e1cd7f9f0a620128f176a330d91c3a0","unresolved":true,"context_lines":[{"line_number":302,"context_line":"  if !is_service_default($memcached_servers) and !empty($memcached_servers){"},{"line_number":303,"context_line":"    if $memcached_ipv6 {"},{"line_number":304,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix_any($memcached_servers)), \u0027,\u0027)"},{"line_number":305,"context_line":"    } else {"},{"line_number":306,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix($memcached_servers)), \u0027,\u0027)"},{"line_number":307,"context_line":"    }"},{"line_number":308,"context_line":"    if $manage_memcache_package {"},{"line_number":309,"context_line":"      ensure_packages(\u0027python-memcache\u0027, {"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"9b186f51_e5d2a0c8","line":306,"range":{"start_line":305,"start_character":12,"end_line":306,"end_character":85},"updated":"2022-03-15 03:30:55.000000000","message":"I noticed this usage is completely useless, because memcached_servers takes items like \u003cip\u003e:\u003cport\u003e and these elements are never recognized as IPv6 addresses...","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"98f12c6af843057c79e309de6042cf5c1beaec79","unresolved":true,"context_lines":[{"line_number":302,"context_line":"  if !is_service_default($memcached_servers) and !empty($memcached_servers){"},{"line_number":303,"context_line":"    if $memcached_ipv6 {"},{"line_number":304,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix_any($memcached_servers)), \u0027,\u0027)"},{"line_number":305,"context_line":"    } else {"},{"line_number":306,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix($memcached_servers)), \u0027,\u0027)"},{"line_number":307,"context_line":"    }"},{"line_number":308,"context_line":"    if $manage_memcache_package {"},{"line_number":309,"context_line":"      ensure_packages(\u0027python-memcache\u0027, {"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"1a20d44f_2c7a88d4","line":306,"range":{"start_line":305,"start_character":12,"end_line":306,"end_character":85},"in_reply_to":"0e9de71f_0f86bbee","updated":"2022-03-15 09:25:58.000000000","message":"My point is that this usage of inet6_prefix in puppet-keystone has been \"incomplete\". It has worked effectively only if memcached_servers is a list of \u003chost\u003e, and it has never worked if the parameter is set by list of \u003chost\u003e:\u003cport\u003e.\n\nTripleO has never leveraged this function call in puppet-keystone but it calls the inet6_prefix function in its manifest and passes the complete memcached_servers.\n\nEven if we implement this parameter, users still need to set the new parameter correctly. This does not make much difference from the current status that users need to compose up the parameter value correctly, IMO, while it requires change in all modules, which involves some effort.\n\nI tend to leave the current implementation inside module(or even deprecate the internal conversion) and implement a new help function like os_memcache_server so that users can compose the parameter value more easily. This would allow us to implement some variations, for example to determine whether inet6 prefix is required, so that we can use the same function for different parameters like [oslo_cache] memcache_servers","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"0b53112064963b75e325fc7e343f1854018c416b","unresolved":true,"context_lines":[{"line_number":302,"context_line":"  if !is_service_default($memcached_servers) and !empty($memcached_servers){"},{"line_number":303,"context_line":"    if $memcached_ipv6 {"},{"line_number":304,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix_any($memcached_servers)), \u0027,\u0027)"},{"line_number":305,"context_line":"    } else {"},{"line_number":306,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix($memcached_servers)), \u0027,\u0027)"},{"line_number":307,"context_line":"    }"},{"line_number":308,"context_line":"    if $manage_memcache_package {"},{"line_number":309,"context_line":"      ensure_packages(\u0027python-memcache\u0027, {"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"4b8e809c_3d7fffa4","line":306,"range":{"start_line":305,"start_character":12,"end_line":306,"end_character":85},"in_reply_to":"1a20d44f_2c7a88d4","updated":"2022-03-15 10:08:31.000000000","message":"Hmm... I might be reading the code wrongly. Let me recheck...","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"4c0b3fb0bdef4015e29c3c6ccc237082433716f7","unresolved":true,"context_lines":[{"line_number":302,"context_line":"  if !is_service_default($memcached_servers) and !empty($memcached_servers){"},{"line_number":303,"context_line":"    if $memcached_ipv6 {"},{"line_number":304,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix_any($memcached_servers)), \u0027,\u0027)"},{"line_number":305,"context_line":"    } else {"},{"line_number":306,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix($memcached_servers)), \u0027,\u0027)"},{"line_number":307,"context_line":"    }"},{"line_number":308,"context_line":"    if $manage_memcache_package {"},{"line_number":309,"context_line":"      ensure_packages(\u0027python-memcache\u0027, {"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"0e9de71f_0f86bbee","line":306,"range":{"start_line":305,"start_character":12,"end_line":306,"end_character":85},"in_reply_to":"2ded3b0e_03a511d1","updated":"2022-03-15 07:14:59.000000000","message":"The use of inet6_prefix() is the old behaviour. What is new in this change is the \"memcached_ipv6\" bool param and the use of inet6_prefix_any() which works for \u003chostname\u003e:\u003cip\u003e. inet6_prefix() was good for years, until tripleo switched to use hostnames ...","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"cdf23edc7933f96c28378a986f4fa09f9b97791b","unresolved":true,"context_lines":[{"line_number":302,"context_line":"  if !is_service_default($memcached_servers) and !empty($memcached_servers){"},{"line_number":303,"context_line":"    if $memcached_ipv6 {"},{"line_number":304,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix_any($memcached_servers)), \u0027,\u0027)"},{"line_number":305,"context_line":"    } else {"},{"line_number":306,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix($memcached_servers)), \u0027,\u0027)"},{"line_number":307,"context_line":"    }"},{"line_number":308,"context_line":"    if $manage_memcache_package {"},{"line_number":309,"context_line":"      ensure_packages(\u0027python-memcache\u0027, {"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"5e3f9e4b_78c89bad","line":306,"range":{"start_line":305,"start_character":12,"end_line":306,"end_character":85},"in_reply_to":"4b8e809c_3d7fffa4","updated":"2022-03-15 10:13:35.000000000","message":"OK so I confirmed I was wrong. Current logic can handle the \u003chost\u003e:\u003cport\u003e format. I\u0027ll give it another thought","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"29ac37fd130fd0659647b490d46a396688d8db50","unresolved":true,"context_lines":[{"line_number":302,"context_line":"  if !is_service_default($memcached_servers) and !empty($memcached_servers){"},{"line_number":303,"context_line":"    if $memcached_ipv6 {"},{"line_number":304,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix_any($memcached_servers)), \u0027,\u0027)"},{"line_number":305,"context_line":"    } else {"},{"line_number":306,"context_line":"     $memcached_servers_real \u003d join(any2array(inet6_prefix($memcached_servers)), \u0027,\u0027)"},{"line_number":307,"context_line":"    }"},{"line_number":308,"context_line":"    if $manage_memcache_package {"},{"line_number":309,"context_line":"      ensure_packages(\u0027python-memcache\u0027, {"}],"source_content_type":"text/x-puppet","patch_set":1,"id":"2ded3b0e_03a511d1","line":306,"range":{"start_line":305,"start_character":12,"end_line":306,"end_character":85},"in_reply_to":"9b186f51_e5d2a0c8","updated":"2022-03-15 03:41:15.000000000","message":"It seems memcached accepts servers without port and the port defaults to 11211 in that case. So this implementation is currently valid if only ips are listed, which is not useful in tripleo\u0027s use case.","commit_id":"02426cb4d8ce84f63d7823806af7275f14ea9834"}]}
