-
Notifications
You must be signed in to change notification settings - Fork 428
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Instrument mod_pubsub
#4297
Instrument mod_pubsub
#4297
Conversation
elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 3c2dda5 mam_SUITE:cassandra_muc_all:muc_prefs_cases:muc_prefs_set_cdata_request{error,
{function_clause,
[{mam_helper,parse_children_prefs_iq,
[{xmlel,<<"error">>,
[{<<"code">>,<<"501">>},{<<"type">>,<<"cancel">>}],
[{xmlel,<<"feature-not-implemented">>,
[{<<"xmlns">>,
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>}],
[]},
{xmlel,<<"text">>,
[{<<"xmlns">>,
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>}],
[{xmlcdata,<<"From mod_mam_muc">>}]}]},
{prefs_result_iq,undefined,[],[]}],
[]},
{lists,foldl,3,[{file,"lists.erl"},{line,1594}]},
{mam_SUITE,'-muc_prefs_set_cdata_request/1-fun-0-',2,
[{file,"/home/circleci/project/big_tests/tests/mam_SUITE.erl"},
{line,3457}]},
{escalus_story,story,4,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{muc_helper,story_with_room,4,
[{file,"/home/circleci/project/big_tests/tests/muc_helper.erl"},
{line,318}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} small_tests_25 / small_tests / 3c2dda5 small_tests_26 / small_tests / 3c2dda5 small_tests_26_arm64 / small_tests / 3c2dda5 ldap_mnesia_25 / ldap_mnesia / 3c2dda5 dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 3c2dda5 ldap_mnesia_26 / ldap_mnesia / 3c2dda5 dynamic_domains_mysql_redis_26 / mysql_redis / 3c2dda5 dynamic_domains_pgsql_mnesia_26 / pgsql_mnesia / 3c2dda5 pgsql_cets_26 / pgsql_cets / 3c2dda5 pgsql_mnesia_25 / pgsql_mnesia / 3c2dda5 internal_mnesia_26 / internal_mnesia / 3c2dda5 dynamic_domains_mssql_mnesia_26 / odbc_mssql_mnesia / 3c2dda5 mysql_redis_26 / mysql_redis / 3c2dda5 carboncopy_SUITE:one2one:dropped_client_doesnt_create_duplicate_carbons{error,
{{badmatch,
[{xmlel,<<"message">>,
[{<<"from">>,
<<"alice_dropped_client_doesnt_create_duplicate_carbons_603@localhost">>},
{<<"to">>,
<<"alice_dropped_client_doesnt_create_duplicate_carbons_603@localhost/res2">>},
{<<"xmlns">>,<<"jabber:client">>},
{<<"type">>,<<"chat">>}],
[{xmlel,<<"sent">>,
[{<<"xmlns">>,<<"urn:xmpp:carbons:2">>}],
[{xmlel,<<"forwarded">>,
[{<<"xmlns">>,<<"urn:xmpp:forward:0">>}],
[{xmlel,<<"message">>,
[{<<"from">>,
<<"alice_dropped_client_doesnt_create_duplicate_carbons_603@localhost/res1">>},
{<<"type">>,<<"chat">>},
{<<"to">>,
<<"bob_dropped_client_doesnt_create_duplicate_carbons_603@localhost/res1">>},
{<<"xmlns">>,<<"jabber:client">>}],
[{xmlel,<<"body">>,[],
[{xmlcdata,
<<"And pious action">>}]}]}]}]}]}]},
[{carboncopy_SUITE,
'-dropped_client_doesnt_create_duplicate_carbons/1-fun-0-',4,
[{file,
"/home/circleci/project/big_tests/tests/carboncopy_SUITE.erl"},
{line,189}]},
{escalus_story,story,4,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_serv... pgsql_mnesia_26 / pgsql_mnesia / 3c2dda5 mssql_mnesia_26 / odbc_mssql_mnesia / 3c2dda5 elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 3c2dda5 elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 3c2dda5 mysql_redis_26 / mysql_redis / 3c2dda5 mysql_redis_26 / mysql_redis / 3c2dda5 mam_SUITE:rdbms_mnesia_cache_muc_all:muc_prefs_cases:muc_query_get_request{skip,
{failed,
{mam_SUITE,init_per_testcase,
{{badrpc,
{'EXIT',
{{badkey,mod_mam_mnesia_prefs},
[{maps,get,
[mod_mam_mnesia_prefs,
#{mod_vcard =>
#{matches => 30,
host => {prefix,<<"vjud.">>},
search => true,iqdisc => parallel,
backend => rdbms},
mod_roster =>
#{iqdisc => one_queue,backend => rdbms,
versioning => false,
store_current_id => false},
mod_register =>
#{access => register,iqdisc => one_queue,
registration_watchers => [],
password_strength => 0,
ip_access =>
[{allow,"127.0.0.0/8"},
{deny,"0.0.0.0/0"}]},
mod_sic => #{iqdisc => one_queue},
mod_amp => #{},
mod_disco =>
#{server_info => [],iqdisc => one_queue,
extra_domains => [],
users_can_see_hidden_services => false},
mod_mam_rdbms_user => #{muc => true,pm => true},
mod_mam_muc =>
#{host => {prefix,<<"muc.">>},
send_message => mod_mam_utils,
max_result_limit => 50,
async_writer =>
#{enabled => false,batch_size => 30,
flush_interval =>... mysql_redis_26 / mysql_redis / 3c2dda5 |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## feature/instrument #4297 +/- ##
======================================================
- Coverage 84.76% 84.73% -0.04%
======================================================
Files 557 557
Lines 33897 33908 +11
======================================================
- Hits 28734 28731 -3
- Misses 5163 5177 +14 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. I only added minor nodes.
elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 47a8941 small_tests_25 / small_tests / 47a8941 small_tests_26 / small_tests / 47a8941 small_tests_26_arm64 / small_tests / 47a8941 dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 47a8941 ldap_mnesia_25 / ldap_mnesia / 47a8941 ldap_mnesia_26 / ldap_mnesia / 47a8941 dynamic_domains_mysql_redis_26 / mysql_redis / 47a8941 dynamic_domains_pgsql_mnesia_26 / pgsql_mnesia / 47a8941 pgsql_cets_26 / pgsql_cets / 47a8941 internal_mnesia_26 / internal_mnesia / 47a8941 mysql_redis_26 / mysql_redis / 47a8941 dynamic_domains_mssql_mnesia_26 / odbc_mssql_mnesia / 47a8941 pgsql_mnesia_25 / pgsql_mnesia / 47a8941 pgsql_mnesia_26 / pgsql_mnesia / 47a8941 mssql_mnesia_26 / odbc_mssql_mnesia / 47a8941 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. I just added one comment.
elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 6d25e6b small_tests_25 / small_tests / 6d25e6b small_tests_26 / small_tests / 6d25e6b small_tests_26_arm64 / small_tests / 6d25e6b ldap_mnesia_25 / ldap_mnesia / 6d25e6b dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 6d25e6b dynamic_domains_pgsql_mnesia_26 / pgsql_mnesia / 6d25e6b ldap_mnesia_26 / ldap_mnesia / 6d25e6b pubsub_SUITE:dag+basic:purge_all_items_test{error,{{badmatch,false},
[{pubsub_tools,check_response,2,
[{file,"/home/circleci/project/big_tests/tests/pubsub_tools.erl"},
{line,444}]},
{pubsub_tools,receive_response,3,
[{file,"/home/circleci/project/big_tests/tests/pubsub_tools.erl"},
{line,434}]},
{pubsub_tools,receive_and_check_response,4,
[{file,"/home/circleci/project/big_tests/tests/pubsub_tools.erl"},
{line,424}]},
{pubsub_SUITE,'-purge_all_items_test/1-fun-0-',2,
[{file,"/home/circleci/project/big_tests/tests/pubsub_SUITE.erl"},
{line,647}]},
{escalus_story,story,4,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} internal_mnesia_26 / internal_mnesia / 6d25e6b dynamic_domains_mysql_redis_26 / mysql_redis / 6d25e6b dynamic_domains_mssql_mnesia_26 / odbc_mssql_mnesia / 6d25e6b pgsql_cets_26 / pgsql_cets / 6d25e6b mysql_redis_26 / mysql_redis / 6d25e6b pgsql_mnesia_25 / pgsql_mnesia / 6d25e6b pgsql_mnesia_26 / pgsql_mnesia / 6d25e6b mssql_mnesia_26 / odbc_mssql_mnesia / 6d25e6b muc_SUITE:register:user_submits_registration_form_twice{error,
{thrown,
{timeout,
[{escalus_connection,receive_stanza,2,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_connection.erl"},
{line,302}]},
{muc_SUITE,'-user_submits_registration_form_twice/1-fun-0-',1,
[{file,
"/home/circleci/project/big_tests/tests/muc_SUITE.erl"},
{line,2800}]},
{escalus_story,story,4,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}}} muc_SUITE:register:user_unregisters_nick_twice{error,
{thrown,
{timeout,
[{escalus_connection,receive_stanza,2,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_connection.erl"},
{line,302}]},
{muc_SUITE,'-user_unregisters_nick_twice/1-fun-0-',1,
[{file,
"/home/circleci/project/big_tests/tests/muc_SUITE.erl"},
{line,2831}]},
{escalus_story,story,4,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}}} muc_SUITE:register:user_unregisters_nick{error,
{thrown,
{timeout,
[{escalus_connection,receive_stanza,2,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_connection.erl"},
{line,302}]},
{muc_SUITE,'-user_unregisters_nick/1-fun-0-',1,
[{file,
"/home/circleci/project/big_tests/tests/muc_SUITE.erl"},
{line,2821}]},
{escalus_story,story,4,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}}} muc_SUITE:register:user_changes_nick{error,
{thrown,
{timeout,
[{escalus_connection,receive_stanza,2,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_connection.erl"},
{line,302}]},
{muc_SUITE,'-user_changes_nick/1-fun-0-',1,
[{file,
"/home/circleci/project/big_tests/tests/muc_SUITE.erl"},
{line,2814}]},
{escalus_story,story,4,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
{line,72}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}}} muc_SUITE:register:end_per_group{error,
{{badrpc,
{'EXIT',
{timeout,
{gen_server,call,
['wpool_pool-mongoose_wpool$rdbms$global$default-1',
{sql_cmd,
{sql_execute,auth_get_password,
[<<"localhost">>,<<"alice">>]},
-576459761814},
60000]}}}},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,unregister,
[<<"alicE">>,<<"localhost">>],
30000,mongooseim],
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,delete_users,2,
[{file,
"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,216}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1390}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} ldap_mnesia_26 / ldap_mnesia / 6d25e6b mssql_mnesia_26 / odbc_mssql_mnesia / 6d25e6b |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks ok
This PR instruments
mod_pubsub
. Luckily, it war fairly straightforward.I wasn't sure how to represent the event names without creating new atoms, which is why there is a new "table" in pubsub code, but I think it's OK, because: 1. It follows the style of the module (https://github.com/esl/MongooseIM/pull/4297/files#diff-8f3c86211cc3400d551754d19d3dbb12cecce86b38fe9f6ca2a7f2a2c87f5f05L1366 for example) 2. This way should be fast.