Z dnia życia kuca, odcinek 3
Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.
Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:
with open(filename, 'r+') as f:
data = f.readlines()
swap_line(data)
f.truncate(0)
f.writelines(data)
Otóż kolega wklepał f.truncate(0)
i hehe pora na CSa :DDD truncate
ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:
Wgl fajnie, że to śmiga na produkcji od pół roku xd
Z dnia życia kuca, odcinek 3
Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.
Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:
with open(filename, 'r+') as f:
data = f.readlines()
swap_line(data)
f.truncate(0)
f.writelines(data)
Otóż kolega wklepał f.truncate(0)
i hehe pora na CSa :DDD truncate
ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:
Wgl fajnie, że to śmiga na produkcji od pół roku xd
Z dnia życia kuca, odcinek 3
Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.
Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:
with open(filename, 'r+') as f:
data = f.readlines()
swap_line(data)
f.truncate(0)
f.writelines(data)
Otóż kolega wklepał f.truncate(0)
i hehe pora na CSa :DDD truncate
ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:
Wgl fajnie, że to śmiga na produkcji od pół roku xd
@sens: Ale jaką logikę ma ten wpis? Wpadka programisty z lekką nutą romantyzmu. Nie ma żadnego logicznego wytłumaczenia dlaczego on miałby to robić. To tak jak do mleka dodasz budyniu z tytki i masz budyń, nie zrobisz go z samego mleka, musisz mieć proszek.
Z dnia życia kuca, odcinek 3
Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.
Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:
with open(filename, 'r+') as f:
data = f.readlines()
swap_line(data)
f.truncate(0)
f.writelines(data)
Otóż kolega wklepał f.truncate(0)
i hehe pora na CSa :DDD truncate
ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:
Wgl fajnie, że to śmiga na produkcji od pół roku xd
@sens: a z panem nie będę dyskutował pan ocenił odcinek 17 na 14/4 co dobitnie świadczy o pańskim guście wpisowym, żegnam trolla
Z dnia życia kuca, odcinek 3
Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.
Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:
with open(filename, 'r+') as f:
data = f.readlines()
swap_line(data)
f.truncate(0)
f.writelines(data)
Otóż kolega wklepał f.truncate(0)
i hehe pora na CSa :DDD truncate
ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:
Wgl fajnie, że to śmiga na produkcji od pół roku xd
@sens: 2 odcinek lepszy, aktorzy oklapli pewnie popili przed akcją, scenariusz się nie klei, czemu cytując
"kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar"
to przeczy logice
dodatkowo praca kamery średnia
daje 10/10
pozdrawiam