2011-08-05 27 views
6

सिम्फनी 2 मर जाता है और मुझे खाली पृष्ठ देता है। अस्वीकरण: मुझे खाली पृष्ठों से नफरत है। वैसे भी, मैं कैसे पता चला कि क्या गलत हुआ; यह क्यों मर गया; कोई त्रुटि क्यों नहीं है?सिम्फनी 2 खाली पृष्ठ देता है

dev.log जाँच हो रही है यह मुझे बेकार की जानकारी देता है:

[2011-08-05 08:41:33] doctrine.DEBUG: UPDATE accTransactions SET report_id = ? WHERE id = ? ([8163,2941852]) 
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.view" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelView". 
[2011-08-05 08:41:33] event.DEBUG: Listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelView" stopped propagation of the event "kernel.view". 
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse". 
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bundle\SecurityBundle\EventListener\ResponseListener::onKernelResponse". 
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bridge\Monolog\Handler\FirePHPHandler::onKernelResponse". 
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\CacheListener::onKernelResponse". 
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse". 
[2011-08-05 08:41:35] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse". 

php_error.log और अन्य एक त्रुटि नहीं है।

मैं एक बड़ी मेज पर एक अद्यतन चला रहा हूं, और 1500+ प्रश्न प्रति अनुरोध (लगभग 15sec ले रहा है) कर रहा हूं। मुझे लगता है कि PHP की मृत्यु के बाद Doctrine2 के साथ कुछ करना है। यह बहुत अस्थिर है, जिसमें लेनदेन की संख्या में वृद्धि होने पर यह मरना शुरू हो जाता है ... मुझे प्रशासन करना है कि मुझे ओआरएम से ज्यादा उम्मीद है, न केवल खाली मौतें।

क्या कोई डीबी लॉग फ़ाइल है या कुछ ऐसा है जो मुझे एक त्रुटि दे सकता है? एक समय में 1 लेनदेन करने के अलावा काम करने के लिए कुछ भी, क्योंकि इसमें 13,333 घंटे लगेंगे ... यदि आप पहली लॉग प्रविष्टि देखते हैं तो यह एक बहुत ही बुनियादी अपडेट है (केवल एक संबंध जोड़ना)।

मैं PHP 5.3.2 चल रहा हूँ एपीसी

साथ मैं भी देखा है कि समारोह तल पर फ्लश आदेश को जाता है, यह इसे सफलतापूर्वक निष्पादित करता है। इस प्रकार, मुझे लगता है कि यह केवल एसएफ 2 है जो दृश्य को सफलतापूर्वक प्रस्तुत नहीं करता है?

+1

आपके पास देव पर्यावरण में खाली पृष्ठ भी है? (app_dev.php फ़ाइल का उपयोग करें)। क्या आपने प्रोफाइलर को देखा है? (आप पुराने अनुरोध की खोज कर सकते हैं और फिर सभी देव लॉग पर एक नज़र डालें) – Damien

+0

(बेवकूफ सवाल) क्या आप ini_set ('display_errors', 1) जोड़ने का प्रयास कर सकते हैं; app_dev.php की शुरुआत में? – julesbou

+0

संभव डुप्लिकेट [PHP खाली पृष्ठ के साथ सहायता?] (Http://stackoverflow.com/questions/816404/help-with-php-blank-page) – cweiske

उत्तर

2

यदि आप डॉक्टर 2 में बैच प्रोसेसिंग कर रहे हैं तो आपका इकाई प्रबंधक बढ़ रहा है और आप PHP स्मृति सीमा का उल्लंघन कर रहे हैं।

http://www.doctrine-project.org/blog/doctrine2-batch-processing.html

आप हज़ारों वस्तुओं का निर्माण कर रहे हैं और इस प्रत्येक चक्र के साथ बढ़ रहा है।

आपको ओआरएम के साथ बैच प्रोसेसिंग करते समय सावधान रहना होगा कि आप मेमोरी लीक को खत्म करते हैं। एक ओआरएम हमेशा इस नौकरी के लिए सबसे अच्छा उपकरण नहीं है लेकिन यदि आप जो कर रहे हैं उससे सावधान रहें तो इसका उपयोग किया जा सकता है।

+0

आपका लिंक टूटा हुआ है: http: //www.doctrine-project .org/ब्लॉग/doctrine2-बैच-प्रोसेसिंग.html –

+0

धन्यवाद - अपडेट किया गया। – calumbrodie

0

मुझे लगता है कि आपको चालू करना चाहिए और अपना MySQL क्वेरी लॉग देखना चाहिए। डेबियन लिनक्स पर आप फ़ाइल /etc/mysql/my.cnf संपादित करें और इसे संपादित करना होगा कि यह

[mysqld] 
# ... 

# * Logging and Replication 
# 
# Both location gets rotated by the cronjob. 
# Be aware that this log type is a performance killer. 
# As of 5.1 you can enable the log at runtime! 
general_log_file  = /var/log/mysql/mysql.log 
general_log    = 1 
log_error    = /var/log/mysql/error.log 

तो के समान एक नज़र कुछ आप इसे द्वारा tail -F /var/log/mysql/mysql.log

0

कोशिश समयोचित "कैश जोड़ने के लिए देखने के लिए सक्षम हो जाएगा होना चाहिए: झूठे "अपने पर्यावरण के लिए अपनी विन्यास फाइल में twig करने के लिए। मुझे हल करें।

1

इन फ़ोल्डरों को हटाने का प्रयास: - कैश - लॉग

और अपना पृष्ठ पुनः लोड।

+0

यह प्रश्न का उत्तर नहीं प्रदान करता है। किसी लेखक से स्पष्टीकरण की आलोचना करने या अनुरोध करने के लिए, अपनी पोस्ट के नीचे एक टिप्पणी छोड़ दें - आप हमेशा अपनी पोस्ट पर टिप्पणी कर सकते हैं, और एक बार आपके पास पर्याप्त [प्रतिष्ठा] (http://stackoverflow.com/help/whats-reputation) हो [किसी भी पोस्ट पर टिप्पणी करने में सक्षम] [http://stackoverflow.com/help/privileges/comment)। – Rahul

+0

मैं अपनी पोस्ट के नीचे एक टिप्पणी नहीं छोड़ सकता, यही कारण है कि मैंने एक जवाब बनाया। हालांकि, मुझे वह समाधान मिला जो मैं ढूंढ रहा था। समस्या कैश फ़ोल्डर से आ रही थी। एक PHP बिन/कंसोल कैश: वार्मअप ने चाल की। और सवाल का जवाब देने के लिए, मुझे लगता है कि कैश (फ़ोल्डर) को साफ़ करने का प्रयास करते समय कुछ फ़ाइलों को ऐसे class.php, या classes.meta.php को पुन: उत्पन्न नहीं किया जाता है और यह एक आंतरिक सर्वर त्रुटि का कारण बनता है जो वेब प्रोफाइलर को सक्षम नहीं करता है स्वयं या त्रुटियों को दिखाएं। और यह सिम्फनी 2.5 और सोनाटा एडमिन बंडल स्थापित करने के बाद हुआ। आशा करता हूँ की ये काम करेगा। – akdeveloper

+0

मेरे मामले में कैश को साफ़ करने से समस्या हल नहीं हुई। लेकिन कंसोल कमांड निष्पादित करने के बाद इस मुद्दे को आउटपुट करेगा। TWIG में स्मृति स्मृति आकार को समाप्त कर रहा था ... Environment.php: eval() 'd कोड 223 पर कोड जब मैं सोनाटाएडमिनबंडल सूची दृश्य तक पहुंचने का प्रयास कर रहा था। – webDEVILopers