2015-10-30 23 views
8

Kopie zapasowe to 250 MB. Nie sądzę, że to bardzo duże, ale wydaje się, że problem rośnie wraz z rozmiarem.Klejnot ruby ​​zapasowej nie powiódł się podczas przesyłania do S3. zerowanie połączenia po 37 min.

Zaloguj się z magazynu kopii zapasowej poniżej.

Uwaga na przedział czasu; około 37 minut do przesłania Otrzymuję reset połączenia.

[2015/10/30 09:20:40][message] Storage::S3 started transferring '2015.10.30.09.20.01.myapp_postgres.tar' to bucket 'myapp-backups'. 
[2015/10/30 09:57:06][error] ModelError: Backup for Back up PostgreSQL (myapp_postgres) Failed! 
[2015/10/30 09:57:06][error] An Error occured which has caused this Backup to abort before completion. 
[2015/10/30 09:57:06][error] Reason: Excon::Errors::SocketError 
[2015/10/30 09:57:06][error] Connection reset by peer 
+0

Czy to się dzieje po 37 minutach za każdym razem? – rohit89

+0

nie, to się zmienia. to nawet nie zdarza się cały czas, ale sporadycznie częściej – oma

Odpowiedz

4

Próbowałaś opcje błąd przenoszenia, który retransmituje części tego pliku, że nie powiodła się:

store_with S3 do |s3| 
    s3.max_retries = 10 
    s3.retry_waitsec = 30 
end 

Należy także wielkość kawałek mały:

store_with S3 do |s3| 
    s3.chunk_size = 5 # MiB 
end 

może chcesz także użyj Splitter options.

+0

Mam teraz testy z opcjami ponowienia. Ustawiłem również rozmiar 4000, uważam, że był to licznik, a nie metryczny rozmiar. – oma

+0

NoMethodError: niezdefiniowana metoda 'max_retries = 'dla # oma

+0

Którą kopię zapasową posiadasz? –

1

wuold mówię teraz używać ruby-XZ skompresować w mniejszym pliku, aby wysłać go bardziej skompresowany i temprary łatkę, a potem spróbuj zobaczyć

Excon.defaults[:write_timeout] = 500

lub więcej zrobi podstęp