(2024-06-18 10:02:31 отредактировано Сергей Киселев)

Непонятное поведение GrdFeatureCheck

Добрый день!

В процессе разработки натолкнулись на странное поведение функции GrdFeatureCheck при вызове из .NET под Windows.

Суть в том, что при принудительном завершении сессии в GCC (аналогично перезагрузка GCC, но там время больше проходит), первый вызов возвращает ошибку 1032 "Нет доступа к среде выполнения".
Но при вторм вызове, без пересоздания объекта GrdlicApi снова берется лицензия, без Login и любых других действий с нашей стороны.

Беда в том, Check у нас вызывается при интеграции неоднократно в разных потоках и невозможно предсказать сколько лицензий будет взято.
Есть большая вероятность, что будут запрошены лишнии лицензии.

Прошу разъяснить подробнее с чем это связанно и дать рекомендации, возможно мы используем неправильный паттерн.

Re: Непонятное поведение GrdFeatureCheck

Добрый день,

Уточните, пожалуйста, какая у Вас версия Guardant SLK и Guardant Control Center? Это облачный Guardant Station или отчуждаемый? Как именно завершается сессия? Наблюдаются ли какие-то ошибки в системных журналах Windows?
Также уточните, речь идет о локальных лицензиях или сетевых? Ключи программные или аппаратные?

(2024-06-19 13:48:11 отредактировано Сергей Киселев)

Re: Непонятное поведение GrdFeatureCheck

Добрый день!

GCC - 3.0.24.0
SLK  - 3.29

Guardant Station отчуждаемый
В системных журналах Windows ошибок нет
Лицензии сетевые, ключи обоих типов

Ошибку обнаружили в отделе тестирования. Сессию завершали принудительно вручную в оснастке GCC.

Re: Непонятное поведение GrdFeatureCheck

Добрый день,

Уточнили у разработчиков по поводу данной ошибки. Вот их комментарии:
Для стабильности работы клиентских приложений при потере соединения, разрывах, извлечении и обратном подсоединении ключа, API пытается выполнить повторный теневой логин. Первый вызов функций типа Check, Encrypt вернет ошибку,  но если ключ вернулся и соединение восстановлено, то будет продолжена штатная работа.
Ручное удаление сессий введено для соединений, которые висят в силу недоступности клиента (например падение) и не предназначено для принудительного отключения удаленных клиентов.
Также, на данный момент, в версии SLK 3.29 действительно наблюдаются проблемы с лишними сессиями при работе функции GrdFeatureCheck, которые поправлены в сборке 3.30. Как обходной путь, можно в GCC выставить таймаут в 1 минуту, чтобы предотвратить появление лишних сессий.

Re: Непонятное поведение GrdFeatureCheck

Подскажите, а где можно скачать версию 3.30
https://www.guardant.ru/support/developers/slk/ есть только 3.29

Re: Непонятное поведение GrdFeatureCheck

Добрый день,

Версия 3.30 официально еще не вышла, точной даты релиза пока нет