This patch caused a regression for me - see
EJAB-1533 - the data that I publish gets lost by the server. But it could be due to misconfigured ejabberd or bad message - I'm not quite grasping how this is supposed to work.
One thing stands out in this patch: max_items explicitly does check for the persist_items case:
max_items(Host, Options) ->
case get_option(Options, persist_items) of
case get_option(Options, max_items) of
false -> unlimited;
Result when (Result < 0) -> 0;
Result -> Result
So it is not clear to me that removing the call to it is definitely correct - if something is wrong with the logic of max_items in the non-persist case, shouldn't max_items be fixed instead?
(Sorry if my lack of knowledge of XMPP and erlang is shining through - I'm learning as I go)