Мы только что столкнулись с этой ошибкой в нашем веб-приложении и сразу нашли статью здесь Hashtable insert failed. Load factor too high. - ASP.NET 2.0.Ошибка HashTable. Слишком высокий коэффициент нагрузки. .NET 2.0 SP2
Однако исправление, которое указывает на (http://support.microsoft.com/?id=927579), уже включено в .NET 2.0 SP1 (http://support.microsoft.com/kb/945757).
Перезапуск службы публикации WWW заставил его уйти. Кто-нибудь знает о каких-либо других действительных условиях, когда это может произойти? И как убедиться, что этого не произойдет?
Спасибо.
Редактировать: Я считаю, что это также может быть связано с другой проблемой, которую мы имеем с объектом Dictionary, хранящимся в области приложения. Я изменил код, чтобы использовать Application.Lock()/Unlock() вокруг записи в словарь, поэтому мы увидим, если это произойдет после того, как эти изменения будут выпущены.
Больше никаких указателей, которые могли бы дать по возможным причинам, кроме простой ошибки в каркасе, были бы чрезвычайно вознаграждены похвалой и лестью!
Возможно ли, что у Hashtable, который вы используете, действительно есть фактор нагрузки, который слишком высок? Возможно, вам нужно улучшить свою хэш-функцию, чтобы она была более уникальной, уменьшая вероятность столкновений. –
Может быть ... В этом случае я полагаю, что мой вопрос больше касается того, что именно может вызвать это исключение! Все связанные с ней поисковые запросы Google указывают на ошибки Framework и, как правило, заканчиваются указанным выше исправлением, но большинство статей, которые я нашел, - 2007 и ранее. – Town
Если у вас есть хеш-таблица из нескольких миллионов или более записей, я не могу понять, как это может произойти. В этом случае вы действительно должны использовать DB ... – leppie