<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DailyStuff &#187; AWL</title>
	<atom:link href="http://blog.dailystuff.nl/tag/awl/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.dailystuff.nl</link>
	<description>toen Internet stil stond en weer doorging</description>
	<lastBuildDate>Sat, 04 Feb 2012 07:46:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<atom:link rel="search"
           href="http://blog.dailystuff.nl/opensearch"
           type="application/opensearchdescription+xml"
           title="Content Search" /><atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>AWL vervuiling opschonen</title>
		<link>http://blog.dailystuff.nl/2010/01/awl-vervuiling-opschonen/</link>
		<comments>http://blog.dailystuff.nl/2010/01/awl-vervuiling-opschonen/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 07:51:30 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Internet, Unix en security]]></category>
		<category><![CDATA[AWL]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[SpamAssassin]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://blog.dailystuff.nl/?p=952</guid>
		<description><![CDATA[SpamAssassin heeft de optie om te leren en te scoren op basis van een combinatie van e-mail en IP-adres. Nu lijkt deze optie zinvol en het lijkt te werken, maar hoever het schaalt is nog de vraag. Wat het schalen gaat beïnvloeden is de hoeveelheid combinaties die in de database staan en hoe snel deze [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.dailystuff.nl/tag/spamassassin/">SpamAssassin</a> heeft de optie om te leren en te scoren op basis van een combinatie van e-mail en IP-adres. Nu lijkt deze optie zinvol en het lijkt te werken, maar hoever het schaalt is nog de vraag. Wat het schalen gaat beïnvloeden is de hoeveelheid combinaties die in de database staan en hoe snel deze combinaties te doorzoeken zijn. Helaas is er geen standaardoplossing in SpamAssassin om de AWL-tabel op te schonen, maar gelukkig zijn er opties binnen <a href="http://blog.dailystuff.nl/tag/postgresql/">PostgreSQL</a> om dit te regelen.</p>
<p>De eerste stap is om de AWL-tabel aan te passen door een attribuut toe te voegen met het volgende SQL-commando:<br />
<code><br />
alter table awl add lastupdate timestamp with time zone default now();<br />
</code><br />
De tweede stap is om een trigger te definiëren en aan de tabel te koppelen met het volgende SQL-commando:<br />
<code><br />
CREATE OR REPLACE FUNCTION trg_handle_awl_lastupdate() RETURNS TRIGGER AS $BODY$<br />
BEGIN<br />
IF NEW.lastupdate = OLD.lastupdate THEN NEW.lastupdate := now(); END IF;<br />
RETURN NEW;<br />
END;<br />
$BODY$ LANGUAGE 'plpgsql';<br />
CREATE TRIGGER trg_handle_timestamp BEFORE UPDATE ON awl FOR EACH ROW EXECUTE PROCEDURE trg_handle_awl_lastupdate();<br />
</code><br />
Vanaf dit moment zal het attribuut <em>lastupdate</em> elke keer worden bijgewerkt wanneer de combinatie door SpamAssassin wordt gezien en daardoor ook de tabel bijwerkt. Door nu wekelijks of dagelijks een SQL-script te draaien die bijvoorbeeld elke combinatie die te lang onaangeraakt is te verwijderen. Zoals de voorbeeld code hieronder.<br />
<code><br />
delete from awl<br />
where ( lastupdate < = now() - interval '4 months' and count > 1 )<br />
   or ( lastupdate < = now() - interval '3 months' and count = 1 );<br />
</code><br />
Belangrijk om mee te nemen dat het soms even kan duren voordat bepaalde combinaties weer worden gezien. Veel mailinglisten komen meestal wel eens per maand voor. De interval van 3 maanden zou deze lijsten dus voldoende tijd moeten geven om een score te vormen.</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dailystuff.nl/2010/01/awl-vervuiling-opschonen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

