Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

File upload 100MB limit problem #16

Open
ilkermanap opened this issue Jul 12, 2021 · 0 comments
Open

File upload 100MB limit problem #16

ilkermanap opened this issue Jul 12, 2021 · 0 comments

Comments

@ilkermanap
Copy link
Collaborator

Buyuk boyutlu binary ureten paketlerin repoya gonderimi sirasinda problemler yasaniyor. Sorunun kaynagi, cloudflare 100 MB dosya aktarim limiti.

Bu durumu duzeltebilmek icin, hem gonullu uygulamasinda, hem de ciftlik uygulamasinda degisiklik gerekiyor.

Buyuk boyutlu dosyalarin gonderimi icin ayri bir url tanimlayacagiz. Bu url uzerinden, buyuk boyutlu dosyalari parca parca gonderecegiz. Parcalar tamamlandiginda ise normal akisa gore islem devam edecek.

upload sirasinda dosya ile birlikte su degiskenler de gonderilecek:

  1. Dosya parca adi ( a.pisi.part.3)
  2. toplam parca sayisi (10)
  3. gonderilen parca no ( 3 )
  4. Gonderilen parca icin sha256 hash
  5. Tam boyutlu orijinal dosya icin hash

Dosya parcasi geldikten sonra islemler:

  1. ciftlik tarafinda bu dosya alinip gecici bir dizine kaydedilecek.
  2. sha256 ile hash cikarilip, gonullu tarafindan gonderilen hash ile karsilastirilacak.
  3. hash yanlis ise, hata mesaji gonulluye gonderilecek ve fonksiyondan cikilacak.
  4. hash dogru ise gecici dizinde bulunan dosyalar kontrol edilip, gerekli butun parcalarin gelip gelmedigi saptanacak.
  5. butun parcalar varmis ise, sirayla birlestirilip orijinal pisi dosyasi olusturulacak.
  6. Olusturulan dosyanin sha256 hash degeri cikarilacak.
  7. Gonullu tarafindan gonderilen tam boyutlu dosya hash degeri ile karsilastirilacak
  8. hash tutuyorsa normal paket olarak isleme devam edilecek.
  9. hash tutmuyorsa, gonulluye tam dosya hash degerinin tutmadigi iletilecek. Bu durumda gonderim isleminin yeniden baslatilmasi gerek.

Bu kisim gonullu degisikligi yapilmadan yazilip test edilebilir. Gonullu icin de buradakine benzer bir is istegi olusturup, onun icinde neler yapilmasi gerektigini yazacagim.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant