Pierwotne zachowanie powodujące wysokie użycie procesora nie sprowadzało się do tego, że „zwykłe indeksowanie może trwać bez końca”. Po przesłaniu dużej liczby plików proces searchd przez wiele godzin utrzymywał użycie procesora na poziomie 100% — niektórzy użytkownicy zgłaszali, że trwało to nawet kilka dni — podnosząc temperaturę systemu i zmuszając ich do wyboru między wyłączeniem wyszukiwania a pozostawieniem procesora pod dużym obciążeniem.
IceWhale podało później precyzyjne wyjaśnienie: sporadyczny szczególny przypadek w logice stronicowania mógł powodować długotrwały problem z użyciem procesora. Naprawiono go i zoptymalizowano w wersji ZimaOS 1.3.2-beta2. Ta sama aktualizacja dodała usypianie silnika wyszukiwania po okresie bezczynności, zapewniła aktualność indeksu nazw plików w czasie rzeczywistym i przeniosła indeksowanie zawartości plików na północ, ograniczając zużycie zasobów. Dokumentacja aktualnej wyszukiwarki ZimaOS została później rozszerzona o jawne ograniczanie obciążenia oraz znacznie mniejsze zużycie pamięci i mniej usług w stanie bezczynności.
searchd nadal intensywnie używał procesora, mimo że transfer już się zakończył.Wyszukiwanie wymaga indeksu
Zima-Giorgio początkowo wyjaśnił, że funkcja wyszukiwania plików musi je indeksować. To było prawdą, ale nie tłumaczyło, dlaczego użycie procesora utrzymywało się na maksymalnym poziomie przez wyjątkowo długi czas.
IceWhale później wskazało szczególny przypadek w logice stronicowania
11 lutego 2025 r. orca-zhang napisał, że długotrwały problem z użyciem procesora mógł sporadycznie wynikać z błędu logiki stronicowania oraz że problem naprawiono i zoptymalizowano w wersji 1.3.2-beta2.
To najmocniejszy wniosek ze źródeł i powinien zastąpić wcześniejsze nieprecyzyjne wyjaśnienie „trwa indeksowanie”.
W wersji 1.3.2 dodano usypianie nieaktywnej usługi wyszukiwania
IceWhale poinformowało, że gdy wyszukiwanie nie było potrzebne, proces searchd był zwalniany po około trzech minutach bezczynności, pozostawiając jedynie lekką usługę zimaos-search, zużywającą mniej niż 100 MB pamięci i około 0–1% mocy procesora.
Indeksowanie zawartości przeniesiono na północ
W tej samej odpowiedzi rozdzielono dwa zadania:
- indeks nazw plików — utrzymywany w możliwie aktualnym stanie i aktualizowany w czasie rzeczywistym;
- indeks zawartości plików — aktualizowany dopiero o północy i z niskim zużyciem zasobów.
To rozróżnienie nadal występuje w obecnej architekturze wyszukiwania.
Aktualna wyszukiwarka ZimaOS wprowadza jawne limity zasobów
Aktualna dokumentacja IceWhale opisuje:
- monitorowanie zmian plików w czasie rzeczywistym i indeksowanie nazw plików;
- indeksowanie zawartości o północy;
- maksymalnie 100 000 dokumentów na typ przetwarzania/sesję;
- maksymalnie pięć minut przetwarzania na typ;
- ochrona przez barierę zapisu przed skokami użycia procesora;
- zwalnianie zasobów usługi i pamięci po okresie bezczynności.
Skorzystaj z aktualnej architektury wyszukiwania ZimaOS.
Wyszukiwanie można wyłączyć od wersji ZimaOS 1.3.2
orca-zhang powiedział, że trwałość ustawień dodana w wersji 1.3.2 do /etc pozwala użytkownikom, którzy nie potrzebują wyszukiwania, wykonać polecenie:
systemctl disable zimaos-search
Zatrzymanie lub wyłączenie wyszukiwarki spowoduje, że wyszukiwanie w aplikacji Pliki zgłosi niedostępność usługi. Przed wyłączeniem kluczowej usługi wyłącznie z powodu historycznego błędu użytkownicy obecnej wersji powinni najpierw sprawdzić aktualne działanie wyszukiwarki.
Zrzut ekranu „/dev/root — zapełnienie 100%” przedstawiał inny problem
Inny uczestnik zauważył, że /dev/root wykazywał 100% użycia i próbował go powiększyć. IceWhale wyjaśniło, że ta reprezentacja głównego systemu plików SquashFS tylko do odczytu jest celowa i zapewnia integralność systemu. Nie należy traktować jej jak zwykłej, zapisywalnej partycji głównej wymagającej wolnego miejsca.
Nie zmieniaj rozmiaru ani nie usuwaj partycji systemowych ZimaOS, ponieważ obraz SquashFS zgłasza pełne zapełnienie.
Wysokie użycie procesora przez wyszukiwarkę w obecnej wersji ZimaOS
- potwierdź, że system korzysta z najnowszej stabilnej wersji ZimaOS;
- sprawdź, czy niedawno zaimportowano dużą liczbę plików;
- poczekaj, aż zakończy się opisane okno indeksowania;
- sprawdź, czy użycie procesora spada po okresie bezczynności usługi;
- Jeśli użycie procesora pozostaje wysokie znacznie dłużej niż oczekiwano, zbierz aktualne logi
zimaos-search.
FAQ: wysokie użycie procesora przez searchd
Czy 100% użycia procesora przez kilka dni uznawano za normalne?
Nie. IceWhale później zidentyfikowało skrajny przypadek związany z logiką stronicowania i naprawiło go w wersji 1.3.2-beta2.
Kiedy obecny ZimaOS indeksuje zawartość?
Aktualna dokumentacja podaje, że indeksowanie zawartości odbywa się w godzinach małego obciążenia, o północy, natomiast zmiany nazw plików są indeksowane w czasie rzeczywistym.
Czy 100% użycia /dev/root oznacza, że na dysku systemowym nie ma wolnego miejsca?
Nie dotyczy bieżącej sprawy. IceWhale wyjaśniło, że reprezentacja głównego systemu plików SquashFS jest celowo tylko do odczytu i powinna być wyświetlana jako pełna.



