2014-10-27 16 views
5

Ho rimosso $hearAboutIndustry dall'entità e ora ricevo l'errore sotto solo nel server di produzione, non sul server locale e di staging! Qualche idea del perché o della soluzione?Symfony: La proprietà non esiste - Errore interno server 500 - ReflectionException

Property Tete\AdminBundle\Entity\Customer::$hearAboutIndustry does not exist 
500 Internal Server Error - ReflectionException 

config_prod.yml

doctrine: 
    orm: 
     metadata_cache_driver: apc 
     result_cache_driver: apc 
     query_cache_driver: apc 

Quello che ho fare per risolverlo finora:

  • getter Rimosso e setter dall'entità.
  • eliminata intera cache e registra cartelle e ricreato di nuovo, inc 777.
  • Solo nel caso in corsa cache:clear --env=prod
  • Cercato hearAboutIndustry in tutte le directory/file del progetto. Nessun riferimento.
  • Corsa doctrine:schema:update. DB è aggiornato.
  • Corsa doctrine:generate:entities. Entità è aggiornata.
  • app/console dottrina: cache: clear-metadati
  • app/console dottrina: cache: clear-query
  • app/console dottrina: cache: clear-risultato
+0

Usi APC caching o qualsiasi altro caching con Dottrina? Un modo per dirlo è se doctrine.orm.metadata_cache_driver e doctrine.orm.query_cache_driver sono impostati in config.yml –

+0

Sì, sì. Penso che sia farlo con spirito. Sono su Ubuntu AWS. – BentCoder

+0

Ho applicato [questa soluzione] (http://stackoverflow.com/questions/11826444/symfony2-doctrine-clear-cache) ma senza fortuna. – BentCoder

risposta

5

Come Adam suggerito sopra commento, è meglio riavviare Apache se tutte le soluzioni di cui sopra sono state provate e ottenendo alcun successo. La soluzione è:

sudo apachectl graceful

+0

Cool, sono contento che abbia funzionato per te;) Ho avuto un problema simile con l'utilizzo di APC per il caricamento di classe, mi ci sono voluti anni per capirlo –

+2

Ho perso circa 6 ore per risolvere questo problema :) Ora posso dormire . Grazie ancora. – BentCoder

+1

Ho avuto il problema in cui ho rimosso un campo da un'entità e continuava a generare un errore. Ho provato a svuotare manualmente la cache e tutto il resto. Il riavvio di Apache ha risolto il problema. Grazie per quello. – Skylord123

0

"Vecchio, ma succede ancora" Se nessuna delle soluzioni di cui sopra ha lavorato tenta di eliminare il file di cache Entity manualmente: (ad esempio il percorso del file di cache cliente entità dovrebbe essere questo uno)

projectdirectory \ nome progetto \ var \ cache {dev o prod} \ jms_serializer \ Tete-AdminBundle-Entity-Customer.cache.php

4
  • php app/console dottrina: cache: clear-query --env = prod

voci di cache annullamento di tutta la query

  • php app/console dottrina: la cache: clear-result --env = prod

Cancellazione di TUTTE le voci della cache dei risultati

  • php app/console dottrina: cache: clear-metadati --env = prod

voci di cache Clearing tutti i metadati

  • php app/cache di console: chiaro - -env = prod

Cancellare la cache per l'ambiente prod con il debug falso

E non dimenticate di mettere --env = prod ai comandi

0

ho avuto problema simile, ho solo usato dottrina: la mappatura: importazione e che è stato.

Acclamazioni

0

Abbiamo avuto lo stesso problema e nel nostro caso (Nginx), il riavvio di Nginx non ha aiutato.

Ma riavvio del memcache era la soluzione giusta:

sudo service memcached restart 
Problemi correlati