summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Lawrence <dlawrence@mozilla.com>2013-10-13 17:20:12 +0200
committerDave Lawrence <dlawrence@mozilla.com>2013-10-13 17:20:12 +0200
commit8736d764006115a9e5bbded30f2d05a4fa1b5329 (patch)
tree92d628cbe66642b8e726f6a96e99bf261c810ac8
parent24944dfbf6e51f548b42d58d1e601f90787190f3 (diff)
downloadbugzilla-8736d764006115a9e5bbded30f2d05a4fa1b5329.tar.gz
bugzilla-8736d764006115a9e5bbded30f2d05a4fa1b5329.tar.xz
Bug 926109 - Bugzilla has suffered an internal error while retrieving many columns at once
-rwxr-xr-xbuglist.cgi11
1 files changed, 10 insertions, 1 deletions
diff --git a/buglist.cgi b/buglist.cgi
index 9c7281822..6ffbea94f 100755
--- a/buglist.cgi
+++ b/buglist.cgi
@@ -546,7 +546,16 @@ if (defined $params->param('columnlist')) {
if ($params->param('columnlist') eq "all") {
# If the value of the CGI parameter is "all", display all columns,
# but remove the redundant "short_desc" column.
- @displaycolumns = grep($_ ne 'short_desc', keys(%$columns));
+ # BMO: Skip tracking flag columns when retrieving all columns
+ # MySQL bombs on greater than 61 joins.
+ my @non_tf_columns;
+ foreach my $column (keys %$columns) {
+ next if $column eq 'short_desc';
+ next if ($column =~ /^cf_(blocking|tracking|status)/
+ && $columns->{$column}->{name} =~ /^COALESCE/);
+ push(@non_tf_columns, $column);
+ }
+ @displaycolumns = @non_tf_columns;
}
else {
@displaycolumns = split(/[ ,]+/, $params->param('columnlist'));