>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Firefox http://forum.mozilla-russia.org/viewforum.php?id=4 >Очередной баг в mozila. Непонятный внутренний виртуальный прокси. http://forum.mozilla-russia.org/viewtopic.php?id=77571 |
Bro > 12-04-2022 16:16:19 |
Собственно тему создаю - может кто из разработчиков мозилы увидит? А ещё для того что бы помочь кому то решить подобный баг. Суть такова - если в запросе возвращается: Это значит что браузер должен закешировать ответ. но перед его использованием должен проверить состояние кеша- не протух ли он. В работе это выглядит так. Посылаем ответ браузеру. Устанавливаем etag. Браузер получает ответ, кеширует его. Пользователь обновляет страницу. Браузер делает запрос на сервер с ранее принятым etag. Сервер проверяет etfg и если данные не изменились возвращает 304. Если изменились возвращает новые данные (код 200) и новый etag. Браузер получив новый etag сохраняет новые данные и новый etag. Собственно я описал классический пример работы кеша. А теперь о баге. В процессе экспериментов я увидел что mozila работает не совсем так как ожидалось. Всё работает по сценарию, пока не придёт изменённый etag. И mozila не запоминает его! Она не запоминает именно в случае прихода низменного. Если пробовать запрашивать данные с mozila - etag будет null. И самое интересное если запросить несколько раз - то mozila всё же сохранит его. Число запросов как показали эксперименты может быть от 3 до 20 (может и более). Т.е. непонятный какой то рандом. Я сильно не копал, вроде как баг может лежать в области установленных туннелей с сервером (мозила на одну страницу делает вроде 6 туннелей). Но мне посчастливилось достаточно быстро побороть баг (по крайней мере он вроде уже не появляется), можно сказать тыкнув пальцем в небо. Повезло. Как редко это бывает. Ну а теперь о загадочном прокси. Я изменил хедер на такой: Как можно видеть добавил параметр private Документация нам говорит следующее:
Т.е. запрещает кешировать данные в промежуточных прокси. Т.к. я экспериментирую в пределах одной машины - единственно где может быть этот "прокси" в самой мозиле. P.S. И да. На движках хромиума всё работает корректно. |
zzzephire > 12-04-2022 21:01:36 |
Было бы куда лучше если бы вы зарегистрировали этот баг на Bugzilla. |
Bro > 12-04-2022 22:14:05 |
zzzephire пишет
На моей машине и с браузером версии 100.0b4 проблема повторяется 100% Так что такой баг будет легко найти. Но я честно и не надеюсь, что этому багу назначат хоть какую то привилегию. Он особо и не критичен. А так, есть у меня любимый баг в мозиле (баг в TLS сессии) который появляются рандомно. Может и раз в пол года вылезти. А может и 2 раза на день. Я запарился его искать. Даже скачал исходники мозилы, наставил 100500 трассировки везде где выводится сообщение бага (единственно что мне известно о нём). Скомпилировал и начал ждать появления бага. Ага. До сих пор жду. Тем более та версия что лежит в общем доступе в нете и которая у меня получилась после компиляции отличается от официальной скаченной. И может получится что там бага и нет. |