Почему channel.getPeers() не возвращает всех пиров и только некоторые из них?
У меня есть сеть из 12 пиров (6 организаций, в каждой из которых есть 2 пира), но как только я пытаюсь получить все пиров канала в приложении узла js с помощью channel.getpeers(), только он возвращает 2 пира orgs, и мне нужно вручную добавить остальные затем отправляют предложение через всех подписать.
Я проверил все одноранговые узлы в cli и увидел, что все они правильно подключаются к каналу. Есть ли у тебя какие-либо идеи, почему этот метод возвращает только 4 одноранговых узла?
1 ответ
Недавно я столкнулся с той же проблемой. Кажется, именно так ведет себя динамическое обнаружение, я прочитал код github и обнаружил, что они сами используют метод для повторного запроса, пока функция не вернет ожидаемое число пиров, использующих DefaultRetryableCodes.
Если вы используете go sdk, функцию можно найти здесь. Та же логика может быть воспроизведена путем изменения любого требования, которое у вас есть с пирами.