Sto utilizzando H2 DB in modalità memoria per elaborare alcuni dati. La mia applicazione java deve mantenere attiva la JVM mentre si rilascia e ricrea, o troncando o rilasciando tutti gli oggetti in H2 DB in ogni esecuzione. Pertanto ho bisogno di utilizzare l'opzione 'DB_CLOSE_DELAY = -1' nell'URL del DB.H2 DB in memoria Pulire la RAM
Per pulire la memoria dopo un'iterazione, ho provato a utilizzare "DROP ALL OGJECTS", "DROP ALL OGGETTI ELIMINA FILE" e ha troncato ciascuna tabella una alla volta. Tutti questi hanno raggiunto ciò che volevo, non cancellando la memoria che era attualmente occupata da esso. Le dimensioni del mio database variano da circa 300 MB a 2 GB. Pertanto, dopo una singola iterazione, la mia RAM occupa circa 1 GB di spazio occupato e non è stata trovata alcuna soluzione su quale sia la causa di questa o della risoluzione.
Un po 'simile a questo Clear the in memory database after every testcase. Ma senza dbUnit e bisogno di cancellare anche la RAM.
È possibile eseguire questa operazione senza arrestare la JVM.
Grazie.
È possibile eseguire l'istruzione 'shutdown'. Questo chiuderà la connessione e il database. –
Grazie ha funzionato. Questo è quello che stavo cercando. – Akalanka
OK, ho aggiunto il commento come risposta ora. –