2013-06-13 6 views
5

Sto provando a inserire dati da una matrice in una vista per formare un grafico. La matrice è memorizzata in un campo di database ed è molto grande. L'array contiene circa 70k + array più piccoli che assomigliano a questo, [1234567890, 5]. Ogni volta che provo a rendere i dati in una vista, viene troncato. Non carica mai l'intero array in modo che la pagina non venga visualizzata. Non vengono forniti errori Qualche idea su cosa potrebbe causare questo?La grande matrice nel database non verrà caricata nella vista rotaie

Sono in esecuzione di Ruby 2.0.0-P195, Rails 3.2.13, Postgres 9.2

+3

Potrebbe essere il momento di rivedere lo schema. Una matrice di array di 70k + interi puzza di design improprio. –

+0

Che cosa hai tagliato? non carica il valore da db? – usha

+0

Carica il valore dal db solo non tutto. Si interrompe per circa un decimo. – user2272408

risposta

0

Risolto. Non era un limite di dati o un problema di Postgres. E 'stato un problema di autorizzazioni con queste cartelle di configurazione nginx:

client_body_temp

fastcgi_temp

proxy_temp

ho creato quelle cartelle in una nuova posizione e nginx configurato per puntare a loro. Quindi ha dato al nostro utente nginx l'accesso a tali cartelle e tutto ora funziona correttamente.

1

E 'un problema piuttosto strano. Potrebbe essere un po 'temporaneo durante il recupero e solo il ritorno di una parte dei dati, a seconda di dove è scaduto.

Quello che mi piacerebbe verificare:

  • Come è l'utilizzo della memoria facendo? Il risultato migliora quando aggiungo RAM?
  • Viene sempre interrotto nello stesso punto?
  • Ricevi dati in batch (find_each)? Prova a giocare con la dimensione del batch.
  • La richiesta può essere migliorata?
  • Se i registri binari vanno bene, prova a guardare nginx (o come si usa)

Se tutte le opzioni non riescono prova a caricare questo modo asincrono per lotto facendo più chiamate Ajax.

Problemi correlati