Spam Filter ISP Support Forum

  New Posts New Posts RSS Feed - New SpamFilter Enterprise Release Candida
  FAQ FAQ  Forum Search   Register Register  Login Login

New SpamFilter Enterprise Release Candida

 Post Reply Post Reply Page  12>
Author
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Topic: New SpamFilter Enterprise Release Candida
    Posted: 13 March 2007 at 11:39pm
The new SpamFilter Enterprise 3.5.3.654 Release Candidate RC1 is now available in the registered user area. There is only one minor bug fix from the latest beta as can be seen in the release notes.

Perhaps the biggest change is the availability of a new manual and documentation. While this is still a work in progress, we hope it is pretty accurate as-is.

The release note for this last build is as follows:
// New to VersionNumber = '3.5.3.654';
{TODO -cFix : SpamFilter could send duplicate emails when executing the process that runs every 60 minutes that reprocesses emails in the queue, as it could re-send emails that were being delivered at that exact moment}

Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
__M__ View Drop Down
Groupie
Groupie


Joined: 30 August 2006
Location: Australia
Status: Offline
Points: 75
Post Options Post Options   Thanks (0) Thanks(0)   Quote __M__ Quote  Post ReplyReply Direct Link To This Post Posted: 18 March 2007 at 12:26am
Roberto, can you confirm when the beta expiry date is for 3.5.3.654.

Judging by the download page it looks like April 1st, considering I need to run the beta version of SFE on our live server to resolve the mail-splitting issue this could be a problem for me after April 1.


Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 18 March 2007 at 8:32am
I apologize, the expiration was a month off. The RC expires 5/1/07. We're so close to the release date we didn't notice...
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 19 March 2007 at 1:51pm

Roberto,

I'm noticing this error on our SF Ent Ver 3.1.3.615

Exception occurred during TFilterObject.LoadFilter: Access violation at address 005F30A8 in module 'SpamFilterSvc.exe'. Read of address 0000009C

Thanks,
Dan B

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 19 March 2007 at 1:52pm
Oops...  Ver 3.5.3.654
Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 19 March 2007 at 1:58pm

R,

I'm preforming direct database configuration of adding and removing domains and SF is not seeing the changes.  If I restart the service it will then see that a domain had been added or removed and load those settings.

Is this a bug?  Or are we not allowed to make direct changes to the database?

Thanks,
Dan B

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 19 March 2007 at 2:04pm

R,  Here is a bug that I just fould.  Ver 3.5.3.654

From within the SF Setting GUI adding or editing a domain name it is limited to 12 chars.

Dan B

 

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 19 March 2007 at 3:38pm

R,

Here is another Exceprion occurred error in the log file.  Ver 3.5.3.654

(872) Exception occurred during TFilterObject.SaveFilterSettings: Invalid field size

 

Dan

Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 19 March 2007 at 6:21pm
Dan,

The changes to the database should be seen by SpamFilter within 5 seconds. This is done by making the use of triggers. Whenever an entry in a table is added/deleted/modified, a trigger within that table causes a new record to be created in the table "tblreloadtableinfo" that will contain the domain id being modified, and the table name that was changed. SpamFilter continuosly monitors this table, and as soon as there is a new entry SpamFilter will reload the right table. I hope the competition doesn't see this and get ideas from us....

This said, could you verify that this is indeed happening (the addition of new records inthe tblreloadtableinfo)? Please note that if there is already an existing record for the domainid/tablename combination, we won't add another one. If this is not happening, there may be a trigger missing from your database. This could be possible if you had an older version of SpamFilter Enterprise create the tables, as previous versions were indeed buggy (but so could this version...)

It is problem that your 1st and last posting are related.

In regards to the 12 char limit, we've had another report about it, but could not replicate it. What database platform and version are you using?
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 20 March 2007 at 12:01pm

Roberto,

I'm using MySQL 5.0.37 as the database.  SF GUI would not create the tables and triggers.  I had to manually run the sql script that was provided with the latest SF RC.  As to the tblreloadtableinfo it's inserting the records to which tables are being modified and I'm seeing SF load the new settings within the activity log window but if I'm in the SF Settings window and a change is made to some records by the database.  It's not refreshing the data automatically.  I have to close the SF settings window and reopen it and the new data will display.  i.e  SMTP settings, testing the port change and the local domains table top left of window adding new domains by database.

I have notice that If I try step 2 of the create / check database tables.  I get the following errors.

------------------------------------------------

================
please wait...
Found tblQuarantine
Found tblMsgs
Found tblRejectCodes
Found tblLogins
Found tblServers
tbl_FilterSettingsPresent - not found
tbl_LocalDomainsPresent - not found
tblBL_AttachmentsPresent - not found
tblBL_CountriesPresent - not found
tblBL_DomainsPresent - not found
tblBL_EmailsFromPresent - not found
tblBL_EmailsToPresent - not found
tblBL_HoneypotblockedIPsPresent - not found
tblBL_HoneypotEmailsPresent - not found
tblBL_IPsPresent - not found
tblBL_KeywordsPresent - not found
tblBL_MAPSPresent - not found
tblBL_SURBLPresent - not found
tblReloadTableInfoPresent - not found
tblWL_AuthorizedTOEmailsPresent - not found
tblWL_AutoWhitelistForceDeliveryPresent - not found
tblWL_DomainsIPsPresent - not found
tblWL_EmailsFromPresent - not found
tblWL_EmailsToPresent - not found
tblWL_KeywordsPresent - not found
Some Enterprise Database tables not found - recreating...
===========Executing:============
-- mysql enterprise setup
-- drop table if exists `tblbl_domains`;
-- go
create table if not exists `tblbl_domains` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `domainname` varchar(255),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `domainname` (`domainname`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_emailsfrom`;
-- go
create table if not exists `tblbl_emailsfrom` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_emailsto`;
-- go
create table if not exists `tblbl_emailsto` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_maps`;
-- go
create table if not exists `tblbl_maps` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `server` varchar(255),
  `reverseip` tinyint(1) default 1,
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `server` (`server`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_keywords`;
-- go
create table if not exists `tblbl_keywords` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `keywords` varchar(1024),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_attachments`;
-- go
create table if not exists `tblbl_attachments` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `attachments` varchar(1024),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_surbl`;
-- go
create table if not exists `tblbl_surbl` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `server` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `server` (`server`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_ips`;
-- go
create table if not exists `tblbl_ips` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `ip` varchar(15),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `ip` (`ip`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_honeypotemails`;
-- go
create table if not exists `tblbl_honeypotemails` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_honeypotblockedips`;
-- go
create table if not exists `tblbl_honeypotblockedips` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `ip` varchar(15),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `ip` (`ip`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblbl_countries`;
-- go
create table if not exists `tblbl_countries` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `countrycode` varchar(2),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `countrycode` (`countrycode`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblwl_authorizedtoemails`;
-- go
create table if not exists `tblwl_authorizedtoemails` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblwl_keywords`;
-- go
create table if not exists `tblwl_keywords` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `keywords` varchar(1024),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblwl_emailsfrom`;
-- go
create table if not exists `tblwl_emailsfrom` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblwl_emailsto`;
-- go
create table if not exists `tblwl_emailsto` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblwl_autowhitelistforcedelivery`;
-- go
create table if not exists `tblwl_autowhitelistforcedelivery` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `email` varchar(320),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `email` (`email`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblwl_domainsips`;
-- go
create table if not exists `tblwl_domainsips` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `loginid` int(11) default 0,
  `domain_or_ip` varchar(255),
  primary key  (`id`),
  key `domainid` (`domainid`),
  key `loginid` (`loginid`),
  key `domain_or_ip` (`domain_or_ip`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tblreloadtableinfo`;
-- go
create table if not exists `tblreloadtableinfo` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `tablename` varchar(45),
  `updatetable` tinyint(1) default 1,
  primary key  (`id`),
  key `tablename` (`tablename`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tbl_filtersettings`;
-- go
create table if not exists `tbl_filtersettings` (
  `id` int(11) not null auto_increment,
  `domainid` int(11) default 0,
  `bl_domainsforcedelete` tinyint(1) default 0,
  `bl_emailsfromforcedelete` tinyint(1) default 0,
  `bl_emailstoforcedelete` tinyint(1) default 0,
  `bl_countriesforcedelete` tinyint(1) default 0,
  `bl_mapsforcedelete` tinyint(1) default 0,
  `bl_keywordsforcedelete` tinyint(1) default 0,
  `bl_attachmentsforcedelete` tinyint(1) default 0,
  `bl_surblforcedelete` tinyint(1) default 0,
  `bl_ipsforcedelete` tinyint(1) default 0,
  `bl_honeypotemailsforcedelete` tinyint(1) default 0,
  `rejectnoreverseforcedelete` tinyint(1) default 0,
  `rejectnomxforcedelete` tinyint(1) default 0,
  `spffilterenableforcedelete` tinyint(1) default 0,
  `rejectemptymailfromforcedelete` tinyint(1) default 0,
  `rejectsametofromdomainforcedelete` tinyint(1) default 0,
  `rejectsametofromforcedelete` tinyint(1) default 0,
  `sfdbforcedelete` tinyint(1) default 0,
  `maxrcpt_toforcedelete` tinyint(1) default 0,
  `authorizedtoforcedelete` tinyint(1) default 0,
  `antivirusforcedelete` tinyint(1) default 0,
  `imageforcedelete` tinyint(1) default 0,
  `surblforcedelete` tinyint(1) default 0,
  `bayesianforcedelete` tinyint(1) default 0,
  `spffilterenable` tinyint(1) default 1,
  `spfneutralfilter` tinyint(1) default 0,
  `spfsoftfailfilter` tinyint(1) default 1,
  `spffailfilter` tinyint(1) default 1,
  `allowpercent` tinyint(1) default 0,
  `tagspam` tinyint(1) default 0,
  `tagspamsubject` tinyint(1) default 0,
  `tagspamandquarantine` tinyint(1) default 0,
  `rejectnoreverse` tinyint(1) default 1,
  `rejectnomx` tinyint(1) default 1,
  `rejectemptymailfrom` tinyint(1) default 0,
  `rejectsametofrom` tinyint(1) default 0,
  `rejectsametofromdomain` tinyint(1) default 0,
  `enableipcacheblacklist` tinyint(1) default 1,
  `autowhitelistforcedeliveryenabled` tinyint(1) default 1,
  `minmaps` int(11) default 1,
  `maxsubjectspaces` int(11) default 10,
  `spamimagethreshold` int(11) default 10,
  `sfdb_networkreliability` int(11) default 3,
  `sfdb_filtersall` tinyint(1) default 1,
  `sfdb_filterslist` varchar(255),
  `destsmtpserver` varchar(255) default '',
  `destsmtpserverport` int(11),
  primary key  (`id`),
  key `domainid` (`domainid`)
) type=innodb;

===========Done==================
===========Executing:============

-- drop table if exists `tbl_localdomains`;
-- go
create table if not exists `tbl_localdomains` (
  `id` int(11) not null auto_increment,
  `domainname` varchar(255),
  `destsmtpserver` varchar(255) default null,
  `destsmtpserverport` int(11) default null,
  `usedefaults` tinyint(1) not null default 1,
  primary key  (`id`),
  unique key `domainname` (`domainname`)
) type=innodb;

===========Done==================
===========Executing:============

alter table `tblbl_domains` add constraint `fktblbl_domains` foreign key `fktblbl_domains` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_emailsfrom` add constraint `fktblbl_emailsfrom` foreign key `fktblbl_emailsfrom` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_emailsto` add constraint `fktblbl_emailsto` foreign key `fktblbl_emailsto` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_maps` add constraint `fktblbl_maps` foreign key `fktblbl_maps` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_keywords` add constraint `fktblbl_keywords` foreign key `fktblbl_keywords` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_attachments` add constraint `fktblbl_attachments` foreign key `fktblbl_attachments` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_surbl` add constraint `fktblbl_surbl` foreign key `fktblbl_surbl` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_ips` add constraint `fktblbl_ips` foreign key `fktblbl_ips` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_honeypotemails` add constraint `fktblbl_honeypotemails` foreign key `fktblbl_honeypotemails` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblbl_honeypotblockedips` add constraint `fktblbl_honeypotblockedips` foreign key `fktblbl_honeypotblockedips` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblwl_authorizedtoemails` add constraint `fktblwl_authorizedtoemails` foreign key `fktblwl_authorizedtoemails` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblwl_keywords` add constraint `fktblwl_keywords` foreign key `fktblwl_keywords` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblwl_emailsfrom` add constraint `fktblwl_emailsfrom` foreign key `fktblwl_emailsfrom` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblwl_emailsto` add constraint `fktblwl_emailsto` foreign key `fktblwl_emailsto` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblwl_autowhitelistforcedelivery` add constraint `fktblwl_autowhitelistforcedelivery` foreign key `fktblwl_autowhitelistforcedelivery` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
alter table `tblwl_domainsips` add constraint `fktblwl_domainsips` foreign key `fktblwl_domainsips` (`domainid`)
    references `tbl_localdomains` (`id`) on delete cascade;

******* Error:Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)
===========Executing:============
insert into tbl_localdomains (domainname) values (' ALL DOMAINS');

******* Error:Duplicate entry ' ALL DOMAINS' for key 2
===========Executing:============

--  drop trigger tr_localdomains_au;
-- go
create trigger tr_localdomains_au
after update on tbl_localdomains
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.id) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.id, 1, 'tbl_localdomains');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger tr_localdomains_ai;
-- go
create trigger tr_localdomains_ai
after insert on tbl_localdomains
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.id) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.id, 1, 'tbl_localdomains');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger tr_localdomains_ad;
-- go
create trigger tr_localdomains_ad
after delete on tbl_localdomains
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.id) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.id, 1, 'tbl_localdomains');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger tr_localdomains_bd;
-- go
create trigger tr_localdomains_bd
before delete on tbl_localdomains
for each row
begin
 if (old.domainname = ' ALL DOMAINS') then
   call error_unabletodeletesystem_alldomains_record();
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_authorizedtoemails_au;
-- go
create trigger trwl_authorizedtoemails_au
after update on tblwl_authorizedtoemails
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_authorizedtoemails');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_authorizedtoemails_ai;
-- go
create trigger trwl_authorizedtoemails_ai
after insert on tblwl_authorizedtoemails
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblwl_authorizedtoemails');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_authorizedtoemails_ad;
-- go
create trigger trwl_authorizedtoemails_ad
after delete on tblwl_authorizedtoemails
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_authorizedtoemails');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_keywords_au;
-- go
create trigger trwl_keywords_au
after update on tblwl_keywords
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_keywords');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_keywords_ai;
-- go
create trigger trwl_keywords_ai
after insert on tblwl_keywords
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblwl_keywords');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_keywords_ad;
-- go
create trigger trwl_keywords_ad
after delete on tblwl_keywords
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_keywords');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_emailsfrom_au;
-- go
create trigger trwl_emailsfrom_au
after update on tblwl_emailsfrom
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_emailsfrom');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_emailsfrom_ai;
-- go
create trigger trwl_emailsfrom_ai
after insert on tblwl_emailsfrom
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblwl_emailsfrom');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_emailsfrom_ad;
-- go
create trigger trwl_emailsfrom_ad
after delete on tblwl_emailsfrom
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_emailsfrom');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_emailsto_au;
-- go
create trigger trwl_emailsto_au
after update on tblwl_emailsto
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_emailsto');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_emailsto_ai;
-- go
create trigger trwl_emailsto_ai
after insert on tblwl_emailsto
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblwl_emailsto');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_emailsto_ad;
-- go
create trigger trwl_emailsto_ad
after delete on tblwl_emailsto
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_emailsto');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_domainsips_au;
-- go
create trigger trwl_domainsips_au
after update on tblwl_domainsips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_domainsips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_domainsips_ai;
-- go
create trigger trwl_domainsips_ai
after insert on tblwl_domainsips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblwl_domainsips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_domainsips_ad;
-- go
create trigger trwl_domainsips_ad
after delete on tblwl_domainsips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_domainsips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_autowhitelistforcedelivery_au;
-- go
create trigger trwl_autowhitelistforcedelivery_au
after update on tblwl_autowhitelistforcedelivery
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_autowhitelistforcedelivery');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_autowhitelistforcedelivery_ai;
-- go
create trigger trwl_autowhitelistforcedelivery_ai
after insert on tblwl_autowhitelistforcedelivery
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblwl_autowhitelistforcedelivery');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trwl_autowhitelistforcedelivery_ad;
-- go
create trigger trwl_autowhitelistforcedelivery_ad
after delete on tblwl_autowhitelistforcedelivery
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblwl_autowhitelistforcedelivery');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_domains_au;
-- go
create trigger trbl_domains_au
after update on tblbl_domains
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_domains');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_domains_ai;
-- go
create trigger trbl_domains_ai
after insert on tblbl_domains
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_domains');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_domains_ad;
-- go
create trigger trbl_domains_ad
after delete on tblbl_domains
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_domains');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_emailsfrom_au;
-- go
create trigger trbl_emailsfrom_au
after update on tblbl_emailsfrom
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_emailsfrom');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_emailsfrom_ai;
-- go
create trigger trbl_emailsfrom_ai
after insert on tblbl_emailsfrom
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_emailsfrom');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_emailsfrom_ad;
-- go
create trigger trbl_emailsfrom_ad
after delete on tblbl_emailsfrom
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_emailsfrom');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_emailsto_au;
-- go
create trigger trbl_emailsto_au
after update on tblbl_emailsto
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_emailsto');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_emailsto_ai;
-- go
create trigger trbl_emailsto_ai
after insert on tblbl_emailsto
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_emailsto');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_emailsto_ad;
-- go
create trigger trbl_emailsto_ad
after delete on tblbl_emailsto
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_emailsto');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_countries_au;
-- go
create trigger trbl_countries_au
after update on tblbl_countries
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_countries');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_countries_ai;
-- go
create trigger trbl_countries_ai
after insert on tblbl_countries
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_countries');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_countries_ad;
-- go
create trigger trbl_countries_ad
after delete on tblbl_countries
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_countries');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_maps_au;
-- go
create trigger trbl_maps_au
after update on tblbl_maps
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_maps');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_maps_ai;
-- go
create trigger trbl_maps_ai
after insert on tblbl_maps
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_maps');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_maps_ad;
-- go
create trigger trbl_maps_ad
after delete on tblbl_maps
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_maps');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_keywords_au;
-- go
create trigger trbl_keywords_au
after update on tblbl_keywords
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_keywords');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_keywords_ai;
-- go
create trigger trbl_keywords_ai
after insert on tblbl_keywords
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_keywords');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_keywords_ad;
-- go
create trigger trbl_keywords_ad
after delete on tblbl_keywords
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_keywords');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_attachments_au;
-- go
create trigger trbl_attachments_au
after update on tblbl_attachments
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_attachments');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_attachments_ai;
-- go
create trigger trbl_attachments_ai
after insert on tblbl_attachments
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_attachments');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_attachments_ad;
-- go
create trigger trbl_attachments_ad
after delete on tblbl_attachments
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_attachments');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_surbl_au;
-- go
create trigger trbl_surbl_au
after update on tblbl_surbl
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_surbl');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_surbl_ai;
-- go
create trigger trbl_surbl_ai
after insert on tblbl_surbl
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_surbl');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_surbl_ad;
-- go
create trigger trbl_surbl_ad
after delete on tblbl_surbl
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_surbl');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_ips_au;
-- go
create trigger trbl_ips_au
after update on tblbl_ips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_ips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_ips_ai;
-- go
create trigger trbl_ips_ai
after insert on tblbl_ips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_ips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_ips_ad;
-- go
create trigger trbl_ips_ad
after delete on tblbl_ips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_ips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_honeypotemails_au;
-- go
create trigger trbl_honeypotemails_au
after update on tblbl_honeypotemails
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_honeypotemails');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_honeypotemails_ai;
-- go
create trigger trbl_honeypotemails_ai
after insert on tblbl_honeypotemails
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_honeypotemails');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_honeypotemails_ad;
-- go
create trigger trbl_honeypotemails_ad
after delete on tblbl_honeypotemails
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_honeypotemails');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_honeypotblockedips_au;
-- go
create trigger trbl_honeypotblockedips_au
after update on tblbl_honeypotblockedips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_honeypotblockedips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_honeypotblockedips_ai;
-- go
create trigger trbl_honeypotblockedips_ai
after insert on tblbl_honeypotblockedips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tblbl_honeypotblockedips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger trbl_honeypotblockedips_ad;
-- go
create trigger trbl_honeypotblockedips_ad
after delete on tblbl_honeypotblockedips
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tblbl_honeypotblockedips');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger tr_filtersettings_au;
-- go
create trigger tr_filtersettings_au
after update on tbl_filtersettings
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tbl_filtersettings');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger tr_filtersettings_ai;
-- go
create trigger tr_filtersettings_ai
after insert on tbl_filtersettings
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = new.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (new.domainid, 1, 'tbl_filtersettings');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
===========Executing:============

--  drop trigger tr_filtersettings_ad;
-- go
create trigger tr_filtersettings_ad
after delete on tbl_filtersettings
for each row
begin
 if not exists (select * from tblreloadtableinfo r where (r.domainid = old.domainid) and (r.tablename = tablename)) then
   insert into tblreloadtableinfo (domainid, updatetable, tablename) values (old.domainid, 1, 'tbl_filtersettings');
 end if;
end;

******* Error:This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'


Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Can't create table '.\spamfilter\#sql-6ac_5a3.frm' (errno: 121)

Duplicate entry ' ALL DOMAINS' for key 2

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
Retrieved ServerID from tblServers: 18
Done.

-----------------------------------------------------

Again,  we are using MySQL 5.0.37 a fresh install of SF and MySQL.

I hope this helps.

Thanks,
Dan B

 

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 20 March 2007 at 12:03pm

R,

Here is a thought.  When SF is checking for the tables is it comparing case sensitive?  All my tables are lower case and they all exist.

Dan B.

Back to Top
dabull07 View Drop Down
Newbie
Newbie


Joined: 20 March 2007
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote dabull07 Quote  Post ReplyReply Direct Link To This Post Posted: 20 March 2007 at 1:21pm
send me spam: administrator@aps.lfca1.us
Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 20 March 2007 at 7:55pm
Dan,

While in a Windows installation of MySQL the upper/lower case is not an issue, we did have problems in the past on Unix installs of MySQL whichi are instead case-sensitive. For this reason, SFE converts all SQL statements and table/field names to lower case.

Going back to the errors in your log above, it *seems* they are caused because the tables/triggers/foreign keys already exist in the DB, and you did not check the option to delete all objects prior to re-creating them.

The simplest solution would be to go ahead and do check that box. This however will delete all your tables, and you will loose any data they contain. We did all we could during the beta development to avoid restructuring the table structure, as that would have caused similar problems when installing newer versions of the beta. We were able to develop the correct table structure months ago and leave it unanltered, however we did have to make some adjustments to the triggers.

Can you please make a backup of your "MySql-Enterprise.sql" file in the SpamFilter\database directory, then replace the content of the above .sql file with the following modified script. This new script will cause SpamFilter to delete existing triggers and recreate them. Simply click in SpamFilter the "Create / Check database tables" button in the "Enterprise/Standard version" tab, *without* checking the "Drop Enterprise tables" box.

== PASTE CONTENTS BELOW =============================
-- MySQL Enterprise Setup

-- DROP TABLE IF EXISTS `tblBL_Domains`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_Domains` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `DomainName` varchar(255),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `DomainName` (`DomainName`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_EmailsFrom`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_EmailsFrom` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_EmailsTo`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_EmailsTo` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_MAPS`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_MAPS` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Server` varchar(255),
  `ReverseIP` tinyint(1) default 1,
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Server` (`Server`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_Keywords`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_Keywords` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Keywords` varchar(1024),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_Attachments`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_Attachments` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Attachments` varchar(1024),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_SURBL`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_SURBL` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Server` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Server` (`Server`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_IPs`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_IPs` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `IP` varchar(15),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `IP` (`IP`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_HoneypotEmails`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_HoneypotEmails` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_HoneypotBlockedIPs`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_HoneypotBlockedIPs` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `IP` varchar(15),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `IP` (`IP`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblBL_Countries`;
-- GO
CREATE TABLE IF NOT EXISTS `tblBL_Countries` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `CountryCode` varchar(2),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `CountryCode` (`CountryCode`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblWL_AuthorizedTOEmails`;
-- GO
CREATE TABLE IF NOT EXISTS `tblWL_AuthorizedTOEmails` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblWL_Keywords`;
-- GO
CREATE TABLE IF NOT EXISTS `tblWL_Keywords` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Keywords` varchar(1024),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblWL_EmailsFrom`;
-- GO
CREATE TABLE IF NOT EXISTS `tblWL_EmailsFrom` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblWL_EmailsTo`;
-- GO
CREATE TABLE IF NOT EXISTS `tblWL_EmailsTo` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblWL_AutoWhitelistForceDelivery`;
-- GO
CREATE TABLE IF NOT EXISTS `tblWL_AutoWhitelistForceDelivery` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Email` varchar(320),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Email` (`Email`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblWL_DomainsIPs`;
-- GO
CREATE TABLE IF NOT EXISTS `tblWL_DomainsIPs` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `LoginID` int(11) default 0,
  `Domain_or_IP` varchar(255),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`),
  KEY `LoginID` (`LoginID`),
  KEY `Domain_or_IP` (`Domain_or_IP`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tblReloadTableInfo`;
-- GO
CREATE TABLE IF NOT EXISTS `tblReloadTableInfo` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `TableName` varchar(45),
  `UpdateTable` tinyint(1) default 1,
  PRIMARY KEY  (`ID`),
  KEY `TableName` (`TableName`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tbl_FilterSettings`;
-- GO
CREATE TABLE IF NOT EXISTS `tbl_FilterSettings` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainID` int(11) default 0,
  `BL_DomainsForceDelete` tinyint(1) default 0,
  `BL_EmailsFromForceDelete` tinyint(1) default 0,
  `BL_EmailsTOForceDelete` tinyint(1) default 0,
  `BL_CountriesForceDelete` tinyint(1) default 0,
  `BL_MAPSForceDelete` tinyint(1) default 0,
  `BL_KeywordsForceDelete` tinyint(1) default 0,
  `BL_AttachmentsForceDelete` tinyint(1) default 0,
  `BL_SURBLForceDelete` tinyint(1) default 0,
  `BL_IPsForceDelete` tinyint(1) default 0,
  `BL_HoneypotEmailsForceDelete` tinyint(1) default 0,
  `RejectNoReverseForceDelete` tinyint(1) default 0,
  `RejectNoMXForceDelete` tinyint(1) default 0,
  `SPFFilterEnableForceDelete` tinyint(1) default 0,
  `RejectEmptyMailFromForceDelete` tinyint(1) default 0,
  `RejectSameToFromDomainForceDelete` tinyint(1) default 0,
  `RejectSameToFromForceDelete` tinyint(1) default 0,
  `SFDBForceDelete` tinyint(1) default 0,
  `MAXRCPT_TOForceDelete` tinyint(1) default 0,
  `AUTHORIZEDTOForceDelete` tinyint(1) default 0,
  `ANTIVIRUSForceDelete` tinyint(1) default 0,
  `IMAGEForceDelete` tinyint(1) default 0,
  `SURBLForceDelete` tinyint(1) default 0,
  `BAYESIANForceDelete` tinyint(1) default 0,
  `SPFFilterEnable` tinyint(1) default 1,
  `SPFNeutralFilter` tinyint(1) default 0,
  `SPFSoftfailFilter` tinyint(1) default 1,
  `SPFFailFilter` tinyint(1) default 1,
  `AllowPercent` tinyint(1) default 0,
  `TagSPAM` tinyint(1) default 0,
  `TagSPAMSubject` tinyint(1) default 0,
  `TagSPAMandQuarantine` tinyint(1) default 0,
  `RejectNoReverse` tinyint(1) default 1,
  `RejectNoMX` tinyint(1) default 1,
  `RejectEmptyMailFrom` tinyint(1) default 0,
  `RejectSameToFrom` tinyint(1) default 0,
  `RejectSameToFromDomain` tinyint(1) default 0,
  `EnableIPCacheBlacklist` tinyint(1) default 1,
  `AutoWhiteListForceDeliveryEnabled` tinyint(1) default 1,
  `MinMAPS` int(11) default 1,
  `MaxSubjectSpaces` int(11) default 10,
  `SpamImageThreshold` int(11) default 10,
  `SFDB_NetworkReliability` int(11) default 3,
  `SFDB_FiltersAll` tinyint(1) default 1,
  `SFDB_FiltersList` varchar(255),
  `DestSMTPServer` varchar(255) default '',
  `DestSMTPServerPort` int(11),
  PRIMARY KEY  (`ID`),
  KEY `DomainID` (`DomainID`)
) TYPE=InnoDB;

-- GO --

-- DROP TABLE IF EXISTS `tbl_LocalDomains`;
-- GO
CREATE TABLE IF NOT EXISTS `tbl_LocalDomains` (
  `ID` int(11) NOT NULL auto_increment,
  `DomainName` varchar(255),
  `DestSMTPServer` varchar(255) default NULL,
  `DestSMTPServerPort` int(11) default NULL,
  `UseDefaults` tinyint(1) NOT NULL DEFAULT 1,
  PRIMARY KEY  (`ID`),
  UNIQUE KEY `DomainName` (`DomainName`)
) TYPE=InnoDB;

-- GO --

ALTER TABLE `tblBL_Domains` ADD CONSTRAINT `FKtblBL_Domains` FOREIGN KEY `FKtblBL_Domains` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_EmailsFrom` ADD CONSTRAINT `FKtblBL_EmailsFrom` FOREIGN KEY `FKtblBL_EmailsFrom` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_EmailsTo` ADD CONSTRAINT `FKtblBL_EmailsTo` FOREIGN KEY `FKtblBL_EmailsTo` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_MAPS` ADD CONSTRAINT `FKtblBL_MAPS` FOREIGN KEY `FKtblBL_MAPS` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_Keywords` ADD CONSTRAINT `FKtblBL_Keywords` FOREIGN KEY `FKtblBL_Keywords` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_Attachments` ADD CONSTRAINT `FKtblBL_Attachments` FOREIGN KEY `FKtblBL_Attachments` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_SURBL` ADD CONSTRAINT `FKtblBL_SURBL` FOREIGN KEY `FKtblBL_SURBL` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_IPs` ADD CONSTRAINT `FKtblBL_IPs` FOREIGN KEY `FKtblBL_IPs` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_HoneypotEmails` ADD CONSTRAINT `FKtblBL_HoneypotEmails` FOREIGN KEY `FKtblBL_HoneypotEmails` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblBL_HoneypotBlockedIPs` ADD CONSTRAINT `FKtblBL_HoneypotBlockedIPs` FOREIGN KEY `FKtblBL_HoneypotBlockedIPs` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblWL_AuthorizedTOEmails` ADD CONSTRAINT `FKtblWL_AuthorizedTOEmails` FOREIGN KEY `FKtblWL_AuthorizedTOEmails` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblWL_Keywords` ADD CONSTRAINT `FKtblWL_Keywords` FOREIGN KEY `FKtblWL_Keywords` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblWL_EmailsFrom` ADD CONSTRAINT `FKtblWL_EmailsFrom` FOREIGN KEY `FKtblWL_EmailsFrom` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblWL_EmailsTo` ADD CONSTRAINT `FKtblWL_EmailsTo` FOREIGN KEY `FKtblWL_EmailsTo` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblWL_AutoWhitelistForceDelivery` ADD CONSTRAINT `FKtblWL_AutoWhitelistForceDelivery` FOREIGN KEY `FKtblWL_AutoWhitelistForceDelivery` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
ALTER TABLE `tblWL_DomainsIPs` ADD CONSTRAINT `FKtblWL_DomainsIPs` FOREIGN KEY `FKtblWL_DomainsIPs` (`DomainID`)
    REFERENCES `tbl_localdomains` (`ID`) ON DELETE CASCADE;
-- GO --
insert into tbl_LocalDomains (DomainName) VALUES (' ALL DOMAINS');
-- GO --

DROP TRIGGER tr_LocalDomains_AU;
-- GO --
delimiter //
CREATE TRIGGER tr_LocalDomains_AU
AFTER UPDATE ON tbl_LocalDomains
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.ID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.ID, 1, 'tbl_LocalDomains');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER tr_LocalDomains_AI;
-- GO --
delimiter //
CREATE TRIGGER tr_LocalDomains_AI
AFTER INSERT ON tbl_LocalDomains
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.ID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.ID, 1, 'tbl_LocalDomains');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER tr_LocalDomains_AD;
-- GO --
delimiter //
CREATE TRIGGER tr_LocalDomains_AD
AFTER DELETE ON tbl_LocalDomains
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.ID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.ID, 1, 'tbl_LocalDomains');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER tr_LocalDomains_BD;
-- GO --
delimiter //
CREATE TRIGGER tr_LocalDomains_BD
BEFORE DELETE ON tbl_LocalDomains
FOR EACH ROW
BEGIN
 IF (OLD.DomainName = ' ALL DOMAINS') THEN
   CALL ERROR_UnableToDeleteSystem_ALLDOMAINS_Record();
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_AuthorizedTOEmails_AU;
-- GO --
delimiter //
CREATE TRIGGER trWL_AuthorizedTOEmails_AU
AFTER UPDATE ON tblWL_AuthorizedTOEmails
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_AuthorizedTOEmails');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_AuthorizedTOEmails_AI;
-- GO --
delimiter //
CREATE TRIGGER trWL_AuthorizedTOEmails_AI
AFTER INSERT ON tblWL_AuthorizedTOEmails
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblWL_AuthorizedTOEmails');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_AuthorizedTOEmails_AD;
-- GO --
delimiter //
CREATE TRIGGER trWL_AuthorizedTOEmails_AD
AFTER DELETE ON tblWL_AuthorizedTOEmails
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_AuthorizedTOEmails');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_Keywords_AU;
-- GO --
delimiter //
CREATE TRIGGER trWL_Keywords_AU
AFTER UPDATE ON tblWL_Keywords
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_Keywords');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_Keywords_AI;
-- GO --
delimiter //
CREATE TRIGGER trWL_Keywords_AI
AFTER INSERT ON tblWL_Keywords
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblWL_Keywords');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_Keywords_AD;
-- GO --
delimiter //
CREATE TRIGGER trWL_Keywords_AD
AFTER DELETE ON tblWL_Keywords
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_Keywords');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_EmailsFrom_AU;
-- GO --
delimiter //
CREATE TRIGGER trWL_EmailsFrom_AU
AFTER UPDATE ON tblWL_EmailsFrom
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_EmailsFrom');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_EmailsFrom_AI;
-- GO --
delimiter //
CREATE TRIGGER trWL_EmailsFrom_AI
AFTER INSERT ON tblWL_EmailsFrom
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblWL_EmailsFrom');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_EmailsFrom_AD;
-- GO --
delimiter //
CREATE TRIGGER trWL_EmailsFrom_AD
AFTER DELETE ON tblWL_EmailsFrom
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_EmailsFrom');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_EmailsTO_AU;
-- GO --
delimiter //
CREATE TRIGGER trWL_EmailsTO_AU
AFTER UPDATE ON tblWL_EmailsTO
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_EmailsTO');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_EmailsTO_AI;
-- GO --
delimiter //
CREATE TRIGGER trWL_EmailsTO_AI
AFTER INSERT ON tblWL_EmailsTO
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblWL_EmailsTO');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_EmailsTO_AD;
-- GO --
delimiter //
CREATE TRIGGER trWL_EmailsTO_AD
AFTER DELETE ON tblWL_EmailsTO
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_EmailsTO');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_DomainsIPs_AU;
-- GO --
delimiter //
CREATE TRIGGER trWL_DomainsIPs_AU
AFTER UPDATE ON tblWL_DomainsIPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_DomainsIPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_DomainsIPs_AI;
-- GO --
delimiter //
CREATE TRIGGER trWL_DomainsIPs_AI
AFTER INSERT ON tblWL_DomainsIPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblWL_DomainsIPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_DomainsIPs_AD;
-- GO --
delimiter //
CREATE TRIGGER trWL_DomainsIPs_AD
AFTER DELETE ON tblWL_DomainsIPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_DomainsIPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_AutoWhiteListForceDelivery_AU;
-- GO --
delimiter //
CREATE TRIGGER trWL_AutoWhiteListForceDelivery_AU
AFTER UPDATE ON tblWL_AutoWhiteListForceDelivery
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_AutoWhiteListForceDelivery');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_AutoWhiteListForceDelivery_AI;
-- GO --
delimiter //
CREATE TRIGGER trWL_AutoWhiteListForceDelivery_AI
AFTER INSERT ON tblWL_AutoWhiteListForceDelivery
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblWL_AutoWhiteListForceDelivery');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trWL_AutoWhiteListForceDelivery_AD;
-- GO --
delimiter //
CREATE TRIGGER trWL_AutoWhiteListForceDelivery_AD
AFTER DELETE ON tblWL_AutoWhiteListForceDelivery
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblWL_AutoWhiteListForceDelivery');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Domains_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_Domains_AU
AFTER UPDATE ON tblBL_Domains
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Domains');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Domains_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_Domains_AI
AFTER INSERT ON tblBL_Domains
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_Domains');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Domains_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_Domains_AD
AFTER DELETE ON tblBL_Domains
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Domains');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_EmailsFrom_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_EmailsFrom_AU
AFTER UPDATE ON tblBL_EmailsFrom
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_EmailsFrom');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_EmailsFrom_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_EmailsFrom_AI
AFTER INSERT ON tblBL_EmailsFrom
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_EmailsFrom');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_EmailsFrom_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_EmailsFrom_AD
AFTER DELETE ON tblBL_EmailsFrom
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_EmailsFrom');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_EmailsTO_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_EmailsTO_AU
AFTER UPDATE ON tblBL_EmailsTO
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_EmailsTO');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_EmailsTO_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_EmailsTO_AI
AFTER INSERT ON tblBL_EmailsTO
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_EmailsTO');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_EmailsTO_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_EmailsTO_AD
AFTER DELETE ON tblBL_EmailsTO
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_EmailsTO');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Countries_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_Countries_AU
AFTER UPDATE ON tblBL_Countries
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Countries');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Countries_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_Countries_AI
AFTER INSERT ON tblBL_Countries
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_Countries');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Countries_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_Countries_AD
AFTER DELETE ON tblBL_Countries
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Countries');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_MAPS_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_MAPS_AU
AFTER UPDATE ON tblBL_MAPS
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_MAPS');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_MAPS_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_MAPS_AI
AFTER INSERT ON tblBL_MAPS
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_MAPS');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_MAPS_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_MAPS_AD
AFTER DELETE ON tblBL_MAPS
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_MAPS');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Keywords_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_Keywords_AU
AFTER UPDATE ON tblBL_Keywords
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Keywords');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Keywords_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_Keywords_AI
AFTER INSERT ON tblBL_Keywords
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_Keywords');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Keywords_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_Keywords_AD
AFTER DELETE ON tblBL_Keywords
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Keywords');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Attachments_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_Attachments_AU
AFTER UPDATE ON tblBL_Attachments
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Attachments');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Attachments_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_Attachments_AI
AFTER INSERT ON tblBL_Attachments
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_Attachments');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_Attachments_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_Attachments_AD
AFTER DELETE ON tblBL_Attachments
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_Attachments');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_SURBL_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_SURBL_AU
AFTER UPDATE ON tblBL_SURBL
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_SURBL');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_SURBL_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_SURBL_AI
AFTER INSERT ON tblBL_SURBL
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_SURBL');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_SURBL_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_SURBL_AD
AFTER DELETE ON tblBL_SURBL
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_SURBL');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_IPs_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_IPs_AU
AFTER UPDATE ON tblBL_IPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_IPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_IPs_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_IPs_AI
AFTER INSERT ON tblBL_IPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_IPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_IPs_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_IPs_AD
AFTER DELETE ON tblBL_IPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_IPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_HoneypotEmails_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_HoneypotEmails_AU
AFTER UPDATE ON tblBL_HoneypotEmails
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_HoneypotEmails');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_HoneypotEmails_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_HoneypotEmails_AI
AFTER INSERT ON tblBL_HoneypotEmails
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_HoneypotEmails');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_HoneypotEmails_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_HoneypotEmails_AD
AFTER DELETE ON tblBL_HoneypotEmails
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_HoneypotEmails');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_HoneypotBlockedIPs_AU;
-- GO --
delimiter //
CREATE TRIGGER trBL_HoneypotBlockedIPs_AU
AFTER UPDATE ON tblBL_HoneypotBlockedIPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_HoneypotBlockedIPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_HoneypotBlockedIPs_AI;
-- GO --
delimiter //
CREATE TRIGGER trBL_HoneypotBlockedIPs_AI
AFTER INSERT ON tblBL_HoneypotBlockedIPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tblBL_HoneypotBlockedIPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER trBL_HoneypotBlockedIPs_AD;
-- GO --
delimiter //
CREATE TRIGGER trBL_HoneypotBlockedIPs_AD
AFTER DELETE ON tblBL_HoneypotBlockedIPs
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tblBL_HoneypotBlockedIPs');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER tr_FilterSettings_AU;
-- GO --
delimiter //
CREATE TRIGGER tr_FilterSettings_AU
AFTER UPDATE ON tbl_FilterSettings
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tbl_FilterSettings');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER tr_FilterSettings_AI;
-- GO --
delimiter //
CREATE TRIGGER tr_FilterSettings_AI
AFTER INSERT ON tbl_FilterSettings
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = NEW.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (NEW.DomainID, 1, 'tbl_FilterSettings');
 END IF;
END;
//
delimiter;

-- GO --

DROP TRIGGER tr_FilterSettings_AD;
-- GO --
delimiter //
CREATE TRIGGER tr_FilterSettings_AD
AFTER DELETE ON tbl_FilterSettings
FOR EACH ROW
BEGIN
 IF NOT EXISTS (SELECT * FROM tblReloadTableInfo r WHERE (r.DomainID = OLD.DomainID) AND (r.TableName = TableName)) THEN
   INSERT INTO tblReloadTableInfo (DomainID, UpdateTable, TableName) VALUES (OLD.DomainID, 1, 'tbl_FilterSettings');
 END IF;
END;
//
delimiter;





Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
WebGuyz View Drop Down
Senior Member
Senior Member


Joined: 09 May 2005
Location: United States
Status: Offline
Points: 348
Post Options Post Options   Thanks (0) Thanks(0)   Quote WebGuyz Quote  Post ReplyReply Direct Link To This Post Posted: 21 March 2007 at 12:57pm

Roberto,

  Excellent job on the new documentation. Looks really good. Can we use portions of it on our help docs for our customers? Working on a new cp for end users and some of the sections about how it works would be helpful.

One observation. It appears that once I unclick defaults, my only real option is to copy the files from the defaults (record 1) to get the same functionality as I had before for each domain. BUT, if I have 300 domains, then I get 300 copies of every single blacklist, whitelist, etc. in the database as well 

What would be great is if we could have a way to specify a default table (like keywords.txt for example) so that when the textfile was built it from the db it would take a list of keywords common to all domains and then look for any unqiue entries.

Another thing. Lets say that I want to add a new keyword and use it for every one of my 300 domains. Would I have to write a script to add it to each and every domains keywords entry in the db?

Another issue I just thought of. I did a file copy to one of my domains (from default) and in additon to bringin all the lists over it created the exact duplicate of our autowhitelistdelivery into the db with the domains id. The issue is there are over 34,000 lines in our autowhitelistdelivery file! I assume I would have to write a script that parses the current flatfile and creates a unique entry for each domain and then delete the flatfile before I did my final conversion.

All in all SFE is looking very good.

http://www.webguyz.net
Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 21 March 2007 at 11:10pm
No problem on making the documentation available to your customers. That is actually the main reason why we provided the manual on 3 different mediums, so as to provide admins with a better choice on how to make it available. We thought the html verison, along with its search capability would be the easier to distribute, but that is totally your call.

In regards to your comments.... If we designed SpamFilter Enterprise so that you'd have to store a copy of the settings for each of your 300 domains... well, I think you'd already be looking for a different product from a competitor . Joking aside, I think we'll need to update the documentation.

There is a special domain in the list of domains: "ALL DOMAINS". This domain contains all the default settings that will be used in SFE. By default, all domains in your local domains list will use those settings, if they have the "Use Defaults" option checked (which is also the default). Only if you wish to customize a domain *differently* than the others, then you need to uncheck the "Use Defaults" option, which will then allow you to specify indvidual settings for that domain. To make this easier, we provide tabs that allow you to copy either the file-based settings or the settings from another domain to the one you wish to customize. That way you won't have to enter them from scratch and can simply edit the one (or more) settings you need to customize.
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
WebGuyz View Drop Down
Senior Member
Senior Member


Joined: 09 May 2005
Location: United States
Status: Offline
Points: 348
Post Options Post Options   Thanks (0) Thanks(0)   Quote WebGuyz Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 12:23am

Let me try another example. Let say I have a domain and I want this one domain to whitelist 3 IP's that the 'All Domains' does not. The only way for me to do this would be to uncheck 'use defaults' and then manually copy all the standard settings from 'all domains' or some other domain, correct?

So if I choose just to make any one thing different for an individual domain (like whitelist an ip for example) that is different then the 'all domains', I have to uncheck the 'use defaults'.

Correct? Or am I missing something

I guess what I was trying to say is it would be nice to use the 'all domains' default and then add any individual addons for any one domain, but I can see this would become a coding nightmare pretty quickly.

I guess If I want my customers to be able to add/delete whitelist & blacklist items then I really do have to have have individual settings for each and every domain.

The more I think about it thats the only way it could work. Thanks!

http://www.webguyz.net
Back to Top
WebGuyz View Drop Down
Senior Member
Senior Member


Joined: 09 May 2005
Location: United States
Status: Offline
Points: 348
Post Options Post Options   Thanks (0) Thanks(0)   Quote WebGuyz Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 1:35am

OK, I just thought of another way to explain this. Lets say the keyword file has 100 entries. And lets say I did have 300 domains and wanted to have custom settings for each. The would mean for table

dbo"."tblbl_keywords" there would be 30000 entries. But suppose those same 100 entries are used in all 300 domains? How could we save the duplication?

Wouldn't it be great to be able to tell SFE, hey use the same 100 entries as domainid 1 (ALL DOMAINS) and here are a couple more. So instead of 30000 entries in that table there would be 300 (one for each domain telling it to use the default) and then whatever additional entries idividual domains where to use. Soemthing like this by adding a field to each list. here are the fields for the keyword table.

id domainid loginid keywords use_default
104 267 0   1
105 267 0 coopt.promovalue.us 0
106 267 0 dealsnow  0
107 267 0 dontbleftout  0

by adding a use_default entry domain 267 would inherit all the keywords from the ALL DOMAINS setting, plus some additional ones particular to only this domain.

Hate to see so much duplication, but each user situation is different. Thanks for listening.

 

http://www.webguyz.net
Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 4:06pm
Ok, now I get it. In this case yes, any time even a single setting is going to be customized for a domain, *all* of the other whitelists/blacklists for that domain will be "copied over". With hindsight there should have been a "use defaults" option for each blacklist/whitelist, not just for a whole domain, as that would have indeed optimized things. Maybe in SFE 4.0...
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 4:38pm

R,

I found another bug in SFE and I'm using MySQL as the database.  When I copied a blacklist keywords file with regEx and pasted it in the blkeyword, bldomains, or attachments box.  When they were inserted into the database any where that were regEx, MySQL interpreted it as a command and did not insert it exactly as it was entered and all backslashes were removed.

 Dan B



Edited by Dan B
Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 4:43pm
Ouch, we had actually discovered that one internally, and thought we had fixed it... Can you confirm you're actually using the .654 version? If so, can you pleae let us know what RegEx is breaking?
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 5:17pm

R,

Yes we are running ver 654 and it's doing it on all RegEx.  I had to write a Cold Fusion app to read all the bl and wl txt files and do a find and replace on all \ and replace them with \\ and insert.  MySQL will strip the first one and leave the second and insert it correctly.

Dan B

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 5:25pm

R,

FYI:  I tested installing SFE on a pre existing SF server and during the switch from standard to enterprise it didn't look pretty.  In the above post about the domain name being max of 12 chars. It trunked to 12 chars and it only inserted only 7 out of 20 domain names in the database localdomains table.  All domains are set as default.

I also noticed that the domain matrix file still exists.  Is it suppose to be now in the database table filtersettings?

I'll post more after I dig deeper into it.

Thanks,
Dan B

Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 8:05pm
Originally posted by Dan B Dan B wrote:

R,

Yes we are running ver 654 and it's doing it on all RegEx.  I had to write a Cold Fusion app to read all the bl and wl txt files and do a find and replace on all \ and replace them with \\ and insert.  MySQL will strip the first one and leave the second and insert it correctly.

Dan B


Dan,

We can't replicate this one... Can you please let me know *exactly* the steps you are performing, and where the incorrect entries are created?

Here's what we're trying to replicate it. In the SFE GUI, under the "Keywords Filter" tab, we enter:
\ttest
in the keyword list. Click on "Save Settings". The settings are saved to the MySQL database. The GUI refreshes itself, and the keyword list is displayed, showing the correct entry "\ttest".
If we check the "tblbl_keywords" we see the keyword being added as "\ttest". We then check the file "BL_Keywords.txt", and again the entry "\ttest" is there. Where is the difference in your case?
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 22 March 2007 at 8:09pm
Originally posted by Dan B Dan B wrote:

R,

FYI:  I tested installing SFE on a pre existing SF server and during the switch from standard to enterprise it didn't look pretty.  In the above post about the domain name being max of 12 chars. It trunked to 12 chars and it only inserted only 7 out of 20 domain names in the database localdomains table.  All domains are set as default.

I also noticed that the domain matrix file still exists.  Is it suppose to be now in the database table filtersettings?

I'll post more after I dig deeper into it.

Thanks,
Dan B


Any chance you can zip us your SpamFilter.ini file, along with all your local blacklist/whitelist files for the SpamFilter instance you tried to upgrade? Ideally, if you have a copy of those files *before* the upgrade was performed, it'd be better.
If you only have the files after the upgrade, that may help too. Please note that after upgrading to v3.5, SpamFilter will (Enterprise version and not) change some settings in the SpamFilter.ini file and move them to a different "Filters.ini" file under the \SpamFilter\domains\SFI directory. Please make sure you send us that directory as well.
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 23 March 2007 at 10:47am

R,

I just sent you an email about the info that you requested.  If you can supply me with it I can send you the zipped file.

Thanks,
Dan B.

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 23 March 2007 at 1:06pm

R,

I have a question.  I have 4 licenses of SF, not all 4 have the same domains on them.  With SFE, how can I set certain domains to be on certain SFE servers and not on the rest?  I'm looking at the database and I do not see how each SFE can determine which domains need to be on each SFE Server.

Is this something that was overlook by me or by design?

PS:  About the above post.  I haven't received the ftp info to send you that zipped file.

Thanks,
Dan B

Back to Top
Dan B View Drop Down
Senior Member
Senior Member
Avatar

Joined: 09 February 2005
Location: United States
Status: Offline
Points: 104
Post Options Post Options   Thanks (0) Thanks(0)   Quote Dan B Quote  Post ReplyReply Direct Link To This Post Posted: 23 March 2007 at 5:20pm

Roberto,

Don't know if this is a bug or not...  Is the ALL DOMAINS folder supose to have a space in front of the ALL DOMAINS title?  I also noticed it in the tbl_localdomains.  I tried to rename both locations without the space and restarted SFE and it recreated a new folder titled _ALL DOMAINS  (_ = space) and added a new record in the tbl_filtersettings with DomainID = -1

 

Oh, one more bug..  If you have data in the SFDB_FiltersList field on table tbl_filtersettings and you make a change in the SFE GUI.  It wipes out the data in the SFDB_FiltersList field.

Thanks,
Dan B

 

 



Edited by Dan B
Back to Top
caratking View Drop Down
Groupie
Groupie


Joined: 13 March 2006
Location: United States
Status: Offline
Points: 79
Post Options Post Options   Thanks (0) Thanks(0)   Quote caratking Quote  Post ReplyReply Direct Link To This Post Posted: 23 March 2007 at 10:37pm
Wow Dan, you really are finding a lot of bugs.

I bet Roberto is wishing you started testing sooner...
Back to Top
LogSat View Drop Down
Admin Group
Admin Group
Avatar

Joined: 25 January 2005
Location: United States
Status: Offline
Points: 4068
Post Options Post Options   Thanks (0) Thanks(0)   Quote LogSat Quote  Post ReplyReply Direct Link To This Post Posted: 23 March 2007 at 11:17pm
Dan,

We've been looking at your files, as soon as we find something I'll let you know, most likely via the forum so everyone can see the updates.

In regards to the space before the ALL DOMAINS, it's there by design... simply to make it easier to sort the domain list alphabetically.

What's not by design is the report about the SFDB_FiltersList! We were able to replicate that one, thanks for the bug report!

Lastly, for the 4 servers and the domains... the answer is that you can't. If 4 instances of SpamFilter share the same database, they will share the same settings. I may be oversimplifying this as I'm not familiar with your settings, but... if one of your SpamFilter is not supposed to accept email for a domain, could you just not have an MX record for that domain not point to the one SpamFilter that's not supposed to receive those emails?
Roberto Franceschetti

LogSat Software

Spam Filter ISP
Back to Top
caratking View Drop Down
Groupie
Groupie


Joined: 13 March 2006
Location: United States
Status: Offline
Points: 79
Post Options Post Options   Thanks (0) Thanks(0)   Quote caratking Quote  Post ReplyReply Direct Link To This Post Posted: 25 March 2007 at 9:34am
Inb SFE, when you look through the Quarantine messages, and select Deliver Selected the system adds the email pair for auto whitelisted.

Is it also supposed to report back to the DB and add that pair (I see there is a table for it), and then sync with all the other servers?

My autowhitelist table is empty.
Back to Top
 Post Reply Post Reply Page  12>
  Share Topic   

Forum Jump Forum Permissions View Drop Down



This page was generated in 0.203 seconds.