PG_BYTEA seems to be working nowadays, and uses much less memory than our alternative...
authorIvan Kohler <ivan@freeside.biz>
Mon, 24 Jul 2017 20:38:14 +0000 (13:38 -0700)
committerIvan Kohler <ivan@freeside.biz>
Mon, 24 Jul 2017 20:38:14 +0000 (13:38 -0700)
FS/FS/Record.pm

index c98de0a..c05dac0 100644 (file)
@@ -3342,11 +3342,7 @@ sub _quote {
            && driver_name eq 'Pg'
           )
   {
-    no strict 'subs';
-#    dbh->quote($value, { pg_type => PG_BYTEA() }); # doesn't work right
-    # Pg binary string quoting: convert each character to 3-digit octal prefixed with \\, 
-    # single-quote the whole mess, and put an "E" in front.
-    return ("E'" . join('', map { sprintf('\\\\%03o', ord($_)) } split(//, $value) ) . "'");
+    dbh->quote($value, { pg_type => PG_BYTEA() });
   } else {
     dbh->quote($value);
   }