diff options
author | Dave Lawrence <dlawrence@mozilla.com> | 2013-10-13 17:20:12 +0200 |
---|---|---|
committer | Dave Lawrence <dlawrence@mozilla.com> | 2013-10-13 17:20:12 +0200 |
commit | 8736d764006115a9e5bbded30f2d05a4fa1b5329 (patch) | |
tree | 92d628cbe66642b8e726f6a96e99bf261c810ac8 | |
parent | 24944dfbf6e51f548b42d58d1e601f90787190f3 (diff) | |
download | bugzilla-8736d764006115a9e5bbded30f2d05a4fa1b5329.tar.gz bugzilla-8736d764006115a9e5bbded30f2d05a4fa1b5329.tar.xz |
Bug 926109 - Bugzilla has suffered an internal error while retrieving many columns at once
-rwxr-xr-x | buglist.cgi | 11 |
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')); |