esl / MongooseIM

MongooseIM is Erlang Solutions' robust, scalable and efficient XMPP server, aimed at large installations. Specifically designed for enterprise purposes, it is fault-tolerant and can utilise the resources of multiple clustered machines.
Other
1.64k stars 422 forks source link

Cast the postgres timestamp to integer #4182

Closed chrzaszcz closed 5 months ago

chrzaszcz commented 5 months ago

ROUND returns a float on Postgres 13.9, resulting in a type error.

mongoose-im commented 5 months ago

elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 368 / Failed: 0 / User-skipped: 38 / Auto-skipped: 0


small_tests_25 / small_tests / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root / small


small_tests_26 / small_tests / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root / small


small_tests_26_arm64 / small_tests / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root / small


ldap_mnesia_25 / ldap_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 2268 / Failed: 0 / User-skipped: 847 / Auto-skipped: 0


dynamic_domains_mysql_redis_26 / mysql_redis / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4192 / Failed: 0 / User-skipped: 135 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_26 / pgsql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4225 / Failed: 0 / User-skipped: 102 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4225 / Failed: 0 / User-skipped: 102 / Auto-skipped: 0


internal_mnesia_26 / internal_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 2408 / Failed: 0 / User-skipped: 707 / Auto-skipped: 0


pgsql_cets_26 / pgsql_cets / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4273 / Failed: 0 / User-skipped: 110 / Auto-skipped: 0


ldap_mnesia_26 / ldap_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 2268 / Failed: 0 / User-skipped: 847 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_26 / odbc_mssql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4221 / Failed: 1 / User-skipped: 105 / Auto-skipped: 0

graphql_muc_light_SUITE:domain_admin:domain_admin_muc_light:admin_create_room_with_unprepped_id ```erlang {error, {{badmatch,null}, [{graphql_muc_light_SUITE,admin_create_room_with_unprepped_id,1, [{file, "/home/circleci/project/big_tests/tests/graphql_muc_light_SUITE.erl"}, {line,1155}]}, {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}]}]}} ``` [Report log](https://circleci-mim-results.s3.eu-central-1.amazonaws.com/PR/4182/201605/odbc_mssql_mnesia.26.1.2-amd64/big/ct_run.test%4092a0b81c8b16.2023-12-04_10.26.40/big_tests.tests.graphql_muc_light_SUITE.logs/run.2023-12-04_10.31.10/graphql_muc_light_suite.admin_create_room_with_unprepped_id.28803.html)

mysql_redis_26 / mysql_redis / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4593 / Failed: 0 / User-skipped: 130 / Auto-skipped: 0


pgsql_mnesia_25 / pgsql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4614 / Failed: 0 / User-skipped: 109 / Auto-skipped: 0


pgsql_mnesia_26 / pgsql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4614 / Failed: 0 / User-skipped: 109 / Auto-skipped: 0


mssql_mnesia_26 / odbc_mssql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4611 / Failed: 0 / User-skipped: 112 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_26 / odbc_mssql_mnesia / 78b60d6b1fb05e0e9104fc3a083b2efab23b5ee6 Reports root/ big OK: 4222 / Failed: 0 / User-skipped: 105 / Auto-skipped: 0

graphql_muc_light_SUITE:domain_admin:domain_admin_muc_light:end_per_group ```erlang {error, {{unregistering_failed, {amount,1}, {unregistered_items, [{{<<"_domain_admin_create_room_no_permission_1097">>, [{escalus_event_mgr,<0.24627.0>}, {tc_name,domain_admin_create_room_no_permission}, {escalus_cleaner,<0.24626.0>}, {watchdog,<0.24625.0>}, {muc_light_host,<<"muclight.domain.example.com">>}, {secondary_muc_light_host,<<"muclight.domain.example.org">>}, {protocol,http}, {domain_admin,{<<"admin@domain.example.com">>,<<"446138849cc3beea">>}}, {schema_endpoint,domain_admin}, {{ejabberd_cwd,mongooseim@localhost}, "/home/circleci/project/_build/mim1/rel/mongooseim"}, {preset,"odbc_mssql_mnesia"}, {mim_data_dir, "/home/circleci/project/big_tests/tests/graphql_muc_light_SUITE_data"}, {tc_logfile, "https://circleci-mim-results.s3.eu-central-1.amazonaws.com/PR/4182/201628/odbc_mssql_mnesia.26.1.2-amd64/big/ct_run.test%400bd4587defec.2023-12-04_10.50.58/big_tests.tests.graphql_muc_light_SUITE.logs/run.2023-12-04_10.54.50/graphql_muc_light_suite.domain_admin_create_room_no_permission.html"}, {tc_group_properties,[{name,domain_admin_muc_light}]}, {tc_group_path,[[{name,domain_admin}]]}, {data_dir, "/home/circleci/project/big_tests/_build/default/lib/mongoose_tests/ebin/graphql_muc_light_SUITE_data/"}, {priv_dir, "https://circleci-mim-results.s3.eu-central-1.amazonaws.com/PR/4182/201628/odbc_mssql_mnesia.26.1.2-amd64/big/ct_run.test%400bd4587defec.2023-12-04_10.50.58/big_tests.tests.graphql_muc_light_SUITE.logs/run.2023-12-04_10.54.50/log_private/"}, {{saved_modules,mongooseim@localhost,<<"test type"... ``` [Report log](https://circleci-mim-results.s3.eu-central-1.amazonaws.com/PR/4182/201628/odbc_mssql_mnesia.26.1.2-amd64/big/ct_run.test%400bd4587defec.2023-12-04_10.50.58/big_tests.tests.graphql_muc_light_SUITE.logs/run.2023-12-04_10.54.50/graphql_muc_light_suite.end_per_group.50946.html)
codecov[bot] commented 5 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (44b57e6) 84.28% compared to head (78b60d6) 84.28%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #4182 +/- ## ========================================== - Coverage 84.28% 84.28% -0.01% ========================================== Files 551 551 Lines 33467 33467 ========================================== - Hits 28208 28206 -2 - Misses 5259 5261 +2 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

arcusfelis commented 5 months ago

PgSQL version 13.9 would return a float in the old code.

Setup required version of PgSQL: DB=pgsql PGSQL_VERSION=13.9 ./tools/setup-db.sh

This PR addresses Error:

mongoose_rdbms_timestamp:select().
** exception error: no function clause matching mongoose_rdbms:result_to_integer(1701684792.0)

Proposed changes include:

chrzaszcz commented 5 months ago

Tested manually in the load test env. Works as expected.