Pobieranie cyfrowe: poprawka trwałości i automatyczna dostawa dla wcześniejszych zamówień

13 września 2026

Dzisiaj naprawiliśmy błąd, który powodował znikanie niektórych plików do pobrania po aktualizacjach serwera — i, co równie ważne, zapewniliśmy, że kupujący automatycznie uzyskują dostęp, gdy tylko sprzedawca (ponownie) prześle plik.

Co się stało

Kilku kupujących widziało komunikat „file not found on disk” (plik nie znaleziony na dysku) po kliknięciu przycisku pobierania w Moje pobrania, mimo że ich zamówienie było opłacone, a wpis pobierania istniał.

Przyczyna techniczna

Nasza usługa gry działa w kontenerze Docker na każdym regionalnym VPS-ie. Przesłane pliki są zapisywane w /var/lib/erleuchtung/shop-downloads — co powinno być trwałym folderem na serwerze hosta, zamontowanym w kontenerze.

Montaż istniał w naszej konfiguracji deweloperskiej, ale brakowało go w pliku compose wdrożeniowym, który nasz agent aktualizacji instaluje na węzłach VPS. W rezultacie przesłane pliki były przechowywane w warstwie systemu plików samego kontenera. Za każdym razem, gdy aktualizacja odtwarzała kontener, ta warstwa była usuwana — pliki znikały, podczas gdy rekordy bazy danych (które znajdują się w PostgreSQL) przetrwały.

Rezultat: prawidłowy wpis pobierania wskazujący na plik, który już nie istniał.

Co naprawiliśmy

  • Trwała pamięć na wszystkich węzłach. Katalog pobierania jest teraz poprawnie zamontowany na pamięci hosta na wszystkich serwerach regionalnych (US, IN, EU2, SG oraz naszym węźle stagingowym MAAS). Przesłane pliki przetrwają aktualizacje i odtwarzanie kontenerów.
  • Automatyczne uzupełnianie przy przesyłaniu. Wcześniej dostęp do pobierania był przyznawany tylko w momencie płatności — i tylko dla plików istniejących w tym czasie. Teraz, gdy sprzedawca prześle plik do produktu, jest on automatycznie przyznawany wszystkim kupującym z opłaconym zamówieniem tego produktu, z natychmiastowym powiadomieniem.
  • Samonaprawiająca się lista pobierań. Otwarcie „Moje pobrania” naprawia teraz brakujące dostępy dla wszystkich opłaconych zamówień — starsze zakupy naprawiają się same.
  • Przyznanie przy wysyłce. Gdy sprzedawca oznaczy zamówienie jako wysłane/dostarczone, załączone pliki są przyznawane natychmiast — towary cyfrowe są należne przy dostawie.

Co muszą zrobić sprzedawcy

Pliki przesłane przed tą poprawką i utracone podczas aktualizacji nie mogą zostać odzyskane — istniały tylko w odrzuconej warstwie kontenera.

Jeśli przesłałeś pliki wcześniej: otwórz swój produkt, usuń nieaktualny wpis pobierania i prześlij plik ponownie. W momencie przesłania wszyscy dotychczasowi kupujący automatycznie odzyskają dostęp — bez ręcznej pracy.

Słowo o przejrzystości

E-maile z powiadomieniem o „wysyłce”, które niektórzy z was otrzymali, wspominały o plikach do pobrania, które nigdy nie zostały faktycznie załączone — ten tekst był notatką wysyłkową sprzedawcy, a nie dostarczeniem pliku. W tej wersji przycisk pobierania w „Moje pobrania” jest jedynym wiarygodnym źródłem: jeśli plik jest tam wymieniony, istnieje na serwerze i można go pobrać.

Dziękujemy za cierpliwość — i specjalne podziękowania dla członków społeczności, którzy szybko zgłosili problem.

— Zespół Erleuchtung