2012-11-26 11 views
5

मेरे पास क्लाउडफाउंड्री में डेटाबेस के रूप में क्लाउडफाउंड्री में सफलतापूर्वक चल रहा है। अब मैं postgresql पर स्विच करना चाहता हूँ। जब मैं postgreSQL के खिलाफ स्थानीय रूप से एप्लिकेशन चलाता हूं तो सब कुछ अपेक्षित काम करता है।क्लाउडफाउंड्री पर PostgreSQL PSQLException फेंकता है: FATAL: व्यवस्थापक कमांड के कारण कनेक्शन समाप्त करना

क्लाउडफाउंड्री उदाहरण पर मुझे एक लंबे समय तक चलने वाले विश्लेषण के दौरान अपवाद मिलता है, जिसे मैं पृष्ठभूमि कार्य के रूप में करता हूं (grails execor प्लगइन का उपयोग करके)।

2012-11-26 10:27:38,319 [pool-2-thread-1] ERROR interceptor.TransactionInterceptor - Application exception overridden by rollback exception 
org.springframework.dao.DataAccessResourceFailureException: Hibernate operation: could not execute query; SQL [select this_.id as id8_0_, this_.version as version8_0_, this_.language as language8_0_, this_.url as url8_0_ from sonar_adapter_configuration this_]; FATAL: terminating connection due to administrator command; nested exception is org.postgresql.util.PSQLException: FATAL: terminating connection due to administrator command 
    at myapp.adapters.sonar.SonarAdapterService.loadSonarConfig(SonarAdapterService.groovy:184) 
    at myapp.adapters.sonar.SonarAdapterService.determineArtefactSizes(SonarAdapterService.groovy:145) 
    at myapp.project.AnalysisService.analyzeProject(AnalysisService.groovy:46) 
    at myapp.project.ProjectController$_analyzeProject_closure2.doCall(ProjectController.groovy:69) 
    at grails.plugin.executor.PersistenceContextRunnableWrapper$_run_closure1.doCall(PersistenceContextRunnableWrapper.groovy:34) 
    at grails.plugin.executor.PersistenceContextWrapper.wrap(PersistenceContextWrapper.groovy:35) 
    at grails.plugin.executor.PersistenceContextRunnableWrapper.run(PersistenceContextRunnableWrapper.groovy:34) 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
    at java.lang.Thread.run(Thread.java:662) 
Caused by: org.postgresql.util.PSQLException: FATAL: terminating connection due to administrator command 
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102) 
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835) 
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257) 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500) 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388) 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273) 
    ... 13 more 

कोई भी विचार क्या यह कारण हो सकता है: इस अतुल्यकालिक कार्य

def future = executorService.submit({ 
    return analysisService.analyzeProject(model, project) 
}) 

मैं डेटाबेस से निम्न अपवाद मिल के भीतर?

+0

आप अपनी पोस्ट में हस्ताक्षर शामिल करने की जरूरत नहीं है स्वचालित रूप से जोड़ा गया। अधिक जानकारी के लिए [एफएक्यू] (http://stackoverflow.com/faq#signatures) पढ़ें। – Artemix

उत्तर

3

संभावना है कि आप लंबे समय तक चलने वाले कनेक्शन के लिए कॉन्फ़िगर किए गए टाइमआउट को मार रहे हैं (अगर मुझे गलत नहीं किया जा सकता है, तो यह बदला नहीं जा सकता है, क्योंकि यह सर्वर को बीमार गठित प्रश्नों से बचाने के लिए है जो सभी cpu/io का उपभोग करेगा) अपने उपयोगकर्ता कार्ड है -

क्या आप प्रयास कर सकते हैं छोटे प्रश्नों में अपने लंबी चलने वाली क्वेरी स्लाइस और परिणाम योग (अगर यह एक का चयन)

+0

यह एक सेवा कॉल है जो विभिन्न अन्य सेवाओं को कॉल करती है, इस प्रकार डीबी सत्र खुला (मुझे लगता है) छोड़कर। मैंने हाइबरनेट सत्र को मैन्युअल रूप से फ़्लश करने का प्रयास किया, लेकिन इससे मदद नहीं मिली। छोटे लेनदेन समाधान भी नहीं थे। कोई और विचार? – user1853147

+0

क्या आपके पास एक लिंक है जहां उल्लिखित टाइमआउट दस्तावेज किया गया है? – user1853147

+0

हालांकि मेरे पास कोई संसाधन नहीं है, जहां मैं इस उत्तर को सत्यापित कर सकता हूं, यह उचित लगता है। धन्यवाद! – user1853147

संबंधित मुद्दे