Oracle Cloud Infrastructure의 Oracle Blockchain Platform에 대해 알려진 문제(2세대)

Oracle Blockchain Platform을 사용할 때 발생할 수 있는 문제와 이 문제를 해결하는 방법에 대해 알아봅니다.

이전 릴리스에서 처음 보고된 문제:

지원되는 Hyperledger Fabric 버전

Oracle Blockchain Platform 23.3.3에서 지원하는 Hyperledger Fabric v2.5.3. 모든 새 사용자는 기본적으로 Hyperledger Fabric v2.5.3을 사용합니다.

지원되는 브라우저

Oracle Cloud Infrastructure를 통한 인스턴스 프로비저닝에 사용할 지원되는 브라우저에 대한 자세한 내용은 콘솔에 사인인을 참조하십시오.

Oracle Blockchain Platform 콘솔이 예상대로 작동하지 않을 경우 지원되는 브라우저의 최신 버전을 사용 중인지 확인하십시오. Oracle Blockchain Platform은 다음 브라우저를 지원합니다.

  • Mozilla Firefox
  • Google Chrome
  • Safari
  • Microsoft Edge/Internet Explorer

Hyperledger Fabric 버전의 상호 운용성

Oracle Blockchain Platform은 동일한 블록체인 네트워크에서 Hyperledger Fabric v1.4.7Hyperledger Fabric v2.x를 기반으로 하는 인스턴스 사용을 지원하지 않습니다.

해결 방법: 동일한 블록체인 네트워크에서 다른 주요 버전의 Hyperledger Fabric을 실행하려고 시도하지 마십시오.

필요 조건 검사를 실패할 경우 App Builder CLI가 제거됨

최신 버전을 설치하거나 다시 설치하여 Blockchain App Builder CLI(명령줄 인터페이스)를 업그레이드할 때 필요 조건 검사를 실패하면 기존 Blockchain App Builder CLI가 제거됩니다.

해결 방법: 이전 버전의 Blockchain App Builder CLI를 다시 설치하거나 사전 요구 사항에 맞게 시스템을 업데이트 한 다음 최신 버전의 Blockchain App Builder CLI를 설치할 수 있습니다.

소수 NFT 트랜잭션에서 잘못된 소수 자릿수를 사용하는 경우 오류가 없음

Blockchain App Builder를 사용하여 ERC-1155 표준을 사용하는 소수 NFT로 작업하는 경우 트랜잭션 금액이 사양 파일의 최대 소수 자릿수보다 많은 소수 자릿수를 사용하는 경우 오류가 표시되지 않습니다. 대신 실제 트랜잭션 금액은 사양 파일에 정의된 소수점 자릿수로 잘립니다. 또한 발신자 및 수신자의 잔액이 지정된 자릿수로 잘리더라도 트랜잭션 기록의 transactedAmount 값에 잘리지 않은 값이 표시됩니다.

해결 방법: 트랜잭션을 생성하기 전에 트랜잭션 금액을 검증하여 트랜잭션 금액이 체인코드에 대한 입력 사양 파일에 지정된 것보다 많은 소수 자릿수를 사용하지 않는지 확인합니다.

체인코드 버전 호환성 실행

Oracle Blockchain Platform 버전 23.3.3의 경우 사용된 Go 버전이 1.20으로 업데이트되었습니다. Go 1.20과 호환되지 않는 체인코드를 배포하거나 업그레이드하려고 하면 프로세스가 실패할 수 있습니다. Go로 작성된 체인코드를 업그레이드하거나 배포하기 전에 체인코드가 Go 1.20으로 구축될 수 있는지 확인하십시오. Go 1.20이 설치된 시스템의 체인코드 폴더 내용에 대해 다음 명령을 사용하여 오류를 확인할 수 있습니다.
go mod tidy
go mod vendor

현재 배포된 체인코드는 이 동작의 영향을 받지 않으며 Oracle Blockchain Platform 23.3.3으로 업그레이드한 후에도 계속 예상대로 작동합니다.

Node.js 체인코드 버전 호환성

Oracle Blockchain Platform 버전 23.3.3의 경우 사용되는 Node.js 버전이 18.15.0으로 업데이트되었습니다. Node.js 18.15.0과 호환되지 않는 체인 코드를 배치하거나 업그레이드하려고 시도하면 프로세스가 실패할 수 있습니다. Node.js에 기록된 체인코드를 업그레이드하거나 배포하기 전에 체인코드가 Node.js 18.15.0으로 빌드될 수 있는지 확인하십시오.

현재 배포된 체인코드는 이 동작의 영향을 받지 않으며 Oracle Blockchain Platform 23.3.3으로 업그레이드한 후에도 계속 예상대로 작동합니다.

이전 릴리스에서 처음 보고된 문제:

개발자 도구 페이지에서 Fiat Money Token 또는 Balance Transfer Sample을 실행할 수 없음

Oracle Blockchain Platform 22.4.2에는 새로운 버전의 Fiat Money Token 샘플이 포함되어 있습니다. 업데이트된 체인코드의 패키지 ID가 이전 버전과 다릅니다. Fiat Money Token 샘플을 배포한 경우 Oracle Blockchain Platform 22.4.2로 업그레이드한 후 샘플이 더 이상 콘솔의 [개발자 툴] 페이지에 배포된 것으로 표시되지 않으며 샘플에 대한 [개발자 툴] 페이지에서 작업을 실행할 수 없습니다.

Oracle Blockchain Platform 22.3.2가 원자 트랜잭션 기능으로 작동하도록 업데이트된 잔액 전송 샘플에서도 동일한 동작이 발생합니다.

해결 방법: 새 패키지 ID를 사용하여 최신 버전의 체인코드를 설치할 피어에 샘플 체인코드를 다시 설치합니다. 샘플이 배포된 각 채널에 대해 체인코드를 새 패키지로 업그레이드합니다. 체인코드가 업그레이드되면 개발자 도구 페이지에 있는 샘플의 상태와 작업이 정상적으로 작동합니다.

블록체인 앱 빌더 사용 시 배포 오류 발생

Blockchain App Builder를 사용하여 Go 체인코드 프로젝트를 배포할 때 다음과 유사한 오류가 발생할 수 있습니다.
ERROR RunCommand: spawn modd ENOENT
ERROR RunCommand: Error in Chaincode deployment
[+] Running 3/3
  Container ca.example.com Stopped 0.4s
  Container orderer.example.com Stopped 0.6s
  Container peer0.org1.example.com Stopped 0.6s
ERROR RunCommand: Error in Chaincode deployment, process exit with code 1
임시해결책:
macOS
  1. 다음 명령을 실행합니다.
    env GO111MODULE=off go get ‘github.com/cortesi/modd/cmd/modd’
  2. 배치를 시도하십시오.
Microsoft Windows
  1. go install를 사용하여 다음 명령을 실행합니다.
    go install github.com/cortesi/modd/cmd/modd@latest
  2. go get를 사용하여 다음 명령을 실행합니다.
    SET GO111MODULE=auto
    go get ‘github.com/cortesi/modd/cmd/modd’
  3. 배치를 시도하십시오.

Blockchain App Builder에서 생성한 TypeScript 체인 코드의 초기화 실패

Blockchain App Builder 버전 22.4.2 이하로 TypeScript 체인코드를 생성하는 경우 로컬 또는 원격으로 체인코드를 배포하거나 실행할 때 다음 텍스트와 유사한 오류가 표시될 수 있습니다.
로컬 환경:
INFO: Error in initalizing chaincode. Error :  failed to initialize chaincode Error: Failed to 
initialize the chaincode Error: endorsement failure during invoke. response: status:500 message:"error 
in simulation: failed to execute transaction 
e22ba18c00ecbd3135cdb509e08667cf6d5d9e79c4217b73492b5bb50836d58d: could not launch chaincode 
testagain:v0: error building chaincode: error building image: failed to get chaincode package for 
external build: could not get legacy chaincode package 'testagain:v0': open 
/var/hyperledger/production/chaincodes/testagain.v0: no such file or directory
원격 환경:
INFO: 

============ Started Initializing Chaincode ============

ERROR: {
  "Error": "Chaincode Deployment failed. Error in initializing chaincode: Status Code: 400, 
Error Message: {\"returnCode\":\"Failure\",\"error\":\"failed to invoke chaincode: 
Transaction processing for endorser 
[jasfounderdec5-oabcs1-ams.blockchain.ocp.oraclecloud.com:20010]: Chaincode status Code: 
(500) UNKNOWN. Description: error in simulation: failed to execute transaction 
947bbaf2feccc39cdf53bd7a07cd17f15d682a5a4ee6e3c3e63dec6346b0394e: error sending: chaincode 
stream terminated\",\"result\":null}"
}

해결 방법: 기존 체인코드에 대해 이 동작을 해결하려면 다음 지원 페이지의 단계를 완료하십시오.

로컬 및 원격 OBP 환경 모두에 TypeScript 체인코드 배치 실패

새로운 체인코드에서 이러한 동작을 방지하려면 Blockchain App Builder 22.4.3 이상으로 업그레이드하십시오. Blockchain App Builder는 Oracle Blockchain Platform 콘솔의 Blockchain App Builder 창에 있는 개발자 도구 탭에서 다운로드할 수 있습니다.

XA 라이브러리 사용 시 게이트웨이 시간 초과

Oracle Blockchain Platform과 함께 XA Java 라이브러리를 사용하는 경우 여러 블록체인 트랜잭션을 외부 트랜잭션 관리자가 제어하는 전역 트랜잭션으로 결합할 수 있습니다. 블록체인 트랜잭션을 완료하는 데 게이트웨이 시간 초과 값인 60초보다 오래 걸리는 경우 트랜잭션 관리자측 및 Oracle Blockchain Platform측에서 트랜잭션 상태가 비결정적이 될 수 있습니다.

해결 방법: 이 문제에 대한 해결 방법이 없습니다. 이 경우 트랜잭션을 수동으로 해결해야 합니다.

Microsoft Windows의 디버그 모드에서 토큰 체인코드를 실행할 수 없음

Blockchain App Builder 버전 22.2.1 이하를 사용하는 경우 Microsoft Windows에서 디버그 모드에서 토큰 체인코드를 실행할 수 없습니다.

해결 방법: 최신 버전의 Blockchain App Builder로 업그레이드하십시오. 업그레이드할 수 없는 경우 다음 단계를 완료하십시오.

  1. 편집할 chaincode/.vscode/task.json 파일을 엽니다.
  2. task.json 파일의 여섯번째 행에는 command 키가 포함됩니다. 행에서 다음 문자열을 제거합니다.
    -p '${workspaceFolder}' 
예를 들어, 편집 전 task.json 파일의 행은 다음과 같습니다.
"command": "ochain debug -p '${workspaceFolder}' \"[{\\\"userId\\\":\\\"admin\\\",\\\"orgId\\\":\\\"Org1MSP\\\"}]\" -v v8",
다음 이후:
"command": "ochain debug \"[{\\\"userId\\\":\\\"admin\\\",\\\"orgId\\\":\\\"Org1MSP\\\"}]\" -v v8",

플랫폼 업그레이드 후 주문 서비스 설정이 업데이트되지 않음

Hyperledger Fabric v1.4.7에서 Hyperledger Fabric v2.2.4로 인스턴스를 업그레이드하면 기존 주문 서비스 설정이 보존됩니다. 즉, 업그레이드된 인스턴스는 새 Hyperledger Fabric v2.2.4 인스턴스의 기본 설정이 아닌 Hyperledger Fabric v1.4.7 인스턴스의 기존 주문 서비스 설정을 사용합니다. 다음 표에는 주문 서비스 설정 값이 요약되어 있습니다. 주문 서비스에 대한 자세한 내용은 주문 서비스 관리를 참조하십시오.

설정 v1.4.7 및 업그레이드된 v2.2.4 인스턴스의 기본값 새 v2.2.4 인스턴스의 기본값
일괄 처리 시간 초과(밀리초)입니다. 2000 2000
최대 메시지 수 10 500
절대 메시지 바이트 98 98
선호 메시지 바이트 512 2
스냅샷 간격 크기 20 16

플랫폼 업그레이드 후 Gossip 리더 선택 속성이 업데이트되지 않음

Hyperledger Fabric v1.4.7에서 Hyperledger Fabric v2.2.4로 인스턴스를 업그레이드하면 피어 노드에 대한 Gossip 리더 선택 속성이 업데이트되지 않습니다. 즉, 업그레이드된 인스턴스는 새 Hyperledger Fabric v2.2.4 인스턴스의 기본 속성이 아닌 Hyperledger Fabric v1.4.7 인스턴스의 기존 속성을 사용합니다. 피어 노드 속성에 대한 자세한 내용은 피어 노드 속성을 참조하십시오.

이벤트 크기 제한

버전 22.2.1부터는 기본적으로 이벤트의 최대 페이로드 크기는 50KB로 제한됩니다. 최대 페이로드 크기보다 큰 이벤트는 삭제됩니다. Oracle DevOps 팀은 요청에 따라 이 매개변수를 수정할 수 있습니다. 페이로드가 50KB보다 큰 이벤트를 구독하려면 My Oracle Support에서 SR(서비스 요청)을 열어 최대 이벤트 크기를 늘리십시오. 자세한 내용은 REST API 문서의 이벤트 구독을 참조하십시오.

콜론(:)이 포함된 사용자 ID는 REST API 호출에 사용할 수 없습니다.

Oracle Blockchain Platform에서는 콜론(:)이 포함된 사용자 ID를 REST 프록시 등록과 연계할 수 있습니다. 그러나 기본 인증(사용자 이름 및 비밀번호)을 사용하는 경우 해당 사용자 ID를 REST API 호출에 사용할 수 없습니다.

해결 방법: REST 프록시 등록과 연관된 모든 사용자가 해당 사용자 ID에 콜론(:)이 없는지 확인합니다.

부적합한 인증서에 대해 CORS 헤더가 반환되지 않음

REST 프록시 트랜잭션을 호출하는 고객 애플리케이션은 요청에서 전송된 인증서가 부적합하거나 잘못되었거나 만료된 경우 응답에서 CORS(교차 출처 리소스 공유) 헤더(Access-Control-Allow-Origin 헤더)를 수신하지 않습니다.

채널을 생성할 때 주문자 상태 오류

채널을 생성할 때 다음 오류가 표시될 수 있습니다.
Failed to create the channel with error: aborted
Please check the orderers status.

해결 방법: 채널을 다시 생성해 보십시오. 이 문제는 간헐적인 문제입니다.

Microsoft Windows의 Visual Studio 코드에서 디버깅

Microsoft Windows의 경우 Visual Studio Code에서 체인코드 프로젝트를 디버깅하는 동안 다음과 유사한 오류가 발생할 수 있습니다.On Microsoft Windows, you might encounter an error similar to the following while debugging chaincode projects in Visual Studio Code:
dlv: failed to install dlv(github.com/go-delve/delve/cmd/dlv@latest): Error: Command failed:
C:\Program Files (x86)\Go\bin\go.exe get -x github.com/go-delve/delve/cmd/dlv@latest
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/dlv/@v/list
# get https://proxy.golang.org/github.com/@v/list
# get https://proxy.golang.org/github.com/go-delve/@v/list
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/@v/list
# get https://proxy.golang.org/github.com/go-delve/delve/@v/list
# get https://proxy.golang.org/github.com/@v/list: 410 Gone (0.420s)
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/@v/list: 410 Gone (1.040s)
# get https://proxy.golang.org/github.com/go-delve/@v/list: 410 Gone (1.062s)
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/dlv/@v/list: 410 Gone (1.066s)
# get https://proxy.golang.org/github.com/go-delve/delve/@v/list: 200 OK (1.448s)
go: found github.com/go-delve/delve/cmd/dlv in github.com/go-delve/delve v1.8.3C:\Users\<UserName>\go\pkg\mod\github.com\go-delve\delve@v1.8.3\service\debugger\debugger.go:28:2:found packages native (proc.go) and 
your_operating_system_and_architecture_combination_is_not_supported_by_delve(support_sentinel.go) in C:\Users\Asus\go\pkg\mod\github.com\go-delve\delve@v1.8.3\pkg\proc\native
현재는 이 오류에 대한 해결 방법이 없습니다.

다중 조직 환경 및 블록체인 앱 빌더

여러 조직이 있는 환경에서는 콘솔을 사용하여 일부 작업을 완료해야 할 수 있습니다.

참여자 인스턴스를 통해 동일한 채널에 체인코드를 재배포하려면 콘솔을 사용하여 체인코드를 배포합니다.

(Hyperledger Fabric v2.2.4) 체인코드를 업그레이드하려면 콘솔을 사용하고 참가자의 체인코드를 수동으로 승인합니다.

스케일링은 한 번에 하나의 구성요소에서만 작동합니다.

한 번에 하나의 노드 유형만 배율 조정할 수 있습니다. 예를 들어, 피어 노드를 추가하고 기존 피어 노드 설정을 동시에 수정할 수 있지만 스토리지를 늘리려면 별도로 수행해야 합니다.

또한 한 번에 하나의 피어 또는 OSN만 확장할 수 있습니다. 예를 들어 단일 작업에서 두 개의 피어를 추가할 수 없습니다.

잘못된 운영 체제 시계로 인해 요청이 거부될 수 있음

클라이언트 또는 SDK의 로컬 시계가 15분 이상 떨어져 있는 경우 피어 및 주문자가 클라이언트 또는 SDK의 로컬 시계를 거부합니다. 로컬 시계가 올바르게 설정되었는지 확인합니다.

이전 클라이언트 SDK로 인해 블록체인 애플리케이션이 예상대로 작동하지 않음

이전 버전의 클라이언트 SDK를 사용하는 경우 애플리케이션이 예상치 않게 동작할 수 있습니다.

해결 방법: 클라이언트 SDK 업데이트를 설명하는 설명서를 읽고 필요에 따라 응용 프로그램을 수정합니다. 자세한 내용은 Hyperledger Fabric 설명서의 Hyperledger Fabric SDK를 참조하십시오.

네트워크의 Oracle Blockchain Platform 인스턴스에서 취소된 타사 인증서를 관리할 수 없음

Oracle Blockchain Platform 네트워크에 타사 인증서가 있는 조직 또는 Hyperledger Fabric 조직이 있고 해당 인증서가 취소된 경우 취소된 인증서가 적용되지 않고, 표시되지 않으며, 네트워크의 Oracle Blockchain Platform 인스턴스에서 취소할 수 없습니다.

해결 방법: 고유 Hyperledger Fabric CLI 또는 SDK를 사용하여 조직의 CRL(인증서 해지 목록) 파일을 가져옵니다.

설립자의 채널 목록에 부정확한 생성자 정보가 포함되어 있으며 채널 조직 편집 옵션을 사용할 수 없습니다.

설립자 인스턴스와 참가자 인스턴스가 서로 다른 버전의 Oracle Blockchain Platform을 실행하는 혼합 네트워크에서는 설립자의 채널 목록에 참가자가 생성한 채널에 대해 잘못된 MSP ID가 표시될 수 있습니다. 참가자의 MSP ID 대신 설립자의 MSP ID가 표시됩니다. 이 문제는 CRL을 가져오거나, CRL을 취소 또는 적용하거나, 채널에서 앵커 피어를 설정한 후에 발생할 수 있습니다.

채널의 채널 조직 편집 옵션은 생성자 필드에 표시된 인스턴스에 대해서만 사용할 수 있습니다. 잘못된 MSP ID가 표시되면 채널 생성자가 채널 조직을 업데이트할 수 없습니다.

해결 방법: 이 문제에 대한 해결 방법이 없습니다.

ImplicitMeta 정책이 Oracle Blockchain Platform에서 지원되지 않음

고유 Hyperledger Fabric CLI 또는 SDK를 사용하여 채널의 구성을 수정하는 경우 Oracle Blockchain Platform에서 지정하는 일부 구성 설정을 지원할 수 없습니다.

  • 고유 Hyperledger Fabric CLI 및 SDK는 읽기 장치 및 쓰기 장치에 ImplicitMeta 채널 정책을 사용합니다. 채널이 이러한 정책을 사용하는 경우 Oracle Blockchain Platform 콘솔은 관리 작업(예: 조직 편집)이 성공적으로 처리될 수 있음을 보장할 수 없습니다.

    해결 방법: 서명 정책에 대한 읽기 장치 및 쓰기 장치 정책을 업데이트하고 필요에 따라 정책 규칙을 정의합니다. 자세한 내용은 Hyperledger Fabric 설명서의 ACL(Access Control Lists)을 참조하십시오.

  • 채널이 ImplicitMeta 정책 유형을 사용하고 채널 구성에서 그룹 섹션의 mod_policy을 관리자로 변경하고 채널에 둘 이상의 조직이 있는 경우 Oracle Blockchain Platform을 사용하여 채널을 관리할 수 없습니다. 예를 들어 채널에 새 조직을 추가하거나 원래 값 복원을 포함하여 채널의 ACL 정책을 변경할 수 없습니다.

    해결 방법: 고유 Hyperledger Fabric CLI 또는 SDK를 사용하여 채널을 관리합니다.

채널 생성자가 채널의 구성을 업데이트할 수 없음

고유 Hyperledger Fabric CLI 또는 SDK를 사용하여 채널을 생성하는 경우 생성자 정책이 configtx.yaml 파일에 포함되지 않습니다. Oracle Blockchain Platform을 사용하려면 채널 생성자가 채널의 구성을 편집할 수 있도록 생성자 정책이 필요합니다.

해결 방법: configtx.yaml 파일을 수동으로 편집하여 작성자 정책을 추가합니다.

REST API에서 지원되지 않는 instantiateChaincode 끝점에서 blocktolive를 0으로 설정

REST API의 instantiateChaincode 끝점을 사용 중이고 dataCollectionConfig에서 blocktolive 값을 0으로 설정하면 {"respMesg":"invalid argument"} 오류가 표시됩니다.

전용 데이터베이스에서 데이터 비우기를 방지하려면 Hyperledger Fabric에서 blocktolive 값을 0으로 설정해야 합니다. 그러나 Oracle Blockchain Platform REST API는 이 구성을 0으로 설정하는 것을 지원하지 않습니다.

해결 방법: 콘솔을 사용하여 체인코드를 인스턴스화하고 체인코드 인스턴스화 대화상자의 [전용 데이터 수집] 섹션에서 blocktolive 필드를 0으로 설정합니다.

상대방이 다른 상대방으로부터 개인 데이터를 가져오지 못함

개인 데이터 수집의 blocktolive 값이 10보다 작고 maxPeerCount 값이 보증 피어가 아닌 총 피어 수보다 작은 경우 피어가 다른 피어로부터 개인 데이터를 가져오지 못할 수 있습니다. 이 값은 콘솔을 사용하여 개인 데이터 수집 정의를 생성하거나 고유 Hyperledger Fabric CLI 또는 SDK를 사용할 때 설정됩니다. https://jira.hyperledger.org/browse/FAB-11889를 참조하십시오.

해결 방법: blocktolive 값이 10보다 크거나 같은 값으로 설정되었는지 확인합니다. 또는 maxPeerCount 값이 보증 피어를 포함하지 않고 총 피어 수보다 적게 설정되었는지 확인합니다. 필요한 경우 체인코드를 다시 인스턴스화하거나 업그레이드하여 해당 값을 재설정할 수 있습니다.

채널 생성자 조직 및 채널 정책 설정 불일치

콘솔을 사용하여 채널을 생성하고 조직의 ACL을 ReaderOnly로 설정할 수 있습니다. 새 채널을 저장한 후에는 채널의 채널 조직 편집 옵션에서 이 ACL 설정을 업데이트할 수 없습니다.

그러나 콘솔의 채널 정책 관리 옵션을 사용하여 작성기 정책에 조직을 추가할 수 있습니다. 이 경우 채널의 ReaderOnly ACL 설정을 겹쳐씁니다.

해결 방법: 이 문제에 대한 해결 방법이 없습니다.

익스포트 및 임포트된 파일 비호환성

콘솔과 REST API 간에 파일(CRL, 인증서, 주문 서비스 설정 및 피어)을 익스포트하고 임포트할 수 없습니다.

콘솔 및 REST API에서 익스포트한 파일은 동일한 구성요소가 있는 임포트에만 호환됩니다. 예를 들어, 콘솔을 사용하여 피어를 익스포트하는 경우 REST API로 임포트할 수 없습니다. 콘솔로만 임포트할 수 있습니다. REST API로 피어를 익스포트하는 경우 콘솔로 피어를 임포트할 수 없습니다(REST API로만 임포트할 수 있음).

해결 방법: 이 문제에 대한 해결 방법이 없습니다.

체인코드 이름 요구사항

Oracle Blockchain Platform 체인코드 이름 및 버전 요구사항은 Hyperledger Fabric 요구사항과 다릅니다. 콘솔 또는 Hyperledger Fabric 클라이언트에서 체인코드를 배포할 때는 Oracle Blockchain Platform 요구사항을 사용해야 합니다. Hyperledger Fabric 클라이언트에서 배포할 때 이러한 요구 사항을 따르지 않으면 체인 코드가 콘솔에 잘못 나열될 수 있습니다.

해결 방법: 체인코드 이름 및 버전을 배포할 때 다음 규칙을 사용합니다.

  • ASCII 영숫자, 대시(-) 및 밑줄(_)을 사용합니다.
  • 이름은 ASCII 영숫자로만 시작하고 끝나야 합니다. 예를 들어, _mychaincode 또는 mychaincode_과 같은 이름은 사용할 수 없습니다.
  • 대시(-)와 밑줄(_) 뒤에는 ASCII 영숫자가 와야 합니다. 예를 들어, my--chaincode 또는 my-_chaincode와 같은 이름은 사용할 수 없습니다.
  • 이름과 버전은 각각 64자까지 포함할 수 있습니다.
  • 체인코드 버전에는 마침표(.) 및 더하기 기호(+)도 포함될 수 있습니다.

날짜 및 시간 선택기 동작

Oracle Blockchain Platform 날짜 및 시간 선택기가 예상대로 작동하지 않습니다. 날짜 및 시간 선택기를 사용하여 로그 파일 또는 원장 활동과 같은 항목을 필터링합니다.

해결 방법: 다음 정보를 사용하여 날짜 및 시간 선택기를 사용할 수 있습니다.

  • 특정 기간(예: 지난 날)을 선택한 다음 다시 선택하여 질의를 재실행하면 질의가 재실행되지 않습니다. 최신 정보를 얻으려면 새로 고침 단추를 누릅니다.
  • 컴퓨터에서 시간대를 설정하지 않은 경우 사용자 정의 옵션을 선택할 때 시작 시간과 종료 시간을 GMT로 지정해야 합니다. 하지만 [환경설정]에서 [시간대 설정]을 GMT로 설정하면(콘솔에서 인스턴스 이름을 선택한 다음 [환경설정], [시간대 설정] 순으로 누름) 콘솔의 시간대가 자동으로 GMT로 변환됩니다.

체인코드를 사용하여 수동으로 Shim 공급업체

Hyperledger Fabric에서 fabric-ccenv 이미지는 github.com/hyperledger/fabric/core/chaincode/shim(shim) 패키지를 포함합니다. 이렇게 하면 shim을 포함할 필요 없이 체인코드를 패키지화할 수 있습니다. 그러나 이로 인해 차후 Hyperledger Fabric 릴리스에서 문제가 발생할 수 있으며, shim에 포함된 패키지를 사용할 때 문제가 발생할 수 있습니다.

해결 방법: 잠재적 문제를 방지하려면 체인 코드를 패키징 및 설치하거나 체인 코드를 패키징 또는 설치하기 위해 peer 명령줄 인터페이스를 사용하기 전에 체인 코드와 함께 shim 패키지를 수동으로 공급업체에 제공해야 합니다. https://jira.hyperledger.org/browse/FAB-5177를 참조하십시오.

설명서 접근성

Oracle의 접근성 개선 노력에 대한 자세한 내용은 http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc에서 Oracle Accessibility Program 웹 사이트를 방문하십시오.

오라클 고객지원센터 액세스

지원 서비스를 구매한 오라클 고객은 My Oracle Support를 통해 온라인 지원에 액세스할 수 있습니다. 자세한 내용은 http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info를 참조하거나, 청각 장애가 있는 경우 http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs를 방문하십시오.