Problèmes connus pour Oracle Blockchain Platform sur Oracle Cloud Infrastructure
Découvrez les problèmes que vous risquez de rencontrer lorsque vous utilisez Oracle Blockchain Platform et comment les contourner.
Rubriques :
- Stockage et redimensionnement d'OCPU non pris en charge
- SDK Hyperledger Fabric en phase d'abandon
- Valeur de stockage incorrecte signalée dans l'API REST
- Certains champs ne sont pas renvoyés par l'API REST de vérification des blocs
- Impossible d'afficher les détails du livre pour un canal
- Configuration de l'historique enrichi non enregistrée
- Compatibilité de version de code chaîne Go
- Compatibilité des versions de code chaîne Node.js
- Soldes bloqués non modifiés après les approbations d'impression et d'impression
Problèmes initialement signalés dans les versions précédentes :
- Erreur de limite de compte lors de la mise à niveau des codes chaîne Go
- Erreur de jeton inattendue lors du débogage sur Microsoft Windows 11
- Syntaxe Go requise pour Aucune limite de compte journalière
- Erreurs de délai d'expiration de proxy REST lors de l'utilisation des collectes Postman
- La liste des fonctions dans le code Visual Studio inclut deux méthodes incorrectes
- L'interface de ligne de commande d'App Builder est désinstallée en cas d'échec de la vérification des prérequis
- Aucune erreur si une transaction NFT fractionnée utilise un nombre de décimales incorrect
- Impossible d'exécuter un jeton d'argent Fiat ou un échantillon de transfert de solde à partir de la page Outils de développement
- Erreur de déploiement lors de l'utilisation de Blockchain App Builder
- Echec de l'initialisation dans le code chaîne TypeScript généré par Blockchain App Builder
- Expiration de la passerelle lors de l'utilisation de la bibliothèque XA
- Impossible d'exécuter le code chaîne de jeton en mode débogage sur Microsoft Windows
- Limites de taille d'événement
- Les ID utilisateur contenant un point-virgule ( :) ne peuvent pas être utilisés dans les appels d'API REST
- En-tête CORS non renvoyé pour les informations d'identification non valides
- Erreur de statut des donneurs d'ordre lors de la création de canaux
- Débogage dans Visual Studio Code sous Microsoft Windows
- Environnements multiorganisation et générateur d'applications Blockchain
- Le redimensionnement ne fonctionne que sur un seul composant à la fois
- Une horloge incorrecte du système d'exploitation peut entraîner des demandes rejetées
- Les applications Blockchain ne fonctionnent pas comme prévu en raison d'un SDK client plus ancien
- Les instances Oracle Blockchain Platform du réseau ne peuvent pas gérer les certificats tiers révoqués
- La liste de canaux du fondateur contient des informations de création incorrectes et l'option Modifier les organisations de canal n'est pas disponible
- ImplicitMeta La stratégie n'est pas prise en charge par Oracle Blockchain Platform
- Le créateur du canal ne peut pas mettre à jour la configuration du canal
- Définition de blocktolive sur 0 dans l'adresse instantiateChaincode non prise en charge dans l'API REST
- Le pair ne parvient pas à extraire les données privées d'un autre pair
- Incohérence des paramètres d'organisation et de stratégie de canal du créateur de canal
- Incompatibilité du traitement Fichier exporté et importé
- Exigences relatives aux noms de code chaîne
- Comportement du sélecteur de date et d'heure
Stockage et redimensionnement d'OCPU non pris en charge
Le redimensionnement de la capacité de stockage ou d'OCPU n'est pas pris en charge sur les instances Oracle Blockchain Platform version 25.4.1. Si vous tentez d'utiliser l'API REST pour redimensionner la capacité de stockage ou d'OCPU, un message d'erreurUnsupportedOperationException est renvoyé.
SDK Hyperledger Fabric en phase d'abandon
Les kits SDK Hyperledger Fabric sont désormais en phase d'abandon en faveur de l'API client Fabric Gateway. Il peut toujours être possible d'utiliser les kits SDK Hyperledger Fabric pour développer des applications pour Oracle Blockchain Platform, mais l'API client Fabric Gateway est préférable.Valeur de stockage incorrecte signalée dans l'API REST
La valeurstorageUsedInTBs renvoyée par l'adresse d'API REST Obtenir les informations de plate-forme de chaîne de blocs renvoie toujours la valeur 0 pour les instances Oracle Blockchain Platform version 25.4.1.
Solution de contournement : il n'existe aucune solution pour contourner ce problème.
Certains champs ne sont pas renvoyés par l'API REST de vérification des blocs
Les champs suivants ne sont pas renvoyés par l'adresse d'API REST Vérifier les blocs sur les instances Oracle Blockchain Platform version 25.4.1 :verifyResult et firstBlockNum.
Solution de contournement : il n'existe aucune solution pour ce problème.
Impossible d'afficher les détails du livre pour un canal
Lorsque vous cliquez sur un bloc sur la page Livre pour un canal, les détails de la transaction s'affichent. Un problème intermittent survient lorsque les détails de la transaction ne s'affichent pas lorsque vous cliquez sur un bloc.
Solution : actualisez la page du navigateur, puis cliquez à nouveau sur le bloc pour afficher les détails de la transaction.
Configuration de l'historique enrichi non enregistrée
Lorsque vous cliquez sur Enregistrer dans la boîte de dialogue Configurer l'historique enrichi, l'interface utilisateur indique que la configuration globale a été enregistrée. Toutefois, lorsque vous essayez d'afficher la configuration de l'historique enrichi, elle n'est pas disponible car elle n'a pas été enregistrée. Ce problème se produit par intermittence.
Solution : réessayez d'enregistrer la configuration de l'historique enrichi.
Compatibilité de version de code chaîne Go
Pour la version 25.4.1 d'Oracle Blockchain Platform, la version Go utilisée a été mise à jour vers la version 1.24.4. Si vous tentez de déployer ou de mettre à niveau un code chaîne qui n'est pas compatible avec Go 1.24.4, le processus peut échouer. Avant de mettre à niveau ou de déployer un code chaîne écrit en Go, assurez-vous que le code chaîne peut être créé avec Go 1.24.4. Vous pouvez utiliser les commandes suivantes sur le contenu du dossier de codes chaîne sur un système sur lequel Go 1.24.4 est installé pour rechercher les erreurs :go mod tidygo mod vendorLes codes chaîne actuellement déployés ne sont pas affectés par ce comportement et continueront à fonctionner comme prévu après la mise à niveau vers Oracle Blockchain Platform 25.4.1.
Compatibilité des versions de code chaîne Node.js
Pour la version 25.4.1 d'Oracle Blockchain Platform, la version de Node.js utilisée a été mise à jour vers la version 22.14.0. Si vous tentez de déployer ou de mettre à niveau un code chaîne qui n'est pas compatible avec Node.js 22.14.0, le processus peut échouer. Avant de mettre à niveau ou de déployer un code chaîne écrit dans Node.js, assurez-vous que le code chaîne peut être créé avec Node.js 22.14.0.Les codes chaîne actuellement déployés ne sont pas affectés par ce comportement et continueront à fonctionner comme prévu après la mise à niveau vers Oracle Blockchain Platform 25.4.1.
Soldes bloqués non modifiés après les approbations d'impression et d'impression
Les approbations d'usinage et de gravure utilisent le mécanisme de maintien, qui prend un ID d'opération comme entrée. Les méthodes getOnHoldBalanceWithOperationId et getOnHoldDetailsWithOperationId renvoient le montant de blocage associé à un ID d'opération spécifié. Pour les opérations de blocage standard qui utilisent les méthodes executeHold et releaseHold, le montant de blocage change une fois la méthode terminée. Par exemple, si vous demandez un blocage avec l'ID d'opération first pour 100 jetons, après approbation (à l'aide de la méthode executeHold), le montant du blocage est 0. Les méthodes getOnHoldBalanceWithOperationId et getOnHoldDetailsWithOperationId renverront 0 en tant que montant de blocage pour l'ID d'opération first.
Ce comportement ne s'applique pas aux approbations de frappe ou de combustion. Par exemple, si vous demandez 100 jetons mint avec l'ID d'opération second, après approbation (à l'aide de la méthode approveMint), le montant de blocage est toujours égal à 100. Les méthodes getOnHoldBalanceWithOperationId et getOnHoldDetailsWithOperationId renverront 100 pour l'ID d'opération second.
En cas de frappe ou de brûlure, l'approbation représente une demande de menthe ou de brûlure de cette quantité, mais aucun transfert n'a lieu au stade de l'approbation. Comme les approbations d'extraction et de gravure utilisent le même mécanisme de blocage interne que les opérations de blocage standard, les méthodes d'interrogation renvoient la valeur stockée dans la paire clé-valeur de blocage, qui n'est pas modifiée après l'extraction ou la gravure des approbations.
Solution : vous pouvez utiliser les méthodes getOnHoldBalanceWithOperationId et getOnHoldDetailsWithOperationId pour vérifier les quantités de menthe ou de brûlure demandées, mais vous devez être conscient des différences entre ces opérations et les opérations de blocage standard.
Problèmes initialement signalés dans les versions précédentes :
Erreur de limite de compte lors de la mise à niveau des codes chaîne Go
Si vous mettez à niveau le code chaîne généré par une version précédente de Blockchain App Builder en langage Go à l'aide de la norme étendue Token Taxonomy Framework vers la version 25.2.2, l'erreur suivante peut se produire lorsque vous tentez de terminer une transaction :account has exceeded the limit for maximum number of transfers -1Cette erreur se produit également sur la version Go du code chaîne propre au modèle CBDC de gros. Cette erreur se produit car la version précédente de Blockchain App Builder a utilisé la valeur -1 pour ne représenter aucune limite de compte journalière, mais dans la version 25.2.2, il n'y a pas de valeur par défaut et l'absence de cette paire clé/valeur indique que le compte n'a pas de limite journalière.
max_daily_amount ou max_daily_transaction, les paires clé/valeur seront enlevées afin que le compte fonctionne correctement avec la version 25.2.2. SetMaxDailyAmount(token_id string, org_id string, user_id string, max_daily_amount ...float64)SetMaxDailyTransactionCount(token_id string, org_id string, user_id string, max_daily_transactions ...float64)Erreur de jeton inattendue lors du débogage sur Microsoft Windows 11
Lorsque vous utilisez la fonction de débogage Blockchain App Builder dans Visual Studio Code exécuté sur Microsoft Windows 11, le message d'erreur suivant s'affiche :Unexpected token ':"admin"' in expression or statement.Lorsque cette erreur se produit, le déploiement et le débogage des codes chaîne échouent.Solution de contournement : il n'existe aucune solution pour contourner ce problème.
Syntaxe Go requise pour Aucune limite de compte journalière
Dans le code chaîne généré par Blockchain App Builder qui utilise la norme étendue Token Taxonomy Framework et le langage de programmation Go, si vous ne voulez pas définir les limites de compte journalières lors de l'utilisation de la méthodeCreateAccount, vous devez transmettre la valeur vide "" et non "{}" pour le paramètre daily_limits. Les paramètres corrects pour la version Go de la méthode CreateAccount ressemblent à l'exemple suivant : ["CentralBank","cb","fungible",""]Cette version Go du code chaîne spécifique au modèle CBDC de gros a également cette exigence.Erreurs de délai d'expiration de proxy REST lors de l'utilisation des collectes Postman
Pour les collectes Postman générées par Blockchain App Builder, qui exécutent des transactions à l'aide du proxy REST Oracle Blockchain Platform, la valeur de délai d'expiration par défaut est définie sur 6000, comme indiqué dans l'exemple suivant :{
"chaincode": "WholesaleCBDCConfidential",
"args": [
"getTokenAuditors"
],
"timeout": 6000,
"sync": true,
"peer": "org-xyz-abc.blockchain.ocp.oraclecloud.com:20009",
"transientMap": {
"args": "[]"
}
}'Dans certains cas, le traitement du proxy REST peut expirer même si la transaction est en cours de traitement par Oracle Blockchain Platform, ce qui entraîne la réponse suivante :{
"returnCode": "Failure",
"error": "failed to invoke chaincode: Client Status Code: (5) TIMEOUT. Description: request timed out or been cancelled",
"result": null
}Solution : augmentez la valeur du délai d'expiration en fonction de votre cas d'utilisation spécifique.
La liste des fonctions dans le code Visual Studio inclut deux méthodes incorrectes
Lorsque vous utilisez la fonctionnalité de transactions confidentielles avec la version Visual Studio Code de Blockchain App Builder, deux méthodes sont affichées dans la liste des fonctions du panneau Exécuter :executeHoldTokensSender et executeHoldTokensReceiver. Ces deux méthodes fonctionnent correctement uniquement lorsqu'elles sont utilisées avec l'API de validation en deux phases du proxy REST, que la version Visual Studio Code de Blockchain App Builder ne prend pas en charge. N'utilisez pas ces deux méthodes dans la version Visual Studio Code de Blockchain App Builder.
L'interface de ligne de commande d'App Builder est désinstallée en cas d'échec de la vérification des prérequis
Lorsque vous mettez à niveau l'interface de ligne de commande (CLI) Blockchain App Builder en installant ou en réinstallant la dernière version, si la vérification des prérequis échoue, l'interface de ligne de commande Blockchain App Builder existante est désinstallée.Solution de contournement : vous pouvez soit réinstaller l'ancienne version de l'interface de ligne de commande Blockchain App Builder, soit mettre à jour votre système pour répondre aux prérequis, puis installer la nouvelle version de l'interface de ligne de commande Blockchain App Builder.
Aucune erreur si une transaction NFT fractionnée utilise un nombre de décimales incorrect
Lorsque vous utilisez Blockchain App Builder pour travailler avec des NFT fractionnaires qui utilisent la norme ERC-1155, si un montant de transaction utilise un nombre de décimales supérieur au nombre maximal de décimales dans le fichier de spécification, aucune erreur n'est indiquée. Au lieu de cela, le montant réel de la transaction est tronqué au nombre de décimales défini dans le fichier de spécification. En outre, même si les soldes de l'expéditeur et du destinataire sont tronqués au nombre de chiffres indiqué, la valeurtransactedAmount dans l'historique des transactions affiche la valeur non tronquée.
Solution de contournement : validez un montant de transaction avant de créer une transaction pour vous assurer que le montant de transaction n'utilise pas un nombre de décimales supérieur à celui indiqué dans le fichier de spécification d'entrée pour le code chaîne.
Impossible d'exécuter un jeton d'argent Fiat ou un échantillon de transfert de solde à partir de la page Outils de développement
Une nouvelle version de l'exemple de jeton d'argent Fiat est incluse dans Oracle Blockchain Platform 22.4.2. Le code chaîne mis à jour a un ID de package différent de la version précédente. Si vous avez déployé l'exemple de jeton d'argent Fiat, après la mise à niveau vers Oracle Blockchain Platform 22.4.2, l'exemple ne sera plus affiché comme déployé sur la page Outils de développement de la console et vous ne pourrez plus exécuter d'opérations à partir de la page Outils de développement pour l'exemple.Le même comportement se produit avec l'exemple de transfert de solde, qui a été mis à jour pour que Oracle Blockchain Platform 22.3.2 fonctionne avec la fonction de transactions atomiques.
Solution : installez à nouveau l'exemple de code chaîne sur les pairs, ce qui installera la nouvelle version du code chaîne avec le nouvel ID de package. Pour chaque canal sur lequel l'échantillon a été déployé, mettez à niveau le code chaîne vers le nouveau package. Une fois le code chaîne mis à niveau, le statut et les opérations de l'échantillon sur la page Outils de développement fonctionnent normalement.
Erreur de déploiement lors de l'utilisation de Blockchain App Builder
Une erreur similaire à la suivante peut se produire lors du déploiement d'un projet de code chaîne Go à l'aide de Blockchain App Builder :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
-
- Exécutez la commande suivante :
env GO111MODULE=off go get ‘github.com/cortesi/modd/cmd/modd’ - Réessayez le déploiement.
- Exécutez la commande suivante :
- Microsoft Windows
-
- Exécutez la commande suivante à l'aide de
go install:go install github.com/cortesi/modd/cmd/modd@latest - Exécutez les commandes suivantes à l'aide de la commande
go get:SET GO111MODULE=auto go get ‘github.com/cortesi/modd/cmd/modd’ - Réessayez le déploiement.
- Exécutez la commande suivante à l'aide de
Echec de l'initialisation dans le code chaîne TypeScript généré par Blockchain App Builder
Si vous générez un code chaîne TypeScript avec Blockchain App Builder version 22.4.2 ou antérieure, des erreurs semblables au texte suivant peuvent se produire lorsque vous déployez ou exécutez le code chaîne en local ou à distance :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 directoryINFO:
============ 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}"
}Solution de contournement : pour contourner ce comportement pour les codes chaîne existants, suivez les étapes de la page de support suivante :
Déploiement du code chaîne TypeScript en cas d'échec des environnements OBP local et distant
Pour éviter ce comportement dans les nouveaux codes chaîne, effectuez une mise à niveau vers Blockchain App Builder 22.4.3 ou version ultérieure. Vous pouvez télécharger Blockchain App Builder à partir de l'onglet Outils de développeur du panneau Blockchain App Builder de la console Oracle Blockchain Platform.
Expiration de la passerelle lors de l'utilisation de la bibliothèque XA
Lorsque vous utilisez la bibliothèque Java XA avec Oracle Blockchain Platform, plusieurs transactions de chaîne de blocs peuvent être combinées en une transaction globale contrôlée par un gestionnaire de transactions externe. Si les transactions de chaîne de blocs prennent plus de 60 secondes que le délai d'expiration de la passerelle, le statut de la transaction peut devenir non déterministe du côté du gestionnaire de transactions et du côté d'Oracle Blockchain Platform.Solution de contournement : il n'existe aucune solution pour ce problème. Dans ce cas, vous devez résoudre manuellement la transaction.
Impossible d'exécuter le code chaîne de jeton en mode débogage sur Microsoft Windows
Si vous utilisez Blockchain App Builder version 22.2.1 ou antérieure, vous ne pouvez pas exécuter de code chaîne de jeton en mode débogage sur Microsoft Windows.Solution : mettez à niveau vers la dernière version de Blockchain App Builder. Si vous ne parvenez pas à effectuer la mise à niveau, procédez comme suit :
- Ouvrez le fichier
chaincode/.vscode/task.jsonpour le modifier. - La sixième ligne du fichier
task.jsoninclut la clécommand. Supprimez la chaîne suivante de la ligne :-p '${workspaceFolder}'
task.json avant la modification :"command": "ochain debug -p '${workspaceFolder}' \"[{\\\"userId\\\":\\\"admin\\\",\\\"orgId\\\":\\\"Org1MSP\\\"}]\" -v v8","command": "ochain debug \"[{\\\"userId\\\":\\\"admin\\\",\\\"orgId\\\":\\\"Org1MSP\\\"}]\" -v v8",Limites de taille d'événement
A partir de la version 22.2.1, par défaut, la taille maximale de la charge utile d'un événement est limitée à 50 ko. Tous les événements dont la taille de charge utile est supérieure à la taille maximale seront supprimés. L'équipe Oracle DevOps peut modifier ce paramètre sur demande. Si vous prévoyez de vous abonner à des événements pour lesquels la charge utile sera supérieure à 50 ko, ouvrez une demande de service dans My Oracle Support pour demander une taille d'événement maximale plus importante. Pour plus d'informations, reportez-vous à S'abonner à un événement dans la documentation d'API REST.Les ID utilisateur contenant un point-virgule ( :) ne peuvent pas être utilisés dans les appels d'API REST
Oracle Blockchain Platform vous permet d'associer un ID utilisateur contenant le signe deux-points ( :) à une inscription au proxy REST. Toutefois, cet ID utilisateur ne peut pas être utilisé dans les appels d'API REST lorsque l'authentification de base (nom utilisateur et mot de passe) est utilisée.Solution de contournement : assurez-vous que tous les utilisateurs associés aux inscriptions de proxy REST n'ont pas le signe deux-points ( :) dans leur ID utilisateur.
En-tête CORS non renvoyé pour les informations d'identification non valides
Les applications client qui appellent des transactions de proxy REST ne recevront pas l'en-tête CORS (Cross-Origin Resource Sharing) (l'en-tête Access-Control-Allow-Origin) dans la réponse si les informations d'identification envoyées dans la demande ne sont pas valides, incorrectes ou expirées.Erreur de statut des donneurs d'ordre lors de la création de canaux
Lors de la création d'un canal, l'erreur suivante peut apparaître :Failed to create the channel with error: aborted
Please check the orderers status.Solution de contournement : essayez à nouveau de créer le canal. Ce problème se produit par intermittence.
Débogage dans Visual Studio Code sous Microsoft Windows
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\nativeIl n'y a pas de solution pour cette erreur pour le moment.Environnements multiorganisation et générateur d'applications Blockchain
Dans un environnement comportant plusieurs organisations, vous devrez peut-être utiliser la console pour effectuer certaines opérations.
Pour redéployer le code chaîne sur le même canal via une instance de participant, utilisez la console afin de déployer le code chaîne.
(Hyperledger Fabric v2.2.4) Pour mettre à niveau le code chaîne, utilisez la console et approuvez manuellement le code chaîne des participants.
Le redimensionnement ne fonctionne que sur un seul composant à la fois
Vous ne pouvez redimensionner qu'un seul type de noeud à la fois. Par exemple, vous pouvez ajouter des noeuds homologues et modifier les paramètres de noeud homologue existants en même temps, mais si vous souhaitez également augmenter le stockage, vous devez le faire séparément.
En outre, vous ne pouvez redimensionner qu'un pair ou OSN à la fois. Par exemple, vous ne pouvez pas ajouter deux pairs en une seule opération.
Une horloge incorrecte du système d'exploitation peut entraîner des demandes rejetées
Si l'horloge locale du client ou du kit SDK est décalée de plus de 15 minutes, les demandes en provenance de ce dernier seront rejetées par le pair et le donneur d'ordre. Assurez-vous que votre horloge locale est correctement configurée.
Les applications Blockchain ne fonctionnent pas comme prévu en raison d'un SDK client plus ancien
Une application peut se comporter de manière inattendue si elle utilise une ancienne version du SDK client.
Solution : lisez la documentation décrivant les mises à jour du SDK client et modifiez vos applications selon vos besoins. Pour plus d'informations, reportez-vous à SDK pour Hyperledger Fabric dans la documentation Hyperledger Fabric.
Les instances Oracle Blockchain Platform du réseau ne peuvent pas gérer les certificats tiers révoqués
Si un réseau Oracle Blockchain Platform contient des organisations avec des certificats tiers ou des organisations Hyperledger Fabric et que leurs certificats sont révoqués, les certificats révoqués ne sont pas appliqués, ne s'affichent pas et ne peuvent pas être révoqués sur les instances Oracle Blockchain Platform du réseau.
Solution de contournement : utilisez la CLI ou le kit SDK Hyperledger Fabric natif pour importer le fichier de liste de certificats révoqués (CRL) de l'organisation.
La liste de canaux du fondateur contient des informations de création incorrectes et l'option Modifier les organisations de canal n'est pas disponible
Dans un réseau mixte (où une instance fondatrice et une instance de participant exécutent différentes versions d'Oracle Blockchain Platform), la liste de canaux du fondateur peut afficher un ID MSP incorrect pour un canal créé par un participant. Au lieu de l'ID MSP du participant, l'ID MSP du fondateur est affiché. Cela peut se produire après l'importation de la liste des certificats révoqués, la révocation ou l'application de la liste des certificats révoqués, ou la définition d'un pair d'ancrage sur un canal.
L'option Modifier les organisations de canal du canal est disponible uniquement pour l'instance affichée dans le champ Créé par. Si un ID MSP incorrect est affiché, le créateur du canal ne peut pas mettre à jour les organisations du canal.
Solution de contournement : il n'existe pas de solution pour contourner ce problème.
ImplicitMeta La stratégie n'est pas prise en charge par Oracle Blockchain Platform
Si vous utilisez l'interface de ligne de commande ou le kit SDK Hyperledger Fabric natif pour modifier la configuration d'un canal, certains paramètres de configuration indiqués ne peuvent pas être pris en charge par Oracle Blockchain Platform.
-
La CLI et le kit SDK Hyperledger Fabric natifs utilisent la stratégie de canal ImplicitMeta pour les lecteurs et les rédacteurs. Lorsque le canal utilise ces stratégies, la console Oracle Blockchain Platform ne peut pas garantir que les opérations d'administration (par exemple, modifier l'organisation) peuvent être traitées avec succès.
Solution de contournement : mettez à jour les stratégies de lecture et d'écriture vers les stratégies Signature et définissez les règles de stratégie selon vos besoins. Pour plus d'informations, voir Listes de contrôle d'accès (ACL) dans la documentation Hyperledger Fabric.
-
Si un canal utilise le type de stratégie ImplicitMeta et que dans la configuration de canal, vous remplacez mod_policy dans la section Groupes par Admins et qu'il y a plusieurs organisations dans le canal, vous ne pouvez pas utiliser Oracle Blockchain Platform pour gérer le canal. Par exemple, vous ne pouvez pas ajouter de nouvelles organisations au canal ou modifier la stratégie d'ACL du canal de quelque manière que ce soit, y compris en restaurant sa valeur d'origine.
Solution de contournement : utilisez le kit SDK ou la CLI Hyperledger Fabric native pour gérer le canal.
Le créateur du canal ne peut pas mettre à jour la configuration du canal
Lorsque vous utilisez le kit SDK ou la CLI Hyperledger Fabric native pour créer un canal, la stratégie de créateur n'est pas incluse dans le fichier configtx.yaml. Oracle Blockchain Platform exige que la stratégie de créateur autorise le créateur de canal à modifier la configuration d'un canal.
Solution de contournement : modifiez manuellement le fichier configtx.yaml pour ajouter la stratégie Creator.
Définition de blocktolive sur 0 dans l'adresse instantiateChaincode non prise en charge dans l'API REST
Si vous utilisez l'adresse instantiateChaincode de l'API REST et que vous définissez la valeur blocktolive sur 0 dans dataCollectionConfig, vous recevrez l'erreur suivante : {"respMesg" :"invalid argument"}.
Pour empêcher la purge des données de la base de données privée, Hyperledger Fabric vous demande de définir la valeur blocktolive sur 0. Toutefois, l'API REST Oracle Blockchain Platform ne prend pas en charge la définition de cette configuration sur 0.
Solution de contournement : utilisez la console pour instancier le code chaîne et, dans la section Collectes de données privées de la boîte de dialogue Instancier le code chaîne, définissez le champ blocktolive sur 0.
Le pair ne parvient pas à extraire les données privées d'un autre pair
Un pair peut ne pas extraire les données privées d'un autre pair si la valeur blocktolive d'une collecte de données privée est inférieure à 10 et que sa valeur maxPeerCount est inférieure au nombre total de pairs, sans inclure le pair approbateur. Cette valeur est définie lorsque vous utilisez la console pour créer une définition de collecte de données privée ou utiliser la CLI ou le SDK Hyperledger Fabric natif.
Solution : confirmez que la valeur blocktolive est supérieure ou égale à 10. Vous pouvez également confirmer que la valeur maxPeerCount est définie sur au moins le nombre total de pairs, sans inclure le pair endossant. Si nécessaire, vous pouvez rétablir ou mettre à niveau le code chaîne pour réinitialiser ces valeurs.
Incohérence des paramètres d'organisation et de stratégie de canal du créateur de canal
Vous pouvez utiliser la console pour créer un canal et définir l'ACL de votre organisation sur ReaderOnly. Une fois le nouveau canal enregistré, vous ne pouvez pas mettre à jour ce paramètre d'ACL à partir de l'option Modifier les organisations de canal du canal.
Toutefois, vous pouvez utiliser l'option Gérer les stratégies de canal de la console pour ajouter votre organisation à la stratégie Writers, qui écrase le paramètre d'ACL ReaderOnly du canal.
Solution de contournement : il n'existe pas de solution pour contourner ce problème.
Incompatibilité du traitement Fichier exporté et importé
Vous ne pouvez pas exporter et importer des fichiers (LCR, certificats, paramètres de service de commande et homologues) entre la console et les API REST.
Les fichiers exportés par la console et les API REST sont uniquement compatibles pour l'import avec le même composant. Par exemple, si vous exportez un homologue à l'aide de la console, vous ne pouvez pas l'importer avec l'API REST (vous pouvez uniquement l'importer avec la console). Si vous exportez un homologue avec l'API REST, vous ne pouvez pas l'importer avec la console (l'import peut être effectué uniquement avec l'API REST).
Solution de contournement : il n'existe pas de solution pour contourner ce problème.
Exigences relatives aux noms de code chaîne
Les exigences en matière de nom et de version de code chaîne Oracle Blockchain Platform sont différentes des exigences d'Hyperledger Fabric. Vous devez utiliser les exigences d'Oracle Blockchain Platform lorsque vous déployez un code chaîne à partir de la console ou du client Hyperledger Fabric. Si vous ne respectez pas ces exigences lors du déploiement à partir du client Hyperledger Fabric, le code chaîne peut être répertorié de manière incorrecte dans la console.
Solution de contournement : utilisez les règles suivantes lors du déploiement d'un nom et d'une version de code chaîne.
- Utilisez des caractères alphanumériques ASCII, des tirets (-) et des traits de soulignement (_).
- Le nom doit commencer et se terminer uniquement par des caractères alphanumériques ASCII. Par exemple, vous ne pouvez pas utiliser de noms tels que _mychaincode ou mychaincode_.
- Les tirets (-) et les traits de soulignement (_) doivent être suivis de caractères alphanumériques ASCII. Par exemple, vous ne pouvez pas utiliser de noms tels que my--chaincode ou my-_chaincode.
- Le nom et la version peuvent chacun comporter jusqu'à 64 caractères.
- La version de code chaîne peut également contenir des points (.) et des signes plus (+).
Comportement du sélecteur de date et d'heure
Le sélecteur de date et d'heure Oracle Blockchain Platform ne se comporte pas comme prévu. Vous utilisez le sélecteur de date et d'heure pour filtrer les éléments tels que les fichiers journaux ou l'activité du livre.
Solution de contournement : utilisez les informations suivantes pour utiliser le sélecteur de date et d'heure.
- Si vous sélectionnez une période spécifique (par exemple, Dernier jour), puis que vous la sélectionnez à nouveau pour réexécuter la requête, celle-ci n'est pas réexécutée. Pour obtenir les dernières informations, cliquez sur le bouton Actualiser.
- Si vous n'avez pas défini le fuseau horaire sur votre ordinateur, lorsque vous sélectionnez l'option Personnalisé, vous devez indiquer l'heure de début et l'heure de fin dans GMT. Toutefois, si vous définissez le paramètre de fuseau horaire sur GMT dans les préférences (dans la console, sélectionnez le nom de votre instance, puis cliquez sur Préférences, puis sur Paramètre de fuseau horaire), le fuseau horaire de la console est automatiquement converti en GMT.
Problèmes connus d'Oracle Cloud pour Oracle Blockchain Platform sur Oracle Cloud Infrastructure
F94756-08