Wpis z mikrobloga

No trzymajcie mnie, bo nie wytrzymię.
I naprawdę już skończyły mi się pomysły na ten n8n.

Prosty do bólu workflow - weź plik xlsx i zaimportuj jego zawartość do tabeli SQL.
Biorę plik xlsx 54MB - działa
Biorę plik CSV 150MB - działa
Próbuję z plikiem xlsx > 58MB - sru. Nie działa. Użycie CPU utrzymuje się godzinami na poziomie 100% i nic się nie dzieje.

Żeby było jeszcze zabawniej - przy dużych plikach xlsx NET I/O i BLOCK I/O ani drgną. Zupełnie jakby nawet nie próbował ich pobrać.

Kombinowałem z ustawieniami, podmieniłem bazę danych n8n ze standardowego sqlite na postgres. Cholera, w tym czasie jak próbuję zmusić to do działania to wymieniłem w moim dziadlabie wszystkie podzespoły poza dyskami i dorzuciłem kolejne 32G ramu.
Nadal nic.

Mam pewne podejrzenie, że jednak coś z pamięcią nie bangla, bo jej użycie rośnie sobie do 3.186GiB i cały czas na tym poziomie się utrzymuje. Tylko dlaczego, skoro dałem kontenerowi nieograniczony dostęp do całej dostępnej pamięci?

#docker #n8n #selfhosted #devops
Dziadzlabem - No trzymajcie mnie, bo nie wytrzymię.
I naprawdę już skończyły mi się p...

źródło: image

Pobierz
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Ja na twoim miejscu przekonwertowałbym to na csv i puścił SQLem do DB prosto.

COPY moja_tabela
FROM 'mojplik.csv'
DELIMITER ',' CSV HEADER;
  • Odpowiedz
@PiersiowkaPelnaZiol: Ano mój.
CPU jeden rdzeń - n8n z tego, co zrozumiałem nie obsługuje wielu rdzeni.
Co do uszkodzenia pliku - też nie tędy droga. Oryginalny plik ma coś koło 100MB - na jego podstawie tworzyłem mniejsze, aby sprawdzić, gdzie jest granica. Sprawdzałem też z innymi plikami - to samo.
CSVki na których robiłem testy też były wygenerowane z tego samego pliku XLSX.
Raczej niewydolność sprzętu mogę wyeliminować - 54MB xlsx przerobiony zostaje w
  • Odpowiedz
@updater: A to też nie jest takie proste, ponieważ to nie ja jestem autorem tych tabel.
Założenie jest takie, że jak w końcu uda mi się ogarnąć ten przeklęty upload, to jeszcze chciałbym opakować to w podstawową walidację struktury pliku (czytaj - nagłówki, liczba, kolejność kolumn).
  • Odpowiedz
@Dziad_z_labem: cpu 100% to jakby jakieś procesy próbowały wystartować i coś go blokuje od strony sieci (może dnsy)
1

The CPU usage is definitely correlated with the Network traffic and I think “Google Drive trigger” node was causing it.


It happened again and as I did before, I turned off all the active workflows, waited about 15 minutes until came back to regular levels and started turning them back on one by one
  • Odpowiedz
@Dziad_z_labem: loguj sobie wiersz po wierszu. Zobacz na ktorym wierszu sie wywala. Ręcznie sobie zedytuj i zobacz czy pójdzie. Może jakiś ukryty symbol lub jakieś dziwne kodowanie danego symbolu jest.
  • Odpowiedz