I updated our systems at work to use v15.06 since there is now support for odbc with mod_mam. I added these lines to my yml file:
mod_mam:
db_type: odbc
default: always
Ever since then I am getting CRASH REPORT showing up in my log file and I am not sure what to make of it. Any one seen these errors before?
2015-07-02 07:41:44.801 [error] <0.18466.0> CRASH REPORT Process cache_tab_caps_features_1 with 0 neighbours exited with reason: call to undefined function erlang:timestamp() in gen_server:terminate/7 line 804
2015-07-02 07:41:44.801 [error] <0.18047.0> Supervisor cache_tab_sup had child {caps_features,cache_tab_caps_features_1} started with cache_tab:start_link(cache_tab_caps_features_1, caps_features, [{max_size,1000},{life_time,86400}], <0.18336.0>) at <0.18466.0> exit with reason call to undefined function erlang:timestamp() in context child_terminated
2015-07-02 07:41:44.802 [error] <0.18461.0>@ejabberd_hooks:run_fold1:371 {{undef,[{erlang,timestamp,[],[]},{cache_tab,now_priority,0,[{file,"src/cache_tab.erl"},{line,408}]},{cache_tab,clean_priority,1,[{file,"src/cache_tab.erl"},{line,413}]},{cache_tab,handle_call,3,[{file,"src/cache_tab.erl"},{line,197}]},{gen_server,try_handle_call,4,[{file,"gen_server.erl"},{line,607}]},{gen_server,handle_msg,5,[{file,"gen_server.erl"},{line,639}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]},{gen_server,call,[cache_tab_caps_features_1,{lookup,{<<"http://pidgin.im/">>,<<"I22W7CegORwdbnu0ZiQwGpxr0Go=">>},#Fun<mod_caps.7.99848335>},60000]}}
running hook: {c2s_presence_in,[{{jid,<<"b3">>,<<"server.local.com">>,<<"15132012161435837303168387">>,<<"b3">>,<<"server.local.com">>,<<"15132012161435837303168387">>},{jid,<<"b3">>,<<"server.local.com">>,<<"15132012161435837303168387">>,<<"b3">>,<<"server.local.com">>,<<"15132012161435837303168387">>},{xmlel,<<"presence">>,[],[{xmlel,<<"priority">>,[],[{xmlcdata,<<"1">>}]},{xmlel,<<"c">>,[{<<"xmlns">>,<<"http://jabber.org/protocol/caps">>},{<<"node">>,<<"http://pidgin.im/">>},{<<"hash">>,<<"sha-1">>},{<<"ver">>,<<"I22W7CegORwdbnu0ZiQwGpxr0Go=">>}],[]},{xmlel,<<"x">>,[{<<"xmlns">>,<<"vcard-temp:x:update">>}],[{xmlel,<<"photo">>,[],[{xmlcdata,<<"19db521eb3a4ba00bdc990469fc86e25ee591ccc">>}]}]}]}}]}
With those options, and MySQL
With those options, and MySQL storage, my messages are stored in the "archive" table. Such errors don't appear.
In fact, looking at the source code of ejabberd and cache_tab, I don't understand how that error appears: timestamp() is not called anywhere I can see.
How did you install ejabberd 15.06? Binary installer... which one? Or source code, how did you get erlang?
It looks like we had an issue
It looks like we had an issue with our updates rolling out with our in house server. After a manual reinstall the errors have seem to vanished. I have it configured on my machine, will messages automatically start appearing in the archive table? Or will I have to configure on a per user basis?
With default: always, all
With default: always, all messages sent and received are stored automatically. I don't configure anything else in my client or in ejabberd.
When user1 sends a message to user2, then two entries are stored in the archive_msg table.
Please, say, is it normal,
Please, say, is it normal, that i have two records in archieve table for every message with this module?
Each message has two parties,
Each message has two parties, so yes, seems normal.