Геррит использует неправильное сопоставление

Я пытаюсь аутентифицировать пользователей Gerrit, используя ldap против Active Directory. Я получаю следующую ошибку.

ОШИБКА com.google.gerrit.server.cache.PopulationCache: невозможно найти CN%3DORG+%C3%96resund+ALL%2COU%3DOrganisation%2COU%3DGroups%2COU%3D Прочее% 2C DC% 3Dcompany% 2CDC% 3Dcom в сети "groups_byext".sf.ehcache.CacheException: Не удалось получить объект для записи в кэш с ключом "CN%3DORG+%C3%96resund+ALL%2COU%3DOrganisation%2COU%3DGroups%2COU%3DOther% 2CDC% 3Dcompany% 2CDC% 3Dcom".

...

Вызывается: java.sql.SQLException: недопустимое сочетание параметров сортировки (latin1_swedish_ci,IMPLICIT) и (utf8_general_ci,COERCIBLE) для операции '='

Я не очень опытен в MySQL или Active Directory, поэтому я не очень разбираюсь в этом вопросе.

Есть предложения, в чем может быть проблема?

1 ответ

Это ошибка MySQL, а не ошибка LDAP. Похоже, вы получаете список групп, но он не может проверить свою таблицу разрешений локальной группы, потому что соединение с базой данных использует неправильную кодировку.

Этот поток предлагает решение в строке подключения JDBC в gerrit.conf:

url = jdbc:mysql://foo/reviewdb?user=x&password=y&useUnicode=false&characterEncoding=latin1 
Другие вопросы по тегам