On Mon, 23 Aug 2010 11:28:45 +0200
Stevan Bajić <ste...@bajic.ch> wrote:

> On Mon, 23 Aug 2010 10:56:19 +0200
> Marcin Mirosław <mar...@mejor.pl> wrote:
> 
> > W dniu 23.08.2010 09:53, Stevan Bajić pisze:
> > > Okay. Let's say I want to fix the PostgreSQL driver to take care of that 
> > > setting.
> > > So either I have to check for 'standard_conforming_strings' and look if 
> > > it is set to 'on' or I write every text with the E'' notation and don't 
> > > care about 'standard_conforming_strings' bein 'on' or 'off'. 
> > 
> > Sorry, i didn't read all thread. "standard_conforming_strings=on/off"
> > can be set in any moment of connection to pgsql, let dspam set it on/off
> > at the start, and go on with proper escaping.
> >
> Most data is just INT, BIGINT or DATE.
> 
> In three tables we use VARCHAR:
> - In 'dspam_signature_data' for 'signature'
> - In 'dspam_preferences' for 'preference' and 'value'
> - In 'dspam_virtual_uids' for 'username'
> 
I made a quick patch that is escaping the above VARCHAR's. I have not tested 
the patch nor compiled DSPAM with the patch. I don't know if the patch is 
working or not? Can any one using DSPAM GIT and PostgreSQL try if the patch is 
working as expected?


> In one table we use BYTEA:
> - In 'dspam_signature_data' for 'data'
> 
'data' in 'dspam_signature_data' is anyway escaped when writing and unescaped 
when read. So currently there is no need to do anything regarding 
escaping/unescaping. Right?


> So the only place where we need to escape/unescape is the places where we use 
> VARCHAR and BYTEA.
> 
> We could avoid escaping the VARCHAR for the table dspam_signature_data since 
> that 'signature' will probably never have a character in it that would need 
> escaping. In the 'dspam_preferences' table the 'preference' will too not have 
> a character that needs escaping. But 'value' from 'dspam_preferences' could 
> have characters that would need escaping/unescaping and the 'username' from 
> 'dspam_virtual_uids' could have characters that need escaping/unescaping. The 
> 'data' from 'dspam_signature_data' will probably always need to use E'' 
> notation.
> 
> So IMHO the PostgreSQL driver should not fiddle around with 
> 'standard_conforming_strings' and either enforce everywhere the E'' notation 
> (would slow down the driver because of escaping/unescaping) or just use 
> escaping/unescaping where we anyway can't go without 
> (dspam_signature_data.data, dspam_virtual_uids.username and 
> dspam_preferences.value).
> 
> What do you think about this approach?
> 
> > Regards,
> > Marcin
> > 
> -- 
> Kind Regards from Switzerland,
> 
> Stevan Bajić
> 
> 
> > -- 
> > xmpp (jabber): marcin  [at]  mejor.pl
> > www: http://blog.mejor.pl/
> > 
> 
-- 
Kind Regards from Switzerland,

Stevan Bajić

Attachment: 3023888.patch
Description: Binary data

------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Dspam-devel mailing list
Dspam-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspam-devel

Reply via email to