You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by he...@apache.org on 2022/04/10 19:02:14 UTC
svn commit: r1899713 - /spamassassin/trunk/lib/Mail/SpamAssassin/SQLBasedAddrList.pm
Author: hege
Date: Sun Apr 10 19:02:14 2022
New Revision: 1899713
URL: http://svn.apache.org/viewvc?rev=1899713&view=rev
Log:
Allow DBI:MariaDB usage
Modified:
spamassassin/trunk/lib/Mail/SpamAssassin/SQLBasedAddrList.pm
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/SQLBasedAddrList.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/SQLBasedAddrList.pm?rev=1899713&r1=1899712&r2=1899713&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/SQLBasedAddrList.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/SQLBasedAddrList.pm Sun Apr 10 19:02:14 2022
@@ -296,16 +296,16 @@ sub add_score {
my @args = ($self->{_username}, $email, $ip, 1, $score);
my $sql = sprintf("INSERT INTO %s (%s) VALUES (%s)", $self->{tablename},
join(',', @fields), join(',', ('?') x @fields));
- if ($self->{dsn} =~ /DBI:pg/i) {
+ if ($self->{dsn} =~ /^DBI:pg/i) {
$sql .= " ON CONFLICT (username, email, signedby, ip) DO UPDATE set msgcount = ?, totscore = ?";
- } elsif ($self->{dsn} =~ /DBI:mysql/i) {
+ } elsif ($self->{dsn} =~ /^DBI:(?:mysql|MariaDB)/i) {
$sql .= " ON DUPLICATE KEY UPDATE msgcount = ?, totscore = ?";
}
my $sth = $self->{dbh}->prepare($sql);
if (!$self->{_with_awl_signer}) {
my $rc;
- if ($self->{dsn} =~ /DBI:(pg|mysql)/i) {
+ if ($self->{dsn} =~ /^DBI:(?:pg|mysql|MariaDB)/i) {
$rc = $sth->execute(@args, $entry->{msgcount}, $score);
} else {
$rc = $sth->execute(@args);
@@ -321,7 +321,7 @@ sub add_score {
} else {
for my $s (@signedby) {
my $rc;
- if ($self->{dsn} =~ /DBI:(pg|mysql)/i) {
+ if ($self->{dsn} =~ /^DBI:(?:pg|mysql|MariaDB)/i) {
$rc = $sth->execute(@args, $s, $entry->{msgcount}, $score);
} else {
$rc = $sth->execute(@args, $s);
@@ -338,7 +338,7 @@ sub add_score {
}
}
- if (!$inserted && $self->{dsn} !~ /DBI:(pg|mysql)/i) {
+ if (!$inserted && $self->{dsn} !~ /^DBI:(?:pg|mysql|MariaDB)/i) {
# insert failed, assume primary key constraint, so try the update
my $sql = "UPDATE $self->{tablename} ".