Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: Template->process() failed twice.

230 views
Skip to first unread message

jose cabrera

unread,
Feb 28, 2018, 2:00:16 PM2/28/18
to jose cabrera, Bugzilla Support

Sorry about the lack of subject. Now we have one. :-)


Greetings!

I have been dealing with this problem all day. I have installed/uninstalled bugzilla 3.2 like 5 times, and I am still getting the same error. I have searched the internet and the fix is to run ./checksetup.pl, but I have done that multitude of times. So here is the error of the fresh 3.2:

Bugzilla has suffered an internal error. Please save this page and send it to THE MAINTAINER HAS NOT YET BEEN SET with details of what you were doing at the time this message appeared.

URL: http://gbrtef01lx005.eu.xerox.net/bugzilla/

Template->process() failed twice.
First error: file error - recursion into 'global/header.html.tmpl'
Second error: file error - recursion into 'global/header.html.tmpl'

I have ran ./checksetup.pl many, many times, here is the output of the last time:

root@GBRTEF01LX005:/var/www/html/bugzilla# ./checksetup.pl
* This is Bugzilla 3.2 on perl 5.22.1
* Running on Linux 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018

Checking perl modules...
Checking for CGI.pm (v3.33) ok: found v4.26
Checking for TimeDate (v2.21) ok: found v2.24
Checking for PathTools (v0.84) ok: found v3.56
Checking for DBI (v1.41) ok: found v1.64
Checking for Template-Toolkit (v2.15) ok: found v2.27
Checking for Email-Send (v2.00) ok: found v2.201
Checking for Email-MIME (v1.861) ok: found v1.946
Checking for Email-MIME-Modifier (v1.442) ok: found v1.946

Checking available perl DBD modules...
Checking for DBD-mysql (v4.00) ok: found v4.033
Checking for DBD-Oracle (v1.19) not found
Checking for DBD-Pg (v1.45) not found

The following Perl modules are optional:
Checking for GD (v1.20) ok: found v2.53
Checking for Chart (v1.0) ok: found v2.4.10
Checking for Template-GD (any) ok: found v1.56
Checking for GDTextUtil (any) ok: found v0.86
Checking for GDGraph (any) ok: found v1.48
Checking for XML-Twig (any) ok: found v3.49
Checking for MIME-tools (v5.406) ok: found v5.509
Checking for libwww-perl (any) ok: found v6.31
Checking for PatchReader (v0.9.4) ok: found v0.9.6
Checking for PerlMagick (any) not found
Checking for perl-ldap (any) ok: found v0.65
Checking for Authen-SASL (any) ok: found v2.16
Checking for RadiusPerl (any) ok: found v0.26
Checking for SOAP-Lite (any) ok: found v1.19
Checking for HTML-Parser (v3.40) ok: found v3.72
Checking for HTML-Scrubber (any) ok: found v0.15
Checking for Email-MIME-Attachment-Stripper (any) ok: found v1.317
Checking for Email-Reply (any) ok: found v1.204
Checking for mod_perl (v1.999022) ok: found v2.000009
**********************************************************************
* OPTIONAL MODULES *
**********************************************************************
* Certain Perl modules are not required by Bugzilla, but by *
* installing the latest version you gain access to additional *
* features. *
* *
* The optional modules you do not have installed are listed below, *
* with the name of the feature they enable. If you want to install *
* one of these modules, just run the appropriate command in the *
* "COMMANDS TO INSTALL" section. *
**********************************************************************

***********************************************************************
* MODULE NAME * ENABLES FEATURE(S) *
***********************************************************************
* PerlMagick * Optionally Convert BMP Attachments to PNGs *
***********************************************************************
COMMANDS TO INSTALL:

PerlMagick: /usr/bin/perl install-module.pl Image::Magick

To attempt an automatic install of every required and optional module
with one command, do:

/usr/bin/perl install-module.pl --all

Reading ./localconfig...

OPTIONAL NOTE: If you want to be able to use the 'difference between two
patches' feature of Bugzilla (which requires the PatchReader Perl module
as well), you should install patchutils from:

http://cyberelk.net/tim/patchutils/

Checking for DBD-mysql (v4.00) ok: found v4.033
Checking for MySQL (v4.1.2) ok: found v5.7.21-0ubuntu0.16.04.1

Removing existing compiled templates...
Precompiling templates...done.
Fixing file permissions...
Checking for GraphViz (any) ok: found
root@GBRTEF01LX005:/var/www/html/bugzilla#

Here is the run of ./testserver.pl:
root@GBRTEF01LX005:/var/www/html/bugzilla# ./testserver.pl http://localhost/bugzilla
TEST-OK Webserver is running under group id in $webservergroup.
TEST-OK Got front picture.
TEST-OK Webserver is executing CGIs via mod_cgi.
TEST-OK Webserver is preventing fetch of http://localhost/bugzilla/localconfig.
TEST-OK GD version 2.53, libgd version 2.1.1; Major versions match.
TEST-OK GD library generated a good PNG image.
TEST-OK Chart library generated a good PNG image.
TEST-OK Template::Plugin::GD is installed.

Which, by the way, has a bug. It's looking for apache, and the command cuts apache off and returns apach, so I had to fix the regular expression so that it'll work.

I should say that I have not created an empty DB, because I have the old DB already up, so, it may be related to that. But, how do I fix this. Thanks for your support.


--
What if eternity is real? Where will you spend it? Hmmm...

Thorsten Schöning

unread,
Feb 28, 2018, 2:48:47 PM2/28/18
to Bugzilla Support
Guten Tag jose cabrera,
am Mittwoch, 28. Februar 2018 um 19:59 schrieben Sie:

> So here is the error of the fresh 3.2:

"fresh" does what exactly mean on your case? The uncustomized release
from GitHub or tat release but overwritten files by your NT or ...?

Template->>process() failed twice.
> First error: file error - recursion into 'global/header.html.tmpl'
> Second error: file error - recursion into 'global/header.html.tmpl'

Any errors in your web server log?

> I should say that I have not created an empty DB, because I have
> the old DB already up, so, it may be related to that. But, how do I
> fix this. Thanks for your support.

What does "old DB" exactly mean? It's pretty safe to assume that a
database used with or more recent version of Bugzilla than what you
are using now is not working. That's especially true for 5.0 vs. 3.2,
but might as well be true for 3.2.10 vs. 3.2.0.

So simply create an empty database for your current installation and
see if the problem disappears. If it does, your databases are
imcompatible and you need to use exactly that from your old NT.

Mit freundlichen Grüßen,

Thorsten Schöning

--
Thorsten Schöning E-Mail: Thorsten....@AM-SoFT.de
AM-SoFT IT-Systeme http://www.AM-SoFT.de/

Telefon...........05151- 9468- 55
Fax...............05151- 9468- 88
Mobil..............0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow

jose cabrera

unread,
Feb 28, 2018, 3:14:59 PM2/28/18
to "Thorsten Schöning", Bugzilla Support

On Wednesday, February 28, 2018 at 2:48 PM, "Thorsten Schöning" wrote...
> > So here is the error of the fresh 3.2:
>
> "fresh" does what exactly mean on your case? The uncustomized release
> from GitHub or tat release but overwritten files by your NT or ...?
Yes, here are the pseudo steps as root:
-- stop MySQL server
-- stop apache2 server
-- cd to /var/www/html
-- rm -rf Bugzilla
-- tar xvf bugzilla-3.2.tar
-- mv bugzilla-3.2 bugzilla
-- cd Bugzilla
-- ./checksetup.pl
-- fix localconfig
-- start MySQL server
-- start apache2 server
-- ./checksetup.pl
-- fix perl bug: Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at Bugzilla/Install/Localconfig.pm line 239,
-- fixed two perl bugs in Bugzilla/DB/MySQL.pm
1. InnoDB
2. max_allowed_packet
-- ./checksetup.pl

and no error from ./checksetup.pl, so I opened this email.


> Any errors in your web server log?
Aaah, good question. Let me check that...


> What does "old DB" exactly mean?
The old NT4 db moved to the new MySQL. By the way, I exported that db using the correct syntax desired and instructed by Bugzilla documentation, and that also works ok.

> It's pretty safe to assume that a
> database used with or more recent version of Bugzilla than what you
> are using now is not working. That's especially true for 5.0 vs. 3.2,
> but might as well be true for 3.2.10 vs. 3.2.0.
All was working ok last night. Actually this morning, but I wanted to start with a fresh install, and then this happened.


> So simply create an empty database for your current installation and
> see if the problem disappears. If it does, your databases are
> imcompatible and you need to use exactly that from your old NT.
Let me try this also. Thanks.

josé

jose cabrera

unread,
Feb 28, 2018, 3:29:02 PM2/28/18
to "Thorsten Schöning", Bugzilla Support
On Wednesday, February 28, 2018 at 2:48 PM, "Thorsten Schöning" wrote...

> Any errors in your web server log?

Here the last 20 lines:

root@GBRTEF01LX005:/home/bzadmin/bugz/Bugzilla# tail -20 /var/log/apache2/error.log
[Wed Feb 28 18:07:20 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
[Wed Feb 28 18:07:31 2018] index.cgi: CGI::param called in list context from Bugzilla/CGI.pm line 229, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 405.
[Wed Feb 28 18:07:31 2018] index.cgi: Use of uninitialized value $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.
[Wed Feb 28 18:07:31 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
[Wed Feb 28 18:11:36 2018] index.cgi: CGI::param called in list context from Bugzilla/CGI.pm line 229, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 405.
[Wed Feb 28 18:11:36 2018] index.cgi: Use of uninitialized value $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.
[Wed Feb 28 18:11:36 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
[Wed Feb 28 18:18:40 2018] index.cgi: CGI::param called in list context from Bugzilla/CGI.pm line 229, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 405.
[Wed Feb 28 18:18:40 2018] index.cgi: Use of uninitialized value $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.
[Wed Feb 28 18:18:40 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
[Wed Feb 28 18:24:05.551865 2018] [access_compat:error] [pid 8752:tid 139639260153600] [client ::1:35464] AH01797: client denied by server configuration: /var/www/html/bugzilla/localconfig
[Wed Feb 28 20:19:21 2018] index.cgi: CGI::param called in list context from Bugzilla/CGI.pm line 229, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 405.
[Wed Feb 28 20:19:21 2018] index.cgi: Use of uninitialized value $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.
[Wed Feb 28 20:19:21 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
[Wed Feb 28 20:22:18 2018] index.cgi: CGI::param called in list context from Bugzilla/CGI.pm line 229, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 405.
[Wed Feb 28 20:22:18 2018] index.cgi: Use of uninitialized value $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.
[Wed Feb 28 20:22:18 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
[Wed Feb 28 20:22:25 2018] index.cgi: CGI::param called in list context from Bugzilla/CGI.pm line 229, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 405.
[Wed Feb 28 20:22:25 2018] index.cgi: Use of uninitialized value $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.
[Wed Feb 28 20:22:25 2018] index.cgi: (in cleanup) Can't locate object method "DESTROY" via package "Bugzilla::CGI" at Bugzilla/CGI.pm line 59 during global destruction.
root@GBRTEF01LX005:/home/bzadmin/bugz/Bugzilla#

Hmmm.... Thoughts?

Thorsten Schöning

unread,
Mar 1, 2018, 3:21:55 AM3/1/18
to Bugzilla Support
Guten Tag jose cabrera,
am Mittwoch, 28. Februar 2018 um 21:28 schrieben Sie:

> [Wed Feb 28 18:07:20 2018] index.cgi: (in cleanup) Can't locate
> object method "DESTROY" via package "Bugzilla::CGI" at
> Bugzilla/CGI.pm line 59 during global destruction.

That's an incompatibility of your old Bugzilla with current CGI, try
to comment the following line just to be sure that this is not your
problem.

https://github.com/bugzilla/bugzilla/blob/3.2/Bugzilla/CGI.pm#L59

> [Wed Feb 28 18:07:31 2018] index.cgi: CGI::param called in list
> context from Bugzilla/CGI.pm line 229, this can lead to
> vulnerabilities. See the warning in "Fetching the value or values of
> a single named parameter" at /usr/share/perl5/CGI.pm line 405.

Incompatibility as well, but most likely harmless regarding your
problem.

> [Wed Feb 28 18:07:31 2018] index.cgi: Use of uninitialized value
> $ENV{"HTTPS"} in uc at Bugzilla/Util.pm line 230.

This warning is safe to ignore and fixed in later versions of Bugzilla
as well. But you might want to check your SSL related settings in the
admin-UI as well.

https://github.com/bugzilla/bugzilla/blob/3.2/Bugzilla/Util.pm#L240

Besides the first error, to me those don't look like related to your
problem. Especially if it worked "before", I suggest comparing the
newer logs from your mail here with older messages. If they contain
the same, you need to find your problem somewhere else. E.g. have a
look at your shell history to see what you have changed or such,
things don't break automatically unless anything has changed.

jose cabrera

unread,
Mar 1, 2018, 9:46:42 AM3/1/18
to "Thorsten Schöning", Bugzilla Support

On Thursday, March 01, 2018 at 3:21 AM, "Thorsten Schöning" wrote...>

> That's an incompatibility of your old Bugzilla with current CGI, try
> to comment the following line just to be sure that this is not your
> problem.

**I think** I know what happened: I installed perlbrew and in one of those instances I tried installing the missing perl modules and that damaged a bunch of things. Here is what I had to do:
-- uninstall MySQL and all of its dependencies
-- uninstall apache2 and all of its dependencies
-- uninstall perl as much as possible
-- uninstall perlbrew and all of its dependencies
-- follow the normal Bugzilla instruction for Ubuntu 14.04.

All is back to normal and running. Thanks for your support. I am not installing anything else. ;-) I am leaving things running alone... Thank you very much for your support.

josé

Thorsten Schöning

unread,
Mar 1, 2018, 12:00:30 PM3/1/18
to Bugzilla Support
Guten Tag jose cabrera,
am Donnerstag, 1. März 2018 um 15:46 schrieben Sie:

> **I think** I know what happened: I installed perlbrew and in one
> of those instances I tried installing the missing perl modules and
> that damaged a bunch of things.[...]

Thank god we agreed some days before that using the package manager
should be preferred... :-P

jose cabrera

unread,
Mar 1, 2018, 12:29:14 PM3/1/18
to "Thorsten Schöning", Bugzilla Support
On Thursday, March 01, 2018 at 11:59 AM, "Thorsten Schöning" wrote...
>
> Thank god we agreed some days before that using the package manager
> should be preferred... :-P

Well, I actually did not disagree. :-) I needed to have those installed, and since I didn't know which package to install, and sometimes, the first 3 or 4 google's findings are not the answer, that's why I chose to use perlbrew. :-) So, here is a suggestion for ./checksetup:
If in Linux, when suggesting the perl's "COMMANDS TO INSTALL:" like this one,

COMMANDS TO INSTALL:

PerlMagick: /usr/bin/perl install-module.pl Image::Magick


why don't you instead provide the Linux package? Maybe even hint on how to search for it in the Linux flavor being executed. This would not have happened to me. By the way, this is still showing even though I have /usr/bin/dot installed (that's the replacement of ImageMagic in Ubuntu 16.04). Thanks.

Emmanuel Seyman

unread,
Mar 1, 2018, 1:33:54 PM3/1/18
to support-...@lists.mozilla.org
* jose cabrera [01/03/2018 18:28] :
>
> If in Linux, when suggesting the perl's "COMMANDS TO INSTALL:" like this one,
> COMMANDS TO INSTALL:
> PerlMagick: /usr/bin/perl install-module.pl Image::Magick
>
> why don't you instead provide the Linux package?

Each Linux distribution has its own way of naming the packages which contain
Perl modules and install-module.pl would have to know it in order to give you
the package name.

The checksetup.pl in the bugzilla package in Fedora tells you to run
'dnf install "perl(Image::Magick)"' for optional packages which is a
step in the right direction.

MetaCPAN's fastapi will tell you the package name for CPAN modules in
Debian and Fedora (and Debian names should match 99.99% of the time to
the name in Ubuntu) but not all modules are covered and that won't
guarantee that the version of the package is high enough for Bugzilla's
needs.

https://fastapi.metacpan.org/distribution/Moose

Emmanuel
0 new messages