Problemi noti per Oracle Blockchain Platform
Scopri i problemi che potresti riscontrare quando utilizzi Oracle Blockchain Platform e come risolverli.
Versioni e funzioni supportate per questa release
Nuovi problemi noti in questa release
Problemi inizialmente segnalati in rilasci precedenti
- La creazione dell'istanza supporta solo il bundle OpenLDAP
- Ricerca automatica peer non riuscita durante la convalida del certificato
- Visualizzazione log non aggiornata per un nodo
- Certificati CA radice personalizzati non supportati
- Aggiornamento da release precedenti non supportato
- Messaggio di errore durante l'utilizzo dell'implementazione XA di Oracle Blockchain Platform
- La console non risponde quando si esegue il login
- Impossibile reinstallare un codice concatenato con installazione non riuscita in precedenza
- Le istanze di Oracle Blockchain Platform della rete non sono in grado di gestire i certificati revocati
- Il creatore del canale non può aggiornare la configurazione del canale
- Il peer non è in grado di estrarre dati privati da un altro peer
- Incoerenza impostazioni organizzazione creatore canale e criteri canale
- Incompatibilità file esportato e importato
- Requisiti nome codice concatenato
- Comportamento selettore data e ora
Versione Hyperledger Fabric supportata
Oracle Blockchain Platform 24.1.3 supporta Hyperledger Fabric 2.5.7.
Browser supportati
Se la console non funziona come previsto, verificare che si stia utilizzando la versione più recente di un browser supportato.
Oracle Blockchain Platform supporta i seguenti browser:
- Mozilla Firefox
- Google Chrome
- Safari
- Microsoft Edge/Internet Explorer
Interoperabilità delle versioni di Hyperledger Fabric
Oracle Blockchain Platform non supporta l'uso delle istanze basate su Hyperledger Fabric v1.4.7 e su Hyperledger Fabric v2.x nella stessa rete di blockchain.Soluzione alternativa: non tentare di eseguire diverse versioni principali di Hyperledger Fabric sulla stessa rete blockchain.
Funzionalità non supportata dalle versioni precedenti
Le versioni precedenti di Oracle Blockchain Platform Enterprise Edition supportavano load balancer e moduli di sicurezza hardware. Queste non sono supportate da Oracle Blockchain Platform 24.1.3.
Storage completo per colleghi o ordini
#kubectl logs <orderer-pod> -n <instance-namespace> -100fErrori potenziali restituiti:path=/u01/work/hyperledger/production/orderer/etcdraft/wal/xjfrgv.tmp/0000000000000000-0000000000000000.wal
segment-bytes=64000000 error="no space left on device"o2025-06-26T04:24:45.140179751Z [35m2025-06-26 04:24:45.140 UTC 0181 PANI[0m [orderer.commmon.multichannel]
[35;1minitAppChannelsWhenSystemChannelExists[0m -> Failed to create chain support for channel 'xjfrgv',
error: error creating consenter for channel: xjfrgv: failed to restore persisted raft data: failed to create or read
WAL: failed to initialize WAL: no space left on devicekubectl get orderernode -n <instancename>e la modifica del nodo:kubectl edit orderernode obp-AAA-ZZZ-ordererZ -n instancenameNella sezione spec, storage, size, aumentare le dimensioni da 2Gi a 10Gi e salvare il file.
kubectl get peer -n <instancename>Modificare ciascun peer:# kubectl edit peer obp-AAA-ZZZ-peerZ -n instancenameNelle sezioni spec, storage, chaincode e peer, aumentare le dimensioni da 2Gi a 10Gi e salvare il file.
kubectl get sts -n instancename
kubectl scale sts/obp-AAA-ZZZ-ordererZ -n instancename --replicas=0
kubectl scale sts/obp-AAA-ZZZ-ordererZ -n instancename --replicas=1
kubectl scale sts/obp-AAA-ZZZ-peerZ -n instancename --replicas=0
kubectl scale sts/obp-AAA-ZZZ-peerZ -n instancename --replicas=1Arresto dell'istanza occasionalmente non riuscito
Se l'arresto dell'istanza non riesce in modo corretto, provare la procedura riportata di seguito.
- Ottenere l'UUID dell'istanza:
Il valore# Replace username:password with the instance's admin user credentials AUTH_BEARER=$(echo -n 'username:password' | base64) curl -k --location 'https://<control-plane-url>/api/v1/blockchainPlatforms/instances' \ --header "Authorization: Basic $AUTH_BEARER"idrestituito da questa API è UUID. - Identificare il componente che causa l'interruzione non riuscita:
Il campokubectl get namespace "<instance-namespace>" -o json \ | tr -d "\n" | sed "s/\"finalizers\": \[[^]]\+\]/\"finalizers\": []/" \ | kubectl replace --raw /api/v1/namespaces/<instance-namespace>/finalize -f - | jq -r '.status'NamespaceContentRemainingpuò contenere più risorse a seconda dello stato dell'istanza. Queste rivelano le risorse che impediscono l'interruzione dello spazio di nomi. - Riavviare
hlf-operatoreobp-operator, che riavvieranno il flusso di eliminazione per l'istanza.# Restart hlf-operator kubectl rollout restart deployment -n obp-cp hlf-operator-controller-manager # Restart obp-operator kubectl rollout restart deployment -n obp-cp obp-operator - Il processo di interruzione verrà ora riavviato. Per verificare se l'interruzione è riuscita, è possibile rieseguire l'API utilizzata nel passo 2 per vedere quali componenti sono ancora attivi e lo stato dell'interruzione. Se l'interruzione ha avuto esito positivo, la richiesta API non riuscirà.
- Per confermare che lo spazio di nomi dell'istanza sia stato terminato, assicurarsi che lo spazio di nomi non sia più elencato:
kubectl get ns
# Replace username:password with the instance's admin user credentials
AUTH_BEARER=$(echo -n 'username:password' | base64)
curl -k --location --request DELETE 'https://<control-plane-url>/api/v1/blockchainPlatforms/instances/<instance-uuid>' \
--header "Authorization: $AUTH_BEARER"La creazione dell'istanza supporta solo il bundle OpenLDAP
Quando si crea un'istanza di Oracle Blockchain Platform, anche se esistono opzioni per aggiungere configurazioni LDAP per diversi tipi di LDAP, è necessario utilizzare il valore OpenLDAP predefinito in bundle con il prodotto.
Soluzione alternativa: sincronizzare i dati del sistema LDAP esterno con l'OpenLDAP predefinito fornito in bundle con Oracle Blockchain Platform, quindi continuare con la creazione dell'istanza.
Ricerca automatica peer non riuscita durante la convalida del certificato
Se l'applicazione client utilizza il modulofabric-sdk-go, l'applicazione potrebbe non riuscire a causa della convalida del certificato durante il processo di ricerca automatica peer a causa di una versione non supportata di fabric-sdk-go.
fabric-sdk-go, eseguire l'aggiornamento alla versione seguente:github.com/hyperledger/fabric-sdk-go v1.0.1-0.20240123083657-5d6ca326e01bVisualizzazione log non aggiornata per un nodo
Nell'interfaccia utente della console, se si visualizzano i log per un determinato nodo, passare a un riquadro diverso e quindi tornare ai log per il nodo iniziale, i log non verranno recuperati di nuovo.
Soluzione alternativa: aggiornare la pagina del browser per recuperare i log più recenti.
Certificati CA radice personalizzati non supportati
I certificati CA radice CA di Hyperledger Fabric sono autofirmati. Questa release di Oracle Blockchain Platform non supporta la firma di questi certificati con certificati CA root o intermedi forniti dal cliente.
Aggiornamento da release precedenti non supportato
Non è possibile eseguire l'upgrade a Oracle Blockchain Platform Enterprise Edition 24.1 da Oracle Blockchain Platform Enterprise Edition 21.1 o Oracle Blockchain Platform Enterprise Edition 19.3.
Soluzione alternativa: non esistono soluzioni alternative per questo problema.
Messaggio di errore durante l'utilizzo dell'implementazione XA di Oracle Blockchain Platform
Se si scarica la libreria Java che implementa il protocollo XA e quindi la si utilizza in un ambiente in cui è installata una versione Maven successiva alla 3.8.1, viene visualizzato il seguente messaggio di errore: le informazioni sull'artifact non sono valide e contengono caratteri non validi.
Soluzione alternativa: il file .pom nella libreria scaricabile ha un segnaposto per il numero di versione. Aggiornare il file pom.xml e modificare il numero di versione in 24.1.3.
La console non risponde quando si esegue il login
Quando si tenta di eseguire il login alla console del servizio, l'interfaccia utente potrebbe non rispondere.
Questo comportamento è corretto dalla seguente patch: ORACLE BLOCKCHAIN PLATFORM ENTERPRISE EDITION (OBPEE) - 24.1.3 - PATCHSET-1, che è la patch numero 36929129. Per ulteriori informazioni sull'installazione della patch, vedere Patch di Oracle Blockchain Platform.
Impossibile reinstallare un codice concatenato con installazione non riuscita in precedenza
Se si tenta di reinstallare un codice concatenato con lo stesso nome di un codice concatenato da un'installazione precedentemente non riuscita, il processo di installazione non riesce di nuovo. Ciò può verificarsi quando un pod con il nome del codice concatenato è stato creato per il precedente tentativo di installazione e quindi non è stato eliminato.
Questo comportamento è corretto dalla seguente patch: ORACLE BLOCKCHAIN PLATFORM ENTERPRISE EDITION (OBPEE) - 24.1.3 - PATCHSET-1, che è la patch numero 36929129. Per ulteriori informazioni sull'installazione della patch, vedere Patch di Oracle Blockchain Platform.
Le istanze di Oracle Blockchain Platform della rete non sono in grado di gestire i certificati revocati
Se una rete Oracle Blockchain Platform contiene organizzazioni Hyperledger Fabric e i relativi certificati vengono revocati, i certificati revocati non vengono applicati, non vengono visualizzati e non possono essere revocati dalle istanze di Oracle Blockchain Platform della rete.
Soluzione alternativa: utilizzare l'interfaccia CLI o l'SDK nativo di Hyperledger Fabric per importare il file della lista di revoca dei certificati (CRL) dell'organizzazione.
Il creatore del canale non può aggiornare la configurazione del canale
Quando si utilizza l'interfaccia CLI o l'SDK nativo di Hyperledger Fabric per creare un canale, il criterio Creator non viene incluso nel file configtx.yaml. Oracle Blockchain Platform richiede il criterio Creator per consentire all'autore del canale di modificare la configurazione di un canale.
Soluzione alternativa: modificare manualmente il file configtx.yaml per aggiungere il criterio Creator.
Il peer non è in grado di estrarre dati privati da un altro peer
Un peer può non riuscire a estrarre dati privati da un altro peer se il valore blocktolive di una raccolta dati privata è inferiore a 10 e il relativo valore maxPeerCount è inferiore al numero totale di peer, escluso il peer di approvazione. Questo valore viene impostato quando si utilizza la console per creare una definizione di raccolta dati privata o utilizzare l'interfaccia CLI o l'SDK nativo di Hyperledger Fabric.
Soluzione alternativa: confermare che il valore blocktolive sia impostato su un valore maggiore o uguale a 10. In alternativa, confermare che maxPeerCount è impostato su un valore non inferiore al numero totale di pari livello, escluso il peer di approvazione. Se necessario, è possibile ricreare un'istanza o aggiornare il codice concatenato per reimpostare questi valori.
Incoerenza impostazioni organizzazione creatore canale e criteri canale
È possibile utilizzare la console per creare un canale e impostare l'ACL dell'organizzazione su ReaderOnly. Dopo aver salvato il nuovo canale, non è possibile aggiornare questa impostazione ACL dall'opzione Modifica organizzazioni canale del canale.
Tuttavia, è possibile utilizzare l'opzione Gestisci criteri canale della console per aggiungere l'organizzazione al criterio Writers, che sovrascrive l'impostazione ACL ReaderOnly del canale.
Soluzione alternativa: non esistono soluzioni alternative per questo problema.
Incompatibilità file esportato e importato
Impossibile esportare e importare file (CRL, certificati, impostazioni del servizio di ordinazione e peer) tra la console e le API REST.
I file esportati dalla console e dalle API REST sono compatibili solo per l'importazione con lo stesso componente. Ad esempio, se si esporta un peer utilizzando la console, non sarà possibile importarlo con l'API REST (è possibile importarlo solo con la console). Inoltre, se si esporta un peer con l'API REST, non sarà possibile importarlo con la console (è possibile eseguire l'importazione solo con l'API REST).
Soluzione alternativa: non esistono soluzioni alternative per questo problema.
Requisiti nome codice concatenato
I requisiti di versione e nome del codice concatenato di Oracle Blockchain Platform sono diversi dai requisiti di Hyperledger Fabric. È necessario utilizzare i requisiti di Oracle Blockchain Platform quando si distribuisce un codice concatenato dalla console o dal client Hyperledger Fabric. Se non si seguono questi requisiti durante la distribuzione dal client Hyperledger Fabric, il codice concatenato potrebbe essere elencato in modo errato nella console.
Soluzione alternativa: utilizzare le regole riportate di seguito quando si distribuisce un nome e una versione di un codice concatenato.
- Utilizzare caratteri alfanumerici ASCII, lineette (-) e caratteri di sottolineatura (_).
- Il nome deve iniziare e terminare solo con caratteri alfanumerici ASCII. Ad esempio, non è possibile utilizzare nomi quali _mychaincode o mychaincode_.
- I trattini (-) e i caratteri di sottolineatura (_) devono essere seguiti da caratteri alfanumerici ASCII. Ad esempio, non è possibile utilizzare nomi come my--chaincode o my-_chaincode.
- La lunghezza massima di nome e versione è di 64 caratteri.
- La versione del codice concatenato può contenere anche un punto (.) e segni più (+).
Comportamento selettore data e ora
Il selettore data e ora di Oracle Blockchain Platform non funziona come previsto. Il selettore data e ora consente di filtrare gli elementi quali i file di log o l'attività del libro contabile.
Soluzione alternativa: utilizzare le seguenti informazioni per utilizzare il selettore data e ora.
- Se si seleziona un periodo di tempo specifico (ad esempio, Ultimo giorno) e quindi lo si seleziona di nuovo per eseguire di nuovo la query, la query non verrà eseguita di nuovo. Per ottenere le informazioni più recenti, fare clic sul pulsante Aggiorna.
- Se il fuso orario non è stato impostato sul computer, quando si seleziona l'opzione Personalizzato, è necessario specificare l'ora di inizio e l'ora di fine nel GMT. Tuttavia, se si imposta l'impostazione del fuso orario su GMT nelle preferenze (nella console selezionare il nome dell'istanza, fare clic su Preferenze, quindi su Impostazione fuso orario), il fuso orario nella console verrà convertito automaticamente in GMT.
Problemi noti di Oracle Database per Oracle Blockchain Platform