I'm working through the Symfony Jobeet tutorial and am getting a segmentation fault when trying to load data from my fixtures files.
PHP 5.2.6-1+lenny8 with Suhosin-Patch 0.9.6.2 (cli), S symfony version 1.4.5
I'm using the Doctrine plugin.
My fixtures below:
/data/fixtures/categories.yml
JobeetCategory:
design:
name: Design
programming:
name: Programming
manager:
name: Manager
administrator:
name: Administrator
/data/fixtures/jobs.yml
JobeetJob:
job_sensio_labs:
JobeetCategory: programming
type: full-time
company: Sensio Labs
logo: sensio-labs.gif
url: http://www.sensiolabs.com/
position: Web Developer
location: Paris, France
description: |
You've already developed websites with symfony and you want to work
with Open-Source technologies. You have a minimum of 3 years
experience in web development with PHP or Java and you wish to
participate to development of Web 2.0 sites using the best
frameworks available.
how_to_apply: |
Send your resume to fabien.potencier [at] sensio.com
is_public: true
is_activated: true
token: job_sensio_labs
email: job@example.com
expires_at: '2010-10-10'
job_extreme_sensio:
JobeetCategory: design
type: part-time
company: Extreme Sensio
logo: extreme-sensio.gif
url: http://www.extreme-sensio.com/
position: Web Designer
location: Paris, France
description: |
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
in reprehenderit in.
Voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa
qui officia deserunt mollit anim id est laborum.
how_to_apply: |
Send your resume to fabien.potencier [at] sensio.com
is_public: true
is_activated: true
token: job_extreme_sensio
email: job@example.com
expires_at: '2010-10-10'
expired_job:
JobeetCategory: programming
company: Sensio Labs
position: Web Developer
location: Paris, France
description: Lorem ipsum dolor sit amet, consectetur adipisicing elit.
how_to_apply: Send your resume to lorem.ipsum [at] dolor.sit
is_public: true
is_activated: true
created_at: '2005-12-01 00:00:00'
token: job_expired
email: job@example.com
<?php for ($i = 100; $i <= 130; $i++): ?>
job_<?php echo $i ?>:
JobeetCategory: programming
company: Company <?php echo $i."\n" ?>
position: Web Developer
location: Paris, France
description: Lorem ipsum dolor sit amet, consectetur adipisicing elit.
how_to_apply: |
Send your resume to lorem.ipsum [at] company_<?php echo $i ?>.sit
is_public: true
is_activated: true
token: job_<?php echo $i."\n" ?>
email: job@example.com
<?php endfor ?>
I've followed the tutorial exactly as it says, I'm on day 7 (http://www.symfony-project.org/jobeet/1_4/Doctrine/en/07) at the Job Category Module Creation then Update Database.
I'm really not sure what could be causing this.
Any ideas?
Thanks
For arguments sake, I would like to share the way I resolved a similar error.
I had issues in a fixtures logic I was reviewing that would return the same code: Segmentation fault
Basically, the same var was overwritten in a loop after being declared and passed as arguments in methods, yeah I know, what a ride :)
So by defining other vars and properly reassigning them around, the error completely vanished...
Hope that helps someone else reaching this page like i did!
Concerning your case, if the other answer was not resolving it, you may want to try and correct your code in the template part by adding a ; after the endfor closing directive.
Segmentation faults are usually either incorrect opcode caches or broken modules. I'd disable opcode caches like apc first, and if the problem still persists, keep disabling php-modules on at a time to determine which one gives you problems.
If even that doesn't work, try to upgrade php (5.2.13 or 5.3.2 are considered stable), and report a bug in to bugs.php.net if the problem persist with a minimum use case.
When this happens to me when working on symfony project, first I check logs, but not always can found the solution. If not, I run some symfony command from the project I am working on that I have programmed to see if some described error is shown in console.
I also check last changes I've done and try to rollback parts of code.
Last time It happened to my was because of an incorrect parameter in a yml file, just a "parent" class.
Hope it helps to think about how to think about the problem.