Your message dated Sat, 22 Jul 2006 09:17:06 -0700 with message-id <[EMAIL PROTECTED]> and subject line Bug#375744: fixed in postgresql-7.4 1:7.4.13-4 has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database)
--- Begin Message ---Package: postgresql-contrib Version: 7.4.7-6sarge2 Severity: critical Justification: causes serious data loss Hello, using version 7.4.7-6sarge2 of postgresql-contrib cause trouble in database replication using /usr/lib/postgresql/bin/DBMirror.pl The problem I have found is if there is a ' character (the single quote) in the data. In this case, the single quote (') is replaced by two single quotes ('') in the table PendingData. This cause the replication process to stop with a message "Error in PendingData Sequence Id XXX". To replicate the non-replicated data, I have run a patched version of DBMirror.pl. Here is my patch (mainly replacing the two single quotes by a backslash and one single quote, this mean '' -> \'. Execepted if there is a equal before, this mean don't replace ='') : --- /usr/lib/postgresql/bin/DBMirror.pl 2005-05-18 10:33:34.000000000 +0200 +++ ./DBMirror.pl 2006-06-08 11:53:39.000000000 +0200 @@ -827,6 +827,9 @@ $fnumber = 4; my $dataField = $pendingResult->getvalue($currentTuple,$fnumber); + # replace all the '' to \' in the texts + $dataField =~ s/([^=])\'\'/\1\\\'/g; + while(length($dataField)>0) { # Extract the field name that is surronded by double quotes $dataField =~ m/(\".*?\")/s; I'm sure this patch is not enough, because this don't take in account if the data has in it something like "=''". I think the part to patch is not the DBMirror.pl, but the "recordchange" procedure called by the trigger on each data change. Reverting postgresql-contrib to version 7.4.7-6sarge1 correct the problem only if you have nothing in the Pending table. Thanks for your attention, and have a nice day. Oliver -- System Information: Debian Release: 3.1 Architecture: i386 (i686) Kernel: Linux 2.4.22 Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Versions of packages postgresql-contrib depends on: ii libc6 2.3.2.ds1-22sarge3 GNU C Library: Shared libraries an ii libdbd-pg-perl 1.41-3 a PostgreSQL interface for Perl 5 ii libkrb53 1.3.6-2sarge2 MIT Kerberos runtime libraries ii libpam0g 0.76-22 Pluggable Authentication Modules l ii libpg-perl 1:2.0.2-4 Perl modules for PostgreSQL ii libpq3 7.4.7-6sarge2 PostgreSQL C client library ii libreadline4 4.3-11 GNU readline and history libraries ii libssl0.9.7 0.9.7e-3sarge1 SSL shared libraries ii libxml2 2.6.16-7 GNOME XML library ii postgresql 7.4.7-6sarge2 object-relational SQL database man ii zlib1g 1:1.2.2-4.sarge.2 compression library - runtime -- no debconf information
--- End Message ---
--- Begin Message ---Source: postgresql-7.4 Source-Version: 1:7.4.13-4 We believe that the bug you reported is fixed in the latest version of postgresql-7.4, which is due to be installed in the Debian FTP archive: libpq3_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/libpq3_7.4.13-4_i386.deb postgresql-7.4_7.4.13-4.diff.gz to pool/main/p/postgresql-7.4/postgresql-7.4_7.4.13-4.diff.gz postgresql-7.4_7.4.13-4.dsc to pool/main/p/postgresql-7.4/postgresql-7.4_7.4.13-4.dsc postgresql-7.4_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/postgresql-7.4_7.4.13-4_i386.deb postgresql-client-7.4_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/postgresql-client-7.4_7.4.13-4_i386.deb postgresql-contrib-7.4_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/postgresql-contrib-7.4_7.4.13-4_i386.deb postgresql-doc-7.4_7.4.13-4_all.deb to pool/main/p/postgresql-7.4/postgresql-doc-7.4_7.4.13-4_all.deb postgresql-plperl-7.4_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/postgresql-plperl-7.4_7.4.13-4_i386.deb postgresql-plpython-7.4_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/postgresql-plpython-7.4_7.4.13-4_i386.deb postgresql-pltcl-7.4_7.4.13-4_i386.deb to pool/main/p/postgresql-7.4/postgresql-pltcl-7.4_7.4.13-4_i386.deb postgresql-server-dev-7.4_7.4.13-4_all.deb to pool/main/p/postgresql-7.4/postgresql-server-dev-7.4_7.4.13-4_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [EMAIL PROTECTED], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Martin Pitt <[EMAIL PROTECTED]> (supplier of updated postgresql-7.4 package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [EMAIL PROTECTED]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.7 Date: Sat, 22 Jul 2006 17:17:04 +0200 Source: postgresql-7.4 Binary: postgresql-plpython-7.4 postgresql-client-7.4 postgresql-7.4 postgresql-contrib-7.4 libpq3 postgresql-doc-7.4 postgresql-plperl-7.4 postgresql-server-dev-7.4 postgresql-pltcl-7.4 Architecture: source i386 all Version: 1:7.4.13-4 Distribution: unstable Urgency: low Maintainer: Martin Pitt <[EMAIL PROTECTED]> Changed-By: Martin Pitt <[EMAIL PROTECTED]> Description: libpq3 - PostgreSQL C client library postgresql-7.4 - object-relational SQL database, version 7.4 server postgresql-client-7.4 - front-end programs for PostgreSQL 7.4 postgresql-contrib-7.4 - additional facilities for PostgreSQL postgresql-doc-7.4 - documentation for the PostgreSQL database management system postgresql-plperl-7.4 - PL/Perl procedural language for PostgreSQL 7.4 postgresql-plpython-7.4 - PL/Python procedural language for PostgreSQL 7.4 postgresql-pltcl-7.4 - PL/TCL procedural language for PostgreSQL 7.4 postgresql-server-dev-7.4 - development files for PostgreSQL 7.4 server-side programming Closes: 375744 377495 379145 Changes: postgresql-7.4 (1:7.4.13-4) unstable; urgency=low . * Add debian/patches/37_contrib-dbmirror_quoteparsing.patch: Fix parsing of quotes escaped as '' in PendingData table. Closes: #375744 * debian/rules: Build with -fPIC everywhere to improve the proactive security effectivity of address space layout randomization. This has no measurable performance impact on at least i386, amd64, and powerpc. * debian/postgresql-7.4.init: Add LSB magic comment header (provide both postgresql-7.4 and a generic postgresql service). Closes: #377495 * debian/postgresql-7.4.init: Silently exit if init.d-functions does not exist. (See bug #362488 for postgresql-8.1) * debian/rules: Install init script at priority 19, since Apache and web applications usually reside on priority 20, but often require a running database. This follows a recent change in the MySQL package, thanks to Christian Hammers for pointing this out. Closes: #379145 * Build server-related packages on mips and mipsel again. The SIGBUS problem turned out to be a kernel bug, which is fixed on 2.6.16 and later. Thanks to Thiemo Seufer for his investigations! Files: f6dbd3b8ba62b6c857c4f2ca5d8c3fd3 1060 misc optional postgresql-7.4_7.4.13-4.dsc 1e07168124bb0cac63eaed5d460e9b5f 29650 misc optional postgresql-7.4_7.4.13-4.diff.gz 588baa69d8bf1bfc531d953bff5a5010 1265218 doc optional postgresql-doc-7.4_7.4.13-4_all.deb 8cca297f7bf0ebee85a72a93812e27ac 516252 libdevel optional postgresql-server-dev-7.4_7.4.13-4_all.deb d67fd2e23a4434d59bfa200f881b8601 3373550 misc optional postgresql-7.4_7.4.13-4_i386.deb 04856f6ba6ab610310d06f336007c102 977334 misc optional postgresql-client-7.4_7.4.13-4_i386.deb 8ec8a9d795f31bc496ed4b498076f09c 192050 libs optional libpq3_7.4.13-4_i386.deb 388f848ed12187f99aba69bbddb95484 554442 misc optional postgresql-contrib-7.4_7.4.13-4_i386.deb 84db701b7344709e7c9c5c73dcd3d1c1 114926 misc optional postgresql-plperl-7.4_7.4.13-4_i386.deb 2f6e74c76c2a64e9bfb587d5797845ba 117182 misc optional postgresql-plpython-7.4_7.4.13-4_i386.deb 1abe94ad75ee7f0f65799fcd437148a2 119306 misc optional postgresql-pltcl-7.4_7.4.13-4_i386.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFEwkwkDecnbV4Fd/IRAqQeAKDFhpwmCXc5Hlx1CuvLGW0aHNpEiACfUItD RwsvYbisl3OQdaHUs4bl2/o= =0Cs5 -----END PGP SIGNATURE-----
--- End Message ---

