Guillaume Cottenceau schrieb:
"Hillel" <hillel 'at' ecommunicate.biz> writes:Hi Kannel Devel, Attached and included in this email, is a postgresql patch that does not use Automatic OIDs, which has been removed from Postgresql. You can make smsc,ts the primary key or as suggested by Guillaume Cottenceau you can set smsc,ts as an index. diff -u gateway/gw/dlr_pgsql.c gateway/gw/dlr_pgsql.c --- gateway/gw/dlr_pgsql.c 2008-06-23 08:16:34.000000000 +0200 +++ gateway/gw/dlr_pgsql.c 2008-06-22 12:27:38.000000000 +0200 @@ -220,12 +220,11 @@ Octstr *sql; debug("dlr.pgsql", 0, "removing DLR from database"); - sql = octstr_format("DELETE FROM %s WHERE (%s,%s) IN (SELECT %s,%s WHERE %s='%s' AND %s='%s' LIMIT 1);",The general contract of the code at that point is to delete only one row even if there are multiple smsc,ts rows, which your change breaks. dn=# create table foo ( bar int, baz int ); CREATE TABLE dn=# insert into foo ( bar, baz ) values ( 1, 2 ); INSERT 447809901 1 dn=# insert into foo ( bar, baz ) values ( 1, 2 ); INSERT 447809902 1 dn=# delete from foo where ( bar, baz ) in ( select 1, 2 limit 1 ); DELETE 2 Same for the UPDATE statement, actually.
So this shall be a -1 vote by Guillaume I guess. Hillel, can you please revise and update the patch? Stipe ------------------------------------------------------------------- Kölner Landstrasse 419 40589 Düsseldorf, NRW, Germany tolj.org system architecture Kannel Software Foundation (KSF) http://www.tolj.org/ http://www.kannel.org/ mailto:st_{at}_tolj.org mailto:stolj_{at}_kannel.org -------------------------------------------------------------------
