From: | "Markus Wollny" <Markus(dot)Wollny(at)computec(dot)de> |
---|---|
To: | <pgsql-general(at)postgresql(dot)org> |
Subject: | Backward compatibility patch for numutils.c |
Date: | 2004-06-30 18:05:17 |
Message-ID: | 2266D0630E43BB4290742247C891057502B9D5DA@dozer.computec.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi!
We're using some "hardwired" apps which try to insert '' in INT-fields when what they really mean is NULL. 7.2 wasn't bothered by this behaviour, but 7.3 was and it broke some apps then. So Bruce had posted a patch for 7.3's /src/backend/utils/adt/numutils.c - I couldn't find the original posting when someone asked some time ago and I cannot find it now, however I have reposted his patch there: http://groups.google.de/groups?hl=de&lr=&ie=UTF-8&selm=2266D0630E43BB4290742247C89105750393D53E%40dozer.computec.de
Now the relevant bit has slightly changed in 7.4.x and I wonder what else would be affected when applying the same thing here; I have made the same changes to the source of 7.4.3, resulting in the following diff:
diff numutils.c.patched numutils.c.orig
69,74c69,74
< else if (*s == 0)
< {
< /* 7.4.X workaround for broken apps */
< elog(WARNING, "pg_atoi: zero-length string");
< l = (long) 0;
< }
---
> if (*s == 0)
> ereport(ERROR,
> (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION),
> errmsg("invalid input syntax for integer: \"%s\"",
> s)));
>
It compiles fine, but I don't know if I'd shoot myself in the foot when actually using and trusting the thus patched 7.4.3 in a production environment. Any thoughts? Or can I put my mind at rest regardless? I know it's breaking the SQL-specs, but I'd rather have that than broken apps...
Kind regards
Markus Wollny
From | Date | Subject | |
---|---|---|---|
Next Message | Dennis Bjorklund | 2004-06-30 18:09:32 | psql - list objects in a schema |
Previous Message | Dennis Gearon | 2004-06-30 17:05:30 | Re: backups |