"Cannot create references" error
-
Hello. I am trying to upgrade a Fog server from 3412 to the latest from git. (This is on a RHEL 7 server.) But the database update seems to fail. The installer prompts me to visit http://10.10.1.48/fog/management to update the database schema. But that page is just blank. In the Apache error_log I see this:
PHP Fatal error: Cannot create references to elements of a temporary array expression in /var/www/html/fog/lib/fog/foggetset.class.php on line 5After searching for solutions to this problem I tried 2 specific things. I set these in /opt/fog/.fogsettings:
snmysqluser=“root”
snmysqlhost=“localhost”;
(I didn’t touch snmysqlpass as it was already set correctly.) I also tried removing /var/www/html/fog and letting the installer recreate it. But when i re-run the installer I get the same problem, with the same message in Apache’s log. Any ideas? -
inside of the installer’s
bin
directory - after the installer has ran - there should be a newly created directory. That’s where the installation outputs are stored, you’ll also find errors in there. The files in there will be calledfog_error_xxxx.log
where xxxx is your revision number. Can you look in there and maybe post the contents of the latest file? -
Just for clarity what specifically is “the latest from git” for your install. Latest is a moving target these days.
Second, when you updated from git, did you do that while you were in the fog trunk directory or from within the bin folder? (just recently I saw someone running the download from the bin folder, which will only update the installfog.sh file)
-
I have a directory called “fogproject” from when I initially installed Fog. I did a “git pull” from within that directory to make it current, then did a “cd bin ; ./installfog.sh” to run the installer. I think this shows what version I’m working with; these commands were run in the fogproject directory:
# git describe --tags v1.3.0-beta.3510-2774-gfb42d97 # git log -1 commit fb42d97355ff12ad540bfde3edc6ee02f0d1a909 Merge: b6bfde0 fd40b38 Author: Tom Elliott <tommygunsster@gmail.com> Date: Mon Feb 15 16:34:29 2016 -0500 Merge svn with dev-branch # git rev-parse HEAD fb42d97355ff12ad540bfde3edc6ee02f0d1a909
I will try to upload the installation error log as well: 0_1455586835861_fog_error_6283.log
-
I removed the value being passed my reference. With any luck, this error will be gone and solved.
-
@dramaley Do we have any word on the status of this now?
-
Thanks for the patch! I did another “git pull” and tried the install again. I now get the same error, but in a different spot:
PHP Fatal error: Cannot create references to elements of a temporary array expression in /var/www/html/fog/lib/fog/fogbase.class.php on line 134
-
@dramaley What version of PHP are you running?
-
It is the standard PHP on RHEL 7:
$ php --version
PHP 5.4.45 (cli) (built: Jan 6 2016 16:48:34)
Copyright 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright 1998-2014 Zend Technologies -
@dramaley What version of fog are you running?
the Git tree, forces you to at least have 5.6.
-
Doh! When i originally installed Fog i was careful to check requirements, but have not rechecked those recently. I’ll look into getting PHP updated and report back if that fixes it.
-
@dramaley You didn’t do anything wrong. It’s only worrying me that if you’re running git pull and it’s NOT updating php to what I’m forcing, that something else is amiss and I don’t know what.
-
OK, so i stopped Apache, erased all php* packages, installed the php56-* packages in their place, and restarted Apache. Then i re-ran the Fog installer. And… it installed the original php* packages! So now i have 2 versions of PHP installed. And the old one takes precedence, so Fog is still not working.
I’ll try running the Fog installer again, but from a second terminal i’ll erase all the php* packages that the installer mistakenly installs and see if i can work around it that way.
-
I got the latest Fog installed! The work-around that i described a few minutes ago worked.
-
@dramaley,
As you’re using git, can you output the exact commands being used?
-
Also, if possible the current hash of the git pull?
-
Here is what i do to install Fog:
# cd fogproject # git pull # cd bin # ./installfog.sh
Is this what you mean by the hash?
# git rev-parse HEAD 8ca213b6efd9fdc7b5df63deeac3b9cfd7fc1be0
That was run in the fogproject directory.
-
Hello,
I have the same error, just after the step :-
You still need to install/update your database schema.
-
This can be done by opening a web browser and going to:
[root@fog fog]# tail /var/log/httpd/error_log -fn1
[Tue Feb 16 18:12:40 2016] [error] [client 192.168.222.174] PHP Fatal error: Cannot create references to elements of a temporary array expression in /var/www/html/fog/lib/fog/fogbase.class.php on line 134[root@fog fogproject]# git describe --tags
v1.3.0-beta.3510-2778-g0853fd[root@fog fogproject]# git log -1
commit 2db42ffc1d9ce960389ddcf4a2bd37e4d3443417
Merge: 9e9f7d3 0916fbd
Author: Tom Elliott tommygunsster@gmail.com
Date: Tue Feb 16 19:13:53 2016 -0500Merge svn with dev-branch
[root@fog fogproject]# git rev-parse HEAD
2db42ffc1d9ce960389ddcf4a2bd37e4d3443417 -
-
@Rico can you try the workaround steps @dramaley described? Your version of php is likely incorrect.
-
This post is deleted!