-
Notifications
You must be signed in to change notification settings - Fork 102
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
Unsubscribe and Signoff Requests Cause Sympa Service Crash in 6.2.68 #1359
Comments
@iulistadmin , could youy please apply this patch and check if the problem will be solvbed? |
Still crashing. Let us know if we can provide further details to help resolve this issue.
Sympa::List::delete_list_member#1621 > Sympa::Database::commit#453 DIED: bug in logic. Ask developer at /usr/share/sympa/lib/Sympa/Database.pm line 453.
Tim
From: IKEDA Soji ***@***.***>
Date: Thursday, March 10, 2022 at 10:47 PM
To: sympa-community/sympa ***@***.***>
Cc: IU List Administrator ***@***.***>, Mention ***@***.***>
Subject: [External] Re: [sympa-community/sympa] Unsubscribe and Signoff Requests Cause Sympa Service Crash in 6.4.68 (Issue #1359)
This message was sent from a non-IU address. Please exercise caution when clicking links or opening attachments from external sources.
@iulistadmin<https://github.com/iulistadmin> , could youy please apply this patch<https://github.com/sympa-community/sympa/commit/c231d2d.patch> and check if the problem will be solvbed?
—
Reply to this email directly, view it on GitHub<#1359 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AG5EZRXBORKSRFBTMI7RVWDU7K66DANCNFSM5QJ5CP6A>.
Triage notifications on the go with GitHub Mobile for iOS<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
I suggest to find out why the database connection is terminated, so please check MySQL logs. |
I will test further. But I want to stress that this was not a problem before the 6.4.68 upgrade. In production, the signoff requests do not always trigger a crash. But in our test instance, they do. I cannot use the signoff commands at all in test or Sympa will crash. Other commands seem to be processed fine and removing someone as a privileged owner via the web UI doesn’t trigger a crash. So, it doesn’t seem to be an issue with the database connection. We are not using fail2ban or other filtering that would trigger such a block. I ran a looping netcat command from the app server to the database and it didn’t drop a single attempt. During one of signoff command crashes I did see this in the database logs:
2022-03-14T19:33:38.219784Z 9493 [Note] Aborted connection 9493 to db: 'sympa' user: 'sympa' host: 'iulist-test-app.uits.iu.edu' (Got timeout reading communication packets)
2022-03-14T19:33:44.108660Z 9494 [Note] Aborted connection 9494 to db: 'sympa' user: 'sympa' host: 'iulist-test-app.uits.iu.edu' (Got timeout reading communication packets)
2022-03-14T19:34:05.745410Z 9496 [Note] Aborted connection 9496 to db: 'sympa' user: 'sympa' host: 'iulist-test-app.uits.iu.edu' (Got timeout reading communication packets)
So, that would seem to indicate some connection issue. But then other crashes did not exhibit this error.
I did cause MySQL to block me after opening several connections and I had to use the ‘mysqladmin flush-hosts’ command to release the block. Although, I am not seeing these errors in the production logs. I thought this might be the issue, but now I am not so sure. When we experienced crashes, we could simply remove the signoff request out of the spool directory and allow messages to be processed and the database host cache was not reset nor was the database restarted.
This is what we have so far and we’ll keep investigating.
Tim
From: Stefan Hornburg (Racke) ***@***.***>
Date: Monday, March 14, 2022 at 3:04 PM
To: sympa-community/sympa ***@***.***>
Cc: IU List Administrator ***@***.***>, Mention ***@***.***>
Subject: [External] Re: [sympa-community/sympa] Unsubscribe and Signoff Requests Cause Sympa Service Crash in 6.4.68 (Issue #1359)
This message was sent from a non-IU address. Please exercise caution when clicking links or opening attachments from external sources.
I suggest to find out why the database connection is terminated, so please check MySQL logs.
—
Reply to this email directly, view it on GitHub<#1359 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AG5EZRSPJL7TYEGE4TUTNPTU76EQRANCNFSM5QJ5CP6A>.
Triage notifications on the go with GitHub Mobile for iOS<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Sympa is going to send a similar query/transaction for each unsubscribe request. So in case there is a bug in Sympa, it should be reproducible. As you say it happens not always in production. My opinion is that you exhaust some MySQL or system resource. |
@iulistadmin , please show the log from when Sympa received the message to when Sympa crashed. |
A sample file containing the message which crashes Sympa would be helpful too. |
I have provided some details via the Sympa users mailing list, but here are more from recent tests. My time to spend on this may be limited this week as I am covering duties while others are on vacation. I’ll do what I can but perhaps next week I can more thoroughly test. Attached are recent messages to unsubscribe from lists in our test environment that all caused Sympa to crash, regardless of whether the subscriber was a member of the list or not; only in one instance was the subscriber not a member of the list. Log details were provided for a couple of the events I tested today. I hope this proves helpful. Another option I am considering is rolling back to the previous version of Sympa in test to see if that causes this issue to go away. It was not occurring before the upgrade to 6.2.68. I thought that the database might be throttling or blocking connections based on that one error, but I flushed the host cache and it didn’t matter. Plus, production sees a significant amount of traffic; we have over 100K lists, and it isn’t getting blocked by the database while this test instance is only used by us administrators and I can’t get a single unsubscribe requests to process.
Tim
From: Stefan Hornburg (Racke) ***@***.***>
Date: Tuesday, March 15, 2022 at 6:06 AM
To: sympa-community/sympa ***@***.***>
Cc: IU List Administrator ***@***.***>, Mention ***@***.***>
Subject: [External] Re: [sympa-community/sympa] Unsubscribe and Signoff Requests Cause Sympa Service Crash in 6.4.68 (Issue #1359)
This message was sent from a non-IU address. Please exercise caution when clicking links or opening attachments from external sources.
A sample file containing the message which crashes Sympa would be helpful too.
—
Reply to this email directly, view it on GitHub<#1359 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AG5EZRSYIMW2IQRKXCXFSX3VABOJXANCNFSM5QJ5CP6A>.
Triage notifications on the go with GitHub Mobile for iOS<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
Mar 15 10:43:05 iulist-test-app task_manager[2097]: debug3 Sympa::Spool::unmarshal_metadata() ***@***.***, context=iulist-test-app.uits.iu.edu, priority=1
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Spool::unmarshal_metadata(/var/spool/sympa/msg, ***@***.***, qr<(?^:\A([^\s\@]+)(?:\@([\w\.\-]+))?\.(\d+)\.(\w+)(?:,.*)?\z)>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Spool::unmarshal_metadata() ***@***.***, context=list-test.uits.iu.edu, priority=1
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Message::new(Sympa::Message, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: notice Sympa::Spindle::ProcessIncoming::_twist() Processing Sympa::Message ***@***.***>; ***@***.***; ***@***.***; ***@***.***
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::new(Sympa::Scenario, list-test.uits.iu.edu, spam_status, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath(list-test.uits.iu.edu, spam_status.x-spam-status, subdir)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::get_search_path(list-test.uits.iu.edu, subdir, scenari)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath() Name: spam_status.x-spam-status; file /etc/sympa/scenari/spam_status.x-spam-status
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_parse_scenario() (title.gettext test x-spam-status header#012#012match([header->X-IU-Spam][-1],/^\s*TRUE/)#011smtp,dkim,smime,md5 -> reject#012match([header->X-Spam-Status][-1],/^\s*yes/)#011smtp,dkim,smime,md5 -> spam#012match([header->X-j-chkmail-Status][-1],/Spam Hi/) #011smtp,dkim,smime,md5 -> spam#012match([header->X-j-chkmail-Status][-1],/Spam Low/) #011smtp,dkim,smime,md5 -> unsure#012true()#11#011#011#011#011 #011smtp,dkim,md5,smime -> ham#012, /etc/sympa/scenari/spam_status.x-spam-status)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::_compile_scenario(list-test.uits.iu.edu, spam_status, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::new(Sympa::Scenario, list-test.uits.iu.edu, include, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath(list-test.uits.iu.edu, include.spam_status.header, subdir)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::get_search_path(list-test.uits.iu.edu, subdir, scenari)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-IU-Spam][-1],/^\s*TRUE/), auth smtp,dkim,smime,md5, action reject
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-Spam-Status][-1],/^\s*yes/), auth smtp,dkim,smime,md5, action spam
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-j-chkmail-Status][-1],/Spam Hi/), auth smtp,dkim,smime,md5, action spam
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-j-chkmail-Status][-1],/Spam Low/), auth smtp,dkim,smime,md5, action unsure
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule true(), auth smtp,dkim,md5,smime, action ham
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::authz(Sympa::Scenario <spam_status.x-spam-status;/etc/sympa/scenari/spam_status.x-spam-status>, smtp, HASH, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:^\s*TRUE)>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:^\s*yes)>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:Spam Hi)>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:Spam Low)>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Message::check_smime_signature(Sympa::Message ***@***.***>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Message::smime_decrypt(Sympa::Message ***@***.***>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Message::check_virus_infection(Sympa::Message ***@***.***>, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug Sympa::Message::check_virus_infection() Sympa not configured to scan virus in message
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug Sympa::Spindle::DoCommand::_twist() Processing command with priority 1, ***@***.***
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: notice Sympa::Request::Message::__parse() Parsing: sig tsilver-test4-l
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::List::new(tsilver-test4-l, list-test.uits.iu.edu, just_try)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::List::load(Sympa::List <>, tsilver-test4-l, list-test.uits.iu.edu, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::List::_load_edit_list_conf(Sympa::List ***@***.***>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath(Sympa::List ***@***.***>, edit_list.conf, )
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::get_search_path(Sympa::List ***@***.***>, , )
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath() Name: edit_list.conf; file /etc/sympa/edit_list.conf
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: notice Sympa::Spindle::ProcessMessage::_twist() Processing Sympa::Request ***@***.******@***.***>
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::new(Sympa::Scenario, Sympa::List ***@***.***>, unsubscribe, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath(Sympa::List ***@***.***>, unsubscribe.open_notify, subdir)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::get_search_path(Sympa::List ***@***.***>, subdir, scenari)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath() Name: unsubscribe.open_notify; file /etc/sympa/scenari/unsubscribe.open_notify
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_parse_scenario() (# unsubscribe.open_notify#012title.gettext open with mail confirmation, owner is notified#012#012!equal([sender],[email]) smtp,dkim,md5,smime -> request_auth([email])#012true() smtp,dkim,md5,smime -> do_it,notify#012, /etc/sympa/scenari/unsubscribe.open_notify)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::_compile_scenario(Sympa::List ***@***.***>, unsubscribe, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::new(Sympa::Scenario, Sympa::List ***@***.***>, include, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::search_fullpath(Sympa::List ***@***.***>, include.unsubscribe.header, subdir)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::get_search_path(Sympa::List ***@***.***>, subdir, scenari)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule !equal([sender],[email]), auth smtp,dkim,md5,smime, action request_auth([email])
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::_compile_scenario() Verify rule true(), auth smtp,dkim,md5,smime, action do_it,notify
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Scenario::authz(Sympa::Scenario <unsubscribe.open_notify;/etc/sympa/scenari/unsubscribe.open_notify>, smtp, HASH, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Scenario::do_equal(Sympa::List ***@***.***>,equal,...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::List::delete_list_member(Sympa::List ***@***.***>, ...)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::List::insert_delete_exclusion(Sympa::List ***@***.***>, ***@***.***, insert)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::List::get_list_member(Sympa::List ***@***.***>, ***@***.***)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Database::do_prepared_query() Will perform query "SELECT bounce_subscriber AS "bounce", bounce_address_subscriber AS "bounce_address", bounce_score_subscriber AS "bounce_score", custom_attribute_subscriber AS "custom_attribute", date_epoch_subscriber AS "date", user_subscriber AS "email", suspend_end_date_subscriber AS "enddate", comment_subscriber AS "gecos", inclusion_subscriber AS "inclusion", inclusion_ext_subscriber AS "inclusion_ext", inclusion_label_subscriber AS "inclusion_label", number_messages_subscriber AS "number_messages", reception_subscriber AS "reception", suspend_start_date_subscriber AS "startdate", subscribed_subscriber AS "subscribed", suspend_subscriber AS "suspend", topics_subscriber AS "topics", update_epoch_subscriber AS "update_date", visibility_subscriber AS "visibility" FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?"
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Database::do_prepared_query() Did not find prepared statement for SELECT bounce_subscriber AS "bounce", bounce_address_subscriber AS "bounce_address", bounce_score_subscriber AS "bounce_score", custom_attribute_subscriber AS "custom_attribute", date_epoch_subscriber AS "date", user_subscriber AS "email", suspend_end_date_subscriber AS "enddate", comment_subscriber AS "gecos", inclusion_subscriber AS "inclusion", inclusion_ext_subscriber AS "inclusion_ext", inclusion_label_subscriber AS "inclusion_label", number_messages_subscriber AS "number_messages", reception_subscriber AS "reception", suspend_start_date_subscriber AS "startdate", subscribed_subscriber AS "subscribed", suspend_subscriber AS "suspend", topics_subscriber AS "topics", update_epoch_subscriber AS "update_date", visibility_subscriber AS "visibility" FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?. Doing it
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Database::connect(Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#360 > Sympa::DatabaseDriver::MySQL::connect#58 > Sympa::Database::connect#113 Transaction on database Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa> was aborted: MySQL server has gone away
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#361 Unable to get a handle to sympa database
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2109 Unable to gather information for user: ***@***.***
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Database::do_prepared_query() Will perform query "DELETE FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?"
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Database::do_prepared_query() Did not find prepared statement for DELETE FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?. Doing it
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug3 Sympa::Database::connect(Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa>)
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: debug2 Sympa::Database::connect() Connected to Database Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa>
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: info Sympa::List::delete_list_member() Unable to remove list member ***@***.*** from list Sympa::List ***@***.***>: Not on list
Mar 15 10:43:19 iulist-test-app sympa_msg[2093]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1621 > Sympa::Database::commit#453 DIED: bug in logic. Ask developer at /usr/share/sympa/lib/Sympa/Database.pm line 453.
Mar 15 10:43:19 iulist-test-app task_manager[2097]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:43:19 iulist-test-app task_manager[2097]: notice main:: Task_Manager exited normally due to signal
Mar 15 10:43:19 iulist-test-app bulk[2102]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:43:19 iulist-test-app bulk[2102]: notice main:: Bulk exited normally due to signal
Mar 15 10:43:19 iulist-test-app archived[2105]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:43:19 iulist-test-app archived[2105]: notice main:: Archived exited normally due to signal
Mar 15 10:43:19 iulist-test-app bounced[2103]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:43:19 iulist-test-app bounced[2103]: notice main:: Bounced exited normally due to signal
10:43:18.858751 IP iulist-test-app.uits.iu.edu.38434 > iulist-test-db.uits.iu.edu.mysql: Flags [P.], seq 36517:36681, ack 21765, win 1424, options [nop,nop,TS val 66457865 ecr 438915579], length 164
10:43:18.898720 IP iulist-test-app.uits.iu.edu.38434 > iulist-test-db.uits.iu.edu.mysql: Flags [.], ack 21852, win 1424, options [nop,nop,TS val 66457905 ecr 438915580], length 0
10:43:32.485510 IP iulist-test-app.uits.iu.edu.38556 > iulist-test-db.uits.iu.edu.mysql: Flags [S], seq 3195296050, win 29200, options [mss 1460,sackOK,TS val 66471491 ecr 0,nop,wscale 7], length 0
10:43:32.485780 IP iulist-test-app.uits.iu.edu.38556 > iulist-test-db.uits.iu.edu.mysql: Flags [.], ack 560590398, win 229, options [nop,nop,TS val 66471492 ecr 438929206], length 0
10:43:32.486126 IP iulist-test-app.uits.iu.edu.38556 > iulist-test-db.uits.iu.edu.mysql: Flags [.], ack 83, win 229, options [nop,nop,TS val 66471492 ecr 438929207], length 0
10:43:32.492527 IP iulist-test-app.uits.iu.edu.38556 > iulist-test-db.uits.iu.edu.mysql: Flags [P.], seq 0:91, ack 83, win 229, options [nop,nop,TS val 66471498 ecr 438929207], length 91
10:43:32.492958 IP iulist-test-app.uits.iu.edu.38556 > iulist-test-db.uits.iu.edu.mysql: Flags [P.], seq 91:96, ack 94, win 229, options [nop,nop,TS val 66471499 ecr 438929214], length 5
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Spool::unmarshal_metadata(/var/spool/sympa/msg, ***@***.***, qr<(?^:\A([^\s\@]+)(?:\@([\w\.\-]+))?\.(\d+)\.(\w+)(?:,.*)?\z)>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Spool::unmarshal_metadata() ***@***.***, context=list-test.uits.iu.edu, priority=1
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Message::new(Sympa::Message, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: notice Sympa::Spindle::ProcessIncoming::_twist() Processing Sympa::Message ***@***.***>; ***@***.***; ***@***.***; ***@***.***
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::new(Sympa::Scenario, list-test.uits.iu.edu, spam_status, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath(list-test.uits.iu.edu, spam_status.x-spam-status, subdir)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::get_search_path(list-test.uits.iu.edu, subdir, scenari)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath() Name: spam_status.x-spam-status; file /etc/sympa/scenari/spam_status.x-spam-status
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_parse_scenario() (title.gettext test x-spam-status header#012#012match([header->X-IU-Spam][-1],/^\s*TRUE/)#011smtp,dkim,smime,md5 -> reject#012match([header->X-Spam-Status][-1],/^\s*yes/)#011smtp,dkim,smime,md5 -> spam#012match([header->X-j-chkmail-Status][-1],/Spam Hi/) #011smtp,dkim,smime,md5 -> spam#012match([header->X-j-chkmail-Status][-1],/Spam Low/) #011smtp,dkim,smime,md5 -> unsure#012true()#11#011#011#011#011 #011smtp,dkim,md5,smime -> ham#012, /etc/sympa/scenari/spam_status.x-spam-status)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::_compile_scenario(list-test.uits.iu.edu, spam_status, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::new(Sympa::Scenario, list-test.uits.iu.edu, include, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath(list-test.uits.iu.edu, include.spam_status.header, subdir)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::get_search_path(list-test.uits.iu.edu, subdir, scenari)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-IU-Spam][-1],/^\s*TRUE/), auth smtp,dkim,smime,md5, action reject
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-Spam-Status][-1],/^\s*yes/), auth smtp,dkim,smime,md5, action spam
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-j-chkmail-Status][-1],/Spam Hi/), auth smtp,dkim,smime,md5, action spam
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule match([header->X-j-chkmail-Status][-1],/Spam Low/), auth smtp,dkim,smime,md5, action unsure
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule true(), auth smtp,dkim,md5,smime, action ham
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::authz(Sympa::Scenario <spam_status.x-spam-status;/etc/sympa/scenari/spam_status.x-spam-status>, smtp, HASH, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:^\s*TRUE)>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:^\s*yes)>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:Spam Hi)>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::do_match(list-test.uits.iu.edu,match,,qr<(?^i:Spam Low)>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Message::check_smime_signature(Sympa::Message ***@***.***>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Message::smime_decrypt(Sympa::Message ***@***.***>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Message::check_virus_infection(Sympa::Message ***@***.***>, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug Sympa::Message::check_virus_infection() Sympa not configured to scan virus in message
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug Sympa::Spindle::DoCommand::_twist() Processing command with priority 1, ***@***.***
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: notice Sympa::Request::Message::__parse() Parsing: unsubscribe tsilver-test4-l
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::List::new(tsilver-test4-l, list-test.uits.iu.edu, just_try)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::List::load(Sympa::List <>, tsilver-test4-l, list-test.uits.iu.edu, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::List::_load_edit_list_conf(Sympa::List ***@***.***>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath(Sympa::List ***@***.***>, edit_list.conf, )
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::get_search_path(Sympa::List ***@***.***>, , )
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath() Name: edit_list.conf; file /etc/sympa/edit_list.conf
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: notice Sympa::Spindle::ProcessMessage::_twist() Processing Sympa::Request ***@***.******@***.***>
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::new(Sympa::Scenario, Sympa::List ***@***.***>, unsubscribe, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath(Sympa::List ***@***.***>, unsubscribe.open_notify, subdir)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::get_search_path(Sympa::List ***@***.***>, subdir, scenari)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath() Name: unsubscribe.open_notify; file /etc/sympa/scenari/unsubscribe.open_notify
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_parse_scenario() (# unsubscribe.open_notify#012title.gettext open with mail confirmation, owner is notified#012#012!equal([sender],[email]) smtp,dkim,md5,smime -> request_auth([email])#012true() smtp,dkim,md5,smime -> do_it,notify#012, /etc/sympa/scenari/unsubscribe.open_notify)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::_compile_scenario(Sympa::List ***@***.***>, unsubscribe, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::new(Sympa::Scenario, Sympa::List ***@***.***>, include, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::search_fullpath(Sympa::List ***@***.***>, include.unsubscribe.header, subdir)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::get_search_path(Sympa::List ***@***.***>, subdir, scenari)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule !equal([sender],[email]), auth smtp,dkim,md5,smime, action request_auth([email])
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::_compile_scenario() Verify rule true(), auth smtp,dkim,md5,smime, action do_it,notify
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Scenario::authz(Sympa::Scenario <unsubscribe.open_notify;/etc/sympa/scenari/unsubscribe.open_notify>, smtp, HASH, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Scenario::do_equal(Sympa::List ***@***.***>,equal,...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::List::delete_list_member(Sympa::List ***@***.***>, ...)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::List::insert_delete_exclusion(Sympa::List ***@***.***>, ***@***.***, insert)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::List::get_list_member(Sympa::List ***@***.***>, ***@***.***)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Database::do_prepared_query() Will perform query "SELECT bounce_subscriber AS "bounce", bounce_address_subscriber AS "bounce_address", bounce_score_subscriber AS "bounce_score", custom_attribute_subscriber AS "custom_attribute", date_epoch_subscriber AS "date", user_subscriber AS "email", suspend_end_date_subscriber AS "enddate", comment_subscriber AS "gecos", inclusion_subscriber AS "inclusion", inclusion_ext_subscriber AS "inclusion_ext", inclusion_label_subscriber AS "inclusion_label", number_messages_subscriber AS "number_messages", reception_subscriber AS "reception", suspend_start_date_subscriber AS "startdate", subscribed_subscriber AS "subscribed", suspend_subscriber AS "suspend", topics_subscriber AS "topics", update_epoch_subscriber AS "update_date", visibility_subscriber AS "visibility" FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?"
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Database::do_prepared_query() Did not find prepared statement for SELECT bounce_subscriber AS "bounce", bounce_address_subscriber AS "bounce_address", bounce_score_subscriber AS "bounce_score", custom_attribute_subscriber AS "custom_attribute", date_epoch_subscriber AS "date", user_subscriber AS "email", suspend_end_date_subscriber AS "enddate", comment_subscriber AS "gecos", inclusion_subscriber AS "inclusion", inclusion_ext_subscriber AS "inclusion_ext", inclusion_label_subscriber AS "inclusion_label", number_messages_subscriber AS "number_messages", reception_subscriber AS "reception", suspend_start_date_subscriber AS "startdate", subscribed_subscriber AS "subscribed", suspend_subscriber AS "suspend", topics_subscriber AS "topics", update_epoch_subscriber AS "update_date", visibility_subscriber AS "visibility" FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?. Doing it
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Database::connect(Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#360 > Sympa::DatabaseDriver::MySQL::connect#58 > Sympa::Database::connect#113 Transaction on database Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa> was aborted: MySQL server has gone away
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#361 Unable to get a handle to sympa database
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2109 Unable to gather information for user: ***@***.***
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Database::do_prepared_query() Will perform query "DELETE FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?"
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Database::do_prepared_query() Did not find prepared statement for DELETE FROM subscriber_table WHERE user_subscriber = ? AND list_subscriber = ? AND robot_subscriber = ?. Doing it
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug3 Sympa::Database::connect(Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa>)
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: debug2 Sympa::Database::connect() Connected to Database Sympa::DatabaseDriver::MySQL <db_host=iulist-test-db.uits.iu.edu;db_name=sympa;db_port=3306;db_user=sympa>
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: info Sympa::List::delete_list_member() Unable to remove list member ***@***.*** from list Sympa::List ***@***.***>: Not on list
Mar 15 10:55:25 iulist-test-app sympa_msg[15115]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1621 > Sympa::Database::commit#453 DIED: bug in logic. Ask developer at /usr/share/sympa/lib/Sympa/Database.pm line 453.
Mar 15 10:55:25 iulist-test-app task_manager[15119]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:55:25 iulist-test-app task_manager[15119]: notice main:: Task_Manager exited normally due to signal
Mar 15 10:55:25 iulist-test-app bulk[15127]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:55:25 iulist-test-app bulk[15127]: notice main:: Bulk exited normally due to signal
Mar 15 10:55:25 iulist-test-app archived[15125]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:55:25 iulist-test-app archived[15125]: notice main:: Archived exited normally due to signal
Mar 15 10:55:25 iulist-test-app bounced[15124]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 10:55:25 iulist-test-app bounced[15124]: notice main:: Bounced exited normally due to signal
|
You might also find this helpful. While applying OS patches today to our dev environment, I tested this there and again experienced the same behavior. The difference in dev is that the MySQL database is running on the same host as Sympa itself! And there is absolutely nothing happening on this system other than what we test directly. The patch that was suggested was applied in dev, as well.
Mar 15 13:37:56 list-dev sympa_msg[1378]: notice Sympa::Spindle::ProcessIncoming::_twist() Processing Sympa::Message ***@***.***>; ***@***.***; ***@***.***; ***@***.***
Mar 15 13:37:56 list-dev sympa_msg[1378]: notice Sympa::Spindle::ProcessIncoming::_twist() Processing Sympa::Message ***@***.***>; ***@***.***; ***@***.***; ***@***.***
Mar 15 13:40:41 list-dev sympa_msg[1378]: notice Sympa::Request::Message::__parse() Parsing: sig tsilver-noarch-dev-l
Mar 15 13:40:41 list-dev sympa_msg[1378]: notice Sympa::Request::Message::__parse() Parsing: sig tsilver-noarch-dev-l
Mar 15 13:40:42 list-dev sympa_msg[1378]: notice Sympa::Spindle::ProcessMessage::_twist() Processing Sympa::Request ***@***.******@***.***>
Mar 15 13:40:42 list-dev sympa_msg[1378]: notice Sympa::Spindle::ProcessMessage::_twist() Processing Sympa::Request ***@***.******@***.***>
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#360 > Sympa::DatabaseDriver::MySQL::connect#58 > Sympa::Database::connect#113 Transaction on database Sympa::DatabaseDriver::MySQL <db_host=localhost;db_name=sympa;db_port=3306;db_user=sympa> was aborted: MySQL server has gone away
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#360 > Sympa::DatabaseDriver::MySQL::connect#58 > Sympa::Database::connect#113 Transaction on database Sympa::DatabaseDriver::MySQL <db_host=localhost;db_name=sympa;db_port=3306;db_user=sympa> was aborted: MySQL server has gone away
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#361 Unable to get a handle to sympa database
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2094 > Sympa::Database::do_prepared_query#361 Unable to get a handle to sympa database
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2109 Unable to gather information for user: ***@***.***
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1561 > Sympa::List::insert_delete_exclusion#1887 > Sympa::List::get_list_member#2109 Unable to gather information for user: ***@***.***
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1621 > Sympa::Database::commit#453 DIED: bug in logic. Ask developer at /usr/share/sympa/lib/Sympa/Database.pm line 453.
Mar 15 13:40:42 list-dev sympa_msg[1378]: err main::#243 > Sympa::Spindle::spin#95 > Sympa::Spindle::DoCommand::_twist#120 > Sympa::Spindle::spin#95 > Sympa::Request::Handler::signoff::_twist#74 > Sympa::List::delete_list_member#1621 > Sympa::Database::commit#453 DIED: bug in logic. Ask developer at /usr/share/sympa/lib/Sympa/Database.pm line 453.
Mar 15 13:40:46 list-dev task_manager[1382]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev task_manager[1382]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev task_manager[1382]: notice main:: Task_Manager exited normally due to signal
Mar 15 13:40:46 list-dev task_manager[1382]: notice main:: Task_Manager exited normally due to signal
Mar 15 13:40:46 list-dev bulk[1388]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev bulk[1388]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev bulk[1388]: notice main:: Bulk exited normally due to signal
Mar 15 13:40:46 list-dev bulk[1388]: notice main:: Bulk exited normally due to signal
Mar 15 13:40:46 list-dev bounced[1386]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev bounced[1386]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev archived[1387]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev archived[1387]: notice main::sigterm() Signal TERM received, still processing current task
Mar 15 13:40:46 list-dev bounced[1386]: notice main:: Bounced exited normally due to signal
Mar 15 13:40:46 list-dev bounced[1386]: notice main:: Bounced exited normally due to signal
Mar 15 13:40:46 list-dev archived[1387]: notice main:: Archived exited normally due to signal
Mar 15 13:40:46 list-dev archived[1387]: notice main:: Archived exited normally due to signal
Tim
From: IU List Administrator ***@***.***>
Date: Tuesday, March 15, 2022 at 11:05 AM
To: sympa-community/sympa ***@***.***>, sympa-community/sympa ***@***.***>
Cc: Mention ***@***.***>
Subject: Re: [External] Re: [sympa-community/sympa] Unsubscribe and Signoff Requests Cause Sympa Service Crash in 6.4.68 (Issue #1359)
I have provided some details via the Sympa users mailing list, but here are more from recent tests. My time to spend on this may be limited this week as I am covering duties while others are on vacation. I’ll do what I can but perhaps next week I can more thoroughly test. Attached are recent messages to unsubscribe from lists in our test environment that all caused Sympa to crash, regardless of whether the subscriber was a member of the list or not; only in one instance was the subscriber not a member of the list. Log details were provided for a couple of the events I tested today. I hope this proves helpful. Another option I am considering is rolling back to the previous version of Sympa in test to see if that causes this issue to go away. It was not occurring before the upgrade to 6.2.68. I thought that the database might be throttling or blocking connections based on that one error, but I flushed the host cache and it didn’t matter. Plus, production sees a significant amount of traffic; we have over 100K lists, and it isn’t getting blocked by the database while this test instance is only used by us administrators and I can’t get a single unsubscribe requests to process.
Tim
From: Stefan Hornburg (Racke) ***@***.***>
Date: Tuesday, March 15, 2022 at 6:06 AM
To: sympa-community/sympa ***@***.***>
Cc: IU List Administrator ***@***.***>, Mention ***@***.***>
Subject: [External] Re: [sympa-community/sympa] Unsubscribe and Signoff Requests Cause Sympa Service Crash in 6.4.68 (Issue #1359)
This message was sent from a non-IU address. Please exercise caution when clicking links or opening attachments from external sources.
A sample file containing the message which crashes Sympa would be helpful too.
—
Reply to this email directly, view it on GitHub<#1359 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AG5EZRSYIMW2IQRKXCXFSX3VABOJXANCNFSM5QJ5CP6A>.
Triage notifications on the go with GitHub Mobile for iOS<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Hello, we hit the same issue. It was not seen before the 6.2.68 version. We do have separate database (maria db) server, Sympa is build from source. Sympa crashed while working on a signoff mail: And sympa can't be started. There is still a mail in /var/spool/sympa/msg triggering the crash.
|
@igoltz , could you please apply this patch and check if the problem will be solvbed? |
@ikedas I already had the patch applied, it has no effect |
Just in case, have you restarted all services (Sympa and web interface) after applying the patch? |
In the |
Could you please restart all services (Sympa and web interface) again? |
@ikedas Sympa itself crashes on (or sligthly after) every start with the above error, so in fact it's a fresh start each time. |
Could you please let us know these things?
|
MariaDB 10.5.9 (mariadb-10.5.9-1.module_el8.4.0+2357+88cd7ba1.x86_64) on dedicated host.
|
Thank you. I'll try reproducing the problem using those parameters. I'm sorry but It'll take some time: I'll be in vacation in the next week. The other questions that come to my mind:
|
Addition. Also please check the log of MySQL server to know the reason why the database connection terminated. |
As this problem did not exist before 6.2.68 I now tried to revert the changes since 6.2.66. Replaced
with the versions taged 6.2.66 and now Sympa starts and processes the queue. |
@ikedas |
It's needed for PostgreSQL to work properly. |
@ikedas |
@ikedas I could not spot any obvious differences between good/bad mails yet. |
@ikedas |
@igoltz Can you also add versions of MySQL libs + related Perl modules on the Sympa server? |
So not finding anything in the database connection, where does the mysql error message come from?
Trying with BAD and OK message I see that the same $DBI::errstr is printed while processing either messages! Here the log from the good one which is processed fine.
|
Been following the latest discussion about this issue. Here are the specifics for our database instance in production (we also have test and dev environments with dev hosting the database on the same server as the app server). We see that when Sympa crashes due to a signoff request, the list does exist and the member is removed, but the message remains in the spool and will prevent Sympa from starting. MySQL Server version: 5.7.37 |
Peoblem is that, when |
@igoltz and @iulistadmin , can you tell us the exact version of DBD-MySQL module (perl-DBD-MySQL, if you are using RPM package) ? |
Name : perl-DBD-MySQL |
perlbrew perl-5.30.3 compiled on almalinux 8 |
@Jylhis, the improvement introduced by #1186 have some problems running on (at least) MySQL/MariaDB. we'd be better to revert it once and rework it in the future (e.g. on separate branch). @iulistadmin and @igoltz , to revert the changes in 6.2.68, please check this patch. The next release (6.2.70?) will contain this patch. |
@ikedas We applied this to our non-production environment and it indeed resolved our issue. Thank you! When is 6.2.70 scheduled for (pre)release? |
@ikedas Yes as far as I can reproduce the failure is gone now. |
The changes for #1186 have been reverted. This issue is closed for now. |
We applied the patch for this issue Sunday July 10th but on July 15th we experienced another crash again related to a signoff request. The message was removed from the queue and Sympa was started. The Sympa logs from the event are provided. There only thing in the MySQL logs is “Got timeout reading communication packets”. This error occurs when idle threads are killed by wait_timeout. Does Sympa call mysql_close() in scripts when the connection is no longer needed? Another Sympa admin stated on the users mailing list, "If Sympa is going to open connections and use them persistently, then it should probably issue a SET SESSION WAIT_TIMEOUT = 28800 (or some other suitable value) upon opening its connection. On the other hand if it is
|
Hi @iulistadmin , To me, it looks like either the patch was not applied at all or the service was not restarted after the patch was applied. |
We have since rebooted the system, so we will allow the system to process requests as normal and monitor for any issues. Thanks! |
To follow-up, so far, so good. No further crashes after restarting services following the patches. Thank you to the development team for resolving this issue. |
When Sympa receive an unsubscribe command in the subject of an email, it causes the service to crash. The unsubscribe request is held in the spool directory but the member is successfully unsubscribed from the list, despite an error in the log to the contrary. Other requests continue to be received but held until the unsubscribe request is removed from the spool and Sympa services are restarted.
Version
6.4.68
Installation method
RPMs via the EPEL repo for CentOS 7
Expected behavior
The unsubscribe requests should be processed without causing a service disruption.
Actual behavior
When Sympa receives an email with an unsubscribe command in the subject (e.g., SIG|SIGNOFF|UNS|UNSUBSCRIBE) the service will crash. Log data similar to the following is generated.
Steps to reproduce
Send an email to the command processing address with an unsubscribe command in the subject (e.g., SIG|SIGNOFF|UNS|UNSUBSCRIBE ) and Sympa will terminate. This has been replicated from several clients and online email services (i.e., Gmail, Yahoo! Mail, Xfinity).
Additional information
Sending to the LISTNAME-unsubscribe@domain address does NOT cause a service crash. Sympa will consistently process these requests successfully.
The text was updated successfully, but these errors were encountered: