제한시간 초과 오류 해결

데이터베이스에 대한 연결을 설정할 때 제한시간 초과 오류 해결.

증상

Cloud Pak for Data에서 Db2 Data Management Console을(를) 탐색할 때 다음 오류 메시지가 표시될 수 있습니다.
Timeout getting a transport object from pool.
      ERRORCODE=-4210, SQLSTATE=57033

원인

securityMechanism=9 특성을 JCC 클라이언트 측에서 SRVCON_AUTH = SERVER_ENCRYPT 구성을 사용하는 데이터베이스에 연결하는 데 사용하는 경우 연결을 설정하는 프로세스가 평소보다 오래 걸립니다. 때때로 데이터베이스 서버를 다시 시작한 후 처음 연결을 시도하면 수십 초 정도 걸릴 수 있습니다. 데이터베이스에 대한 연결을 설정하는 데 소요된 시간이 connectionTimeout 제한사항을 초과하면 -4210 오류가 발생할 수 있습니다.

문제점 해결

loginTimeout의 기본값은 30초이고 connectionTImeout은 0입니다. loginTimeout 또는 connectionTImeout 값은 사용자 정의할 수 있습니다. connectionTImeout이 양수 값으로 설정된 경우 해당 값은 연결에 설정된 다른 모든 제한시간 값(예: loginTimeout)을 겹쳐씁니다. 따라서 이 문제점을 해결하려면 다음 단계를 수행하여 connectionTImeout을 양수 값으로 설정하십시오.

  1. 인스턴스 ID를 가져오십시오.
    oc get dmc -n ${PROJECT_CPD_INST_OPERANDS}
  2. configmap ${DB2INSTANCDID} 편집
    oc edit cm ${DB2INSTANCDID}
  3. 50001/BLUDB뒤에 :connectionTImeout=40 를 추가하십시오. configmap의 프로파일 예제가 아래에 제공됩니다.
    profile: '{"DB_IDENTITY_HASH":"-88665374","URL":"jdbc:db2://c-db2oltp-1635255394239239-db2u-engn-svc:50001/BLUDB:connectionTimeout=40","_PROFILE_INIT_":"true","collectionCred":{"isCollectionCred":"true","password":"changeit","refreshToken":"","securityMechanism":"9","user":"db2inst1"},"dataServerExternalType":"DASHDBTX","dataServerType":"DB2LUW","databaseName":"BLUDB","databaseVersion":"11.5.0","databaseVersion_VRMF":"11.5.6.0","dbUUID":"a3046c10-9ce1-4d1a-9fcd-7a82b16049cc","host":"c-db2oltp-1635255394239239-db2u-engn-svc","isInstPartitionable":"false","lastUpdatedTimeStamp":"1635256696467","name":"db2oltp-1635255394239239","namespace":"","plan":"smp","port":"50001","sslCertLocation":"/opt/ibm-datasrvrmgr/Config/cpd-internal-tls/ca.crt","sslConnection":"true","timeZone":"0","timeZoneDiff":"0"}'
      profileName: db2oltp-1635255394239239
        
  4. 변경사항을 configmap에 저장하십시오.

문제가 지속되면 connectionTimeout의 값을 조정하십시오.