I've discovered a workaround to the issue below that seems to work. I'm wondering if anyone can tell if this will break anything else in RT? If I remember correctly, MySQL is case-insensitive by default, so is there really any difference in having PostgreSQL behave the same way? Here is the diff:<br>
<br>--- SearchBuilder.pm    2009-01-13 12:00:22.000000000 -0500<br>+++ /usr/local/share/request-tracker3.8/lib/RT/SearchBuilder.pm 2009-01-26 22:58:12.000000000 -0500<br>@@ -277,17 +277,17 @@<br> This Limit sub calls SUPER::Limit, but defaults "CASESENSITIVE" to 1, thus<br>
 making sure that by default lots of things don't do extra work trying to<br> match lower(colname) agaist lc($val);<br><br> =cut<br><br> sub Limit {<br>     my $self = shift;<br>-    my %args = ( CASESENSITIVE => 1,<br>
+    my %args = ( CASESENSITIVE => 0,<br>                  @_ );<br><br>     return $self->SUPER::Limit(%args);<br> }<br><br> =head2 ItemsOrderBy<br><br> If it has a SortOrder attribute, sort the array by SortOrder.<br>
<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Adam Tingle</b> <span dir="ltr"><<a href="mailto:adamtingle@gmail.com">adamtingle@gmail.com</a>></span><br>
Date: Fri, Jan 23, 2009 at 10:09 PM<br>Subject: RT 3.8.2 / Pg 8.3.5: Case-insensitive searching on custom fields not  working?<br>To: <a href="mailto:rt-users@lists.bestpractical.com">rt-users@lists.bestpractical.com</a><br>
<br><br>When I do a search for a ticket subject or content, RT queries PostgreSQL using the ILIKE operator and returns results on  case-insensitive basis. However, when I search for a custom field, RT queries the database using the LIKE operator and returns results on a case-sensitive basis.<br>

<br>I've enabled the option log_statement = 'all' in postgresql.conf and see the following output in postgresql-8.3-main.log.<br><br>Here is sample output from a search on ticket subject:<br><br>LOG:  statement: SELECT COUNT(DISTINCT <a href="http://main.id" target="_blank">main.id</a>) FROM Tickets main JOIN Transactions Transactions_1  ON ( Transactions_1.ObjectId = <a href="http://main.id" target="_blank">main.id</a> ) JOIN Attachments Attachments_2  ON ( Attachments_2.TransactionId = Transactions_1.id )  WHERE (Transactions_1.ObjectType = 'RT::Ticket') AND (main.Status != 'deleted') AND ( (  ( Attachments_2.Content ILIKE '%searchterm%' )  ) ) AND (main.Type = 'ticket') AND (main.EffectiveId = <a href="http://main.id" target="_blank">main.id</a>)<br>

<br>Here is sample output from a search on a custom field:<br><br>LOG:  statement: SELECT COUNT(DISTINCT <a href="http://main.id" target="_blank">main.id</a>) FROM Tickets main JOIN ObjectCustomFieldValues ObjectCustomFieldValues_1  ON ( ObjectCustomFieldValues_1.CustomField = '1' ) AND ( ObjectCustomFieldValues_1.ObjectType = 'RT::Ticket' ) AND ( ObjectCustomFieldValues_1.Disabled = '0' ) AND ( ObjectCustomFieldValues_1.ObjectId = <a href="http://main.id" target="_blank">main.id</a> )  WHERE (main.Status != 'deleted') AND ( (  (  (  ( ObjectCustomFieldValues_1.Content LIKE '%searchterm%' OR  (  ( ObjectCustomFieldValues_1.Content = '' OR ObjectCustomFieldValues_1.Content IS NULL )  AND ObjectCustomFieldValues_1.LargeContent LIKE '%searchterm%' )  )  )  )  ) ) AND (main.Type = 'ticket') AND (main.EffectiveId = <a href="http://main.id" target="_blank">main.id</a>)<br clear="all">

<br>Is this a bug or expected results? I'd really like to have  case-insensitive search on CFs.<br><br>Thanks RT!<br><br>-- <br>...................<br><font color="#888888">Adam Tingle<br><br></font></div><br><br>