6

È possibile utilizzare la "cache condivisa" di sqlite3 tramite activerecord? (vedi: http://www.sqlite.org/inmemorydb.html)activerecord cache condivisa in memoria

Io uso activerecord standalone (senza binari) in una JRuby Swing App, con alcuni thread di lavoro coinvolti. Problema: SOLO il thread principale può accedere ai dati, poiché ogni thread ricostruisce un nuovo DB in memoria. Così ottengo solo

[SQLITE_ERROR] Errore di SQL o database mancante (tale tabella: insert_model_name)

da tutto il mondo, tranne che il thread principale. C'è una soluzione alternativa o mi sono perso qualcosa? (utilizzo le ultime versioni di jruby, java e le gemme)

Grazie in anticipo!

Database-Config finora: https://gist.github.com/4482423

UPDATE: sceneggiatura minimale per illustrare il problema. Funziona bene sotto Linux, ma non in Windows 7: https://gist.github.com/4483617

+0

Puoi pubblicare il tuo file database.yml? – moritz

+0

aggiornato la mia domanda :) – Hisako

risposta

3

Il seguente gettone funziona bene:
"file::memory:?cache=shared"
Inoltre, controllare la versione di SQLite, dovrebbe essere di almeno 3.7.13 per supportare questa funzionalità.

+0

Riferimento: https://www.sqlite.org/sharedcache.html – Kelvin

Problemi correlati