Использование Fabri c Node SDK 1.4.x с Fabri c 2.0 - PullRequest
0 голосов
/ 27 апреля 2020

Мы только что перешли на Fabri c 2.0, и все наши компоненты (peer, orderer, binaries) находятся на v2.0.0.

Наш Fabri c Node SDK все еще на v1.4.8 и большинство его функций работают, такие как

createChannel, updateChannel, installChaincode etc.

Однако, когда я пытаюсь использовать Channel.sendInstantiateProposal, я получаю ошибку

"Channel <channel_name> has been migrated to the new lifecycle. LSCC is now read only".

Я понимаю, что это, вероятно, несоответствие между SDK и компонентами Fabri c, однако есть ли способ заставить это работать, кроме обновления до Fabri c Node SDK 2.0?

Файл configtx.yaml, используемый для запуска сети, имеет capabilities all set to V2.0:true. Примечания указывают, что возможности V2.0 не имеют обратной совместимости, поэтому я предполагаю, что не могу установить для них значение V1.4 и по-прежнему работать с компонентами Fabri c 2.0.

Спасибо

Ответы [ 2 ]

1 голос
/ 04 мая 2020

В этом случае SDK v1.4 совместим с v2, но в новой архитектуре цепочечного кода в v2 отсутствует создание экземпляра цепочечного кода как части его жизненного цикла. Вместо этого он использует новый четырехэтапный процесс, определенный в официальной документации . Вот почему SDK v1.4 дает сбой именно в этой строке, где вы вызываете Channel.sendInstantiateProposal (). SDK работает нормально, но эта операция не поддерживается новым жизненным циклом цепочки кодов.

Что касается решения, к сожалению, в v2 SDK нет способа выполнять административные задачи, и вы должны использовать Peer CLI для таких операций.

0 голосов
/ 01 мая 2020

Официальная документация , кажется, подтверждает ваше предположение, что SDK не обязательно являются совместимыми с прямой связью, когда речь идет о новых функциях, таких как жизненный цикл нового цепного кода (см. Синее поле «Примечание»).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...