Ошибка базы данных пользователя профиля в WebPart
-
03-07-2019 - |
Вопрос
Редактировать: Изменено название и добавлено обновление.
Обновить: Мы больше не считаем, что это 64-битная проблема против 32-битной.Мы обнаружили, что единственными людьми, которые видели это, были люди, для которых в политике фермы был установлен "полный контроль". (Не действующие как системная учетная запись) Как только мы протестировали обычных пользователей, мы обнаружили, что ни у кого из них не было этой проблемы.Удалив "проблемных" пользователей из политики фермы и добавив их обратно, исправили всех, кроме одного пользователя (коллега-разработчик :)).
Мы начали нашу Ферму с 2 32-битных WFE и 32-битного сервера приложений.Мы решили добавить 64-битные интерфейсы в нашу ферму, и по большей части почти все работало нормально.Исключением является пользовательская веб-часть, которая обращается к базе данных профиля пользователя.Отлично работает на 32-битном интерфейсе, но мы получаем следующую ошибку на 64-битном интерфейсе:
Пользователь Не Найден:Не удалось загрузить данные профиля из базы данных.
Описание:Необработанное исключение произошло во время выполнения текущего веб-запроса.Пожалуйста, ознакомьтесь с трассировкой стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.
Сведения об исключении:Майкрософт.Офис.Сервер.Пользовательские профили.Исключение UserNotFoundException:Пользователь Не Найден:Не удалось загрузить профиль данные из базы данных.
Ошибка источника:
Было сгенерировано необработанное исключение во время выполнения текущего веб-запроса.Информация, касающаяся происхождения и местоположения исключения может быть идентифицирована с помощью исключения трассировка стека, приведенная ниже.
Трассировка стека:
[Исключение UserNotFoundException:Пользователь не найден Найден:Не удалось загрузить данные профиля из базы данных.]
Майкрософт.Офис.Сервер.Пользовательские профили.Пользовательский профиль.Загрузить (SqlDataReader myReader, логическое значение bFirstRead, Логическое значение bWssId) +930
Майкрософт.Офис.Сервер.Пользовательские профили.Пользовательский профиль.Загрузить (SqlDataReader myReader) +64
Майкрософт.Офис.Сервер.Пользовательские профили.Пользовательский профиль.Получить пользователя (строку strAcct, Guid gAcct, Byte[] bSid, Обнуляемый`1 идентификатор записи, логическое значение doNotResolveToMasterAccount) +1507
Майкрософт.Офис.Сервер.Пользовательские профили.Пользовательский профиль..ctor(UserProfileManager objManager, String strAcct, логическое значение doNotResolveToMasterAccount, логическое значение Принудительно использовать себя) +584
Майкрософт.Офис.Сервер.Пользовательские профили.Пользовательский профиль..ctor(UserProfileManager objManager, String strAcct) +80
Майкрософт.Офис.Сервер.Пользовательские профили.UserProfileManager.Получить пользовательский профиль (строка strAccountName) +205
Поскольку WFE находится на одной ферме, он должен просматривать одну и ту же базу данных.
Дайте мне знать, если потребуется еще какая-либо информация.
Любые идеи будут оценены по достоинству!
Спасибо.
Решение
"Слухи на улице" заключается в том, что вы не можете смешивать 32-битные и 64-битные серверы на одной ферме (за исключением сервера базы данных).
http://technet.microsoft.com/en-us/library/cc261700.aspx говорит:
Вы можете развернуть ферму Office SharePoint Server 2007 на сочетании 32-разрядных и 64-разрядных серверов при условии поддержания однородности архитектуры на каждом уровне топологии.Например, не следует смешивать 32-разрядные и 64-разрядные серверы веб-интерфейса (WFE), но вы можете использовать 64-разрядные серверы баз данных в ферме с 32-разрядными серверами WFE и серверами приложений.
Итак, вы МОЖЕТЕ смешивать 64-битные и 32-битные, но, по-видимому, не 32-битные и 64-битные WFES.Я не говорю, что это правда, я говорю, что Technet говорит, что это правда.Technet часто более консервативен, так что иди спроси своего парня из MVP.
Другие советы
Питер, большое спасибо за дополнительную информацию.Я спрошу об этом у MVP.
Этот веб-раздел - единственное, что создает нам проблему в 64-битном WFE.Все остальное работает нормально.У нас есть другой пользовательский код (веб-части, приемники событий, типы контента...и так далее), у которых нет проблем с запуском в 64-битном режиме.
Спасибо за ответ;Я опубликую все, что скажет по этому поводу MVP.
Редактировать:Ответ от MVP
Они предполагают, что вы балансируете нагрузку 32 и 64 в одном и том же NLB, и это не будет хорошо сбалансировано.Это абсолютно поддерживается архитектурно, однако.Это должно сработать.