2015-07-19 15 views
13

Esiste un modo per evitare di ricreare il pool di connessioni in un database in memoria durante il ricaricamento dopo un cambio di codice?Riproduci 2.4 - Come evitare di ricreare la connessione del pool di database dopo un cambio di codice?

[info] - application - Shutting down connection pool. 
[info] - application - Creating Pool for datasource 'default' 
[info] - play.api.db.DefaultDBApi - Database [default] connected at jdbc:h2:mem:play 

Anche se si modifica qualcosa che non è legato al database, gioco si spegne il pool di connessioni e la ricrea subito dopo. Ci deve essere una buona ragione e, in caso contrario, una soluzione alternativa.

Qualsiasi aiuto apprezzato.

+0

Credo che si utilizza [modalità continua] (http://www.scala-sbt.org/0.13/docs/Triggered-Execution .html). L'unico modo è quello di disattivare questa modalità, perché ogni volta che il file sorgente cambia l'applicazione viene ricostruita e riavviata. – Zernike

+0

@Zernike Credo che OP stia parlando della ricompilazione continua di Play, non so se sia basata su SBT o completamente diversa. – Ryan

+0

È basato su un'attività personalizzata di sbt. – Zernike

risposta

0

È normale comportamento della modalità di sviluppo. Posso solo aggiungere che il gioco ricarica il codice dopo la richiesta (se il codice è stato modificato). Tutte le applicazioni viene ricaricato, così tira di connessione sono ricreato come bene (e l'istanza di database in memoria se è stato creato dal gioco):

Running the server in development mode

Se si vuole persistere i dati nel database in-memory allora avete bisogno di eseguire separatamente o utilizzarlo con capacità persistente:

How to use a persistent H2 database