The UCL parser's parse_text() only accepts 'msgpack' as the format
string for messagepack parsing, while to_format() accepts both
'msgpack' and 'messagepack'. This mismatch caused cached data to
fail decoding and appear as cache misses.
Fixes LLM embedding cache never being read back despite being stored.
cache_context.decode = function(raw_data)
local ucl_parser = ucl.parser()
- local ok, ucl_err = ucl_parser:parse_text(raw_data, 'messagepack')
+ local ok, ucl_err = ucl_parser:parse_text(raw_data, 'msgpack')
if not ok then
lua_util.debugm(cache_context.N, rspamd_config, "failed to parse messagepack data: %s", ucl_err)
return nil