sql >> Database >  >> RDS >> PostgreSQL

Hoe een langzame impliciete query op de pg_attribute-tabel in Rails te repareren

In productie zal elk Rails-proces die query eenmaal uitvoeren voor elke tafel/model die het tegenkomt. Dat is één keer per rails s , niet op verzoek:als je het herhaaldelijk ziet, zou ik onderzoeken of je processen om de een of andere reden vaak opnieuw worden opgestart.

Om deze runtime-query's volledig te elimineren, kunt u een schema-cachebestand genereren op uw server:

RAILS_ENV=production rails db:schema:cache:dump

(Rails 4:RAILS_ENV=production bin/rake db:schema:cache:dump )

Dat commando voert de query's onmiddellijk uit en schrijft vervolgens hun resultaten naar een cachebestand, dat toekomstige Rails-processen direct zullen laden in plaats van de database te inspecteren. Uiteraard moet u de cache dan opnieuw genereren na eventuele toekomstige wijzigingen in het databaseschema.



  1. Hoe Postgres bytea-kolom als bestand te downloaden

  2. De conversie van een varchar-gegevenstype naar een datetime-gegevenstype resulteerde in een waardefout buiten het bereik

  3. mysql selecteer datums in het bereik van 30 dagen

  4. WordPress MediaWiki-integratie