]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 450379: Searching SQL for candidates to truncate short_desc (> 255 chars) should...
authorlpsolit%gmail.com <>
Wed, 27 Aug 2008 20:22:09 +0000 (20:22 +0000)
committerlpsolit%gmail.com <>
Wed, 27 Aug 2008 20:22:09 +0000 (20:22 +0000)
Bugzilla/DB/Oracle.pm
Bugzilla/Install/DB.pm

index 417b97b31e12258414a5743ca815fb6aabed2516..b785b08d7d9a2f4d47f23fec0f03a4213ae71063 100644 (file)
@@ -466,6 +466,8 @@ sub bz_setup_database {
     # have that function, So we have to create one ourself. 
     $self->do("CREATE OR REPLACE FUNCTION NOW "
               . " RETURN DATE IS BEGIN RETURN SYSDATE; END;");
+    $self->do("CREATE OR REPLACE FUNCTION CHAR_LENGTH(COLUMN_NAME VARCHAR2)" 
+              . " RETURN NUMBER IS BEGIN RETURN LENGTH(COLUMN_NAME); END;");
     # Create a WORLD_LEXER named BZ_LEX for multilingual fulltext search
     my $lexer = $self->selectcol_arrayref(
        "SELECT pre_name FROM CTXSYS.CTX_PREFERENCES WHERE pre_name = ? AND
index a273dee36af8905103b50ed8680f61a1afccd8b2..270b0e8041a35fb4bdcc2489dbafe105fe14d497 100644 (file)
@@ -2616,7 +2616,7 @@ sub _change_short_desc_from_mediumtext_to_varchar {
         # and then truncate the summary.
         my $long_summary_bugs = $dbh->selectall_arrayref(
             'SELECT bug_id, short_desc, reporter
-               FROM bugs WHERE LENGTH(short_desc) > 255');
+               FROM bugs WHERE CHAR_LENGTH(short_desc) > 255');
 
         if (@$long_summary_bugs) {
             print <<EOT;
@@ -2972,7 +2972,7 @@ sub _check_content_length {
     my $dbh = Bugzilla->dbh;
     my %contents = @{ $dbh->selectcol_arrayref(
         "SELECT $id_field, $field_name FROM $table_name 
-          WHERE LENGTH($field_name) > ?", {Columns=>[1,2]}, $max_length) };
+          WHERE CHAR_LENGTH($field_name) > ?", {Columns=>[1,2]}, $max_length) };
 
     if (scalar keys %contents) {
         print install_string('install_data_too_long',