Data Virtualization A atualização da instância falha e reverte para a versão anterior

Data Virtualization A atualização da instância da versão 4.8.7 para 5.2.2 falha, e o comando cpd-cli service-instance exibe a instância com a versão antiga e com o PROVISIONED status.

Sintomas

Durante uma atualização da instância do Data Virtualization da versão 4.8.7 para 5.2.2, a Big SQL versão do recurso personalizado (CR) especificada no .spec.version campo pode reverter para a versão anterior.

Consequentemente, o comando cpd-cli service-instance exibe a instância com a versão antiga, juntamente com o status PROVISIONED de provisionamento (em vez de UPGRADED).

Diagnosticando o Problema

Verifique se o problema é causado por um BIGSQL.LIVELINESS problema na tabela:

  1. Salve uma cópia do log do Db2U pod do operador:
    oc -n $PROJECTOPERATOR logs - - timestamps $(oc -n $PROJECT_OPERATOR get pods | grep -i db2u-operator-manager | cut -d' ' -f 1) > db2u-operator.log
  2. Verifique db2u-operator.log se há os seguintes erros relacionados ao probe de disponibilidade Data Virtualization, semelhantes a este exemplo:
    2025-10-17.04:12:49.111: [ERROR] - The liveness probe failed
    2025-10-17.04:12:49.129: [ERROR] - Failed liveness probe check
  3. Execute manualmente o teste de disponibilidade. Certifique-se de substituir <DV_INSTANCE_NAMESPACE> pelo namespace da sua instância do Data Virtualization.
    oc -n <DV_INSTANCE_NAMESPACE> rsh c-db2u-dv-db2u-0 -- su - db2inst1 -c "/opt/dv/current/run_time/liveness.sh"
  4. "BIGSQL.LIVELINESS" is an undefined nameSe o comando anterior exibir o seguinte erro " SQL0204N ", passe para a próxima seção para resolver o problema.
    2025-10-17_18.29.25.092_UTC  ERROR Not able to write in the table
    2025-10-17_18.29.25.183_UTC  ERROR DB21034E  The command was processed as an SQL statement because it was not a
    valid Command Line Processor command.  During SQL processing it returned:
    SQL0204N  "BIGSQL.LIVELINESS" is an undefined name.  SQLSTATE=42704
    2025-10-17_18.29.25.274_UTC  ERROR DV liveness probe failed

Resolvendo o problema

  1. Para resolver o problema, faça login no servidor principal Data Virtualization como usuário db2inst1. Certifique-se de substituir <DV_INSTANCE_NAMESPACE> pelo namespace da sua instância do Data Virtualization.
    oc -n <DV_INSTANCE_NAMESPACE> rsh c-db2u-dv-db2u su - db2inst1
  2. Conecte-se ao banco Db2 de dados:
    db2 connect to bigsql
  3. Recrie a BIGSQL.LIVELINESS tabela:
    1. db2 "call syshadoop.hcat_sync_objects('BIGSQL','LIVELINESS')"
    2. db2 "DROP TABLE BIGSQL.LIVELINESS PURGE;"
    3. db2 "CREATE EXTERNAL HADOOP TABLE BIGSQL.LIVELINESS(TEST VARCHAR(20));"
  4. Execute novamente o teste de disponibilidade do ` Data Virtualization ` no pod principal ` Data Virtualization ` como usuário ` db2inst1 `:
    /opt/dv/current/run_time/liveness.sh

    Agora você pode iniciar a atualização da instância do Data Virtualization por meio do comando `cpd-cli service-instance upgrade`.