이 절에서는 번들로 제공되는 Sun JDBC 드라이버와 관련된 알려진 문제점과 해결 방법을 설명합니다.
응용 프로그램에서 한 트랜잭션에서 3000개 이상의 PreparedStatement 개체를 생성하는 경우 DB2에서 다음 오류가 발생할 수 있습니다.
[sunm][DB2 JDBC Driver] No more available statements. Please recreate your package with a larger dynamicSections value.
연결 풀 정의에 다음 등록 정보를 추가하여 드라이버에서 더 큰 동적 섹션 값으로 DB2 패키지를 다시 바인드하도록 합니다.
createDefaultPackage=true replacePackage=true dynamicSections=1000
연결 풀 구성에 대한 자세한 내용은 Sun Java System Application Server 9.1 Administration Guide를 참조하십시오.
위의 PrepardStatement 오류와 관련하여 발생할 수 있는 다른 오류 메시지는 다음과 같습니다.
[sunm][DB2 JDBC Driver][DB2]Virtual storage or database resource is not available.
DB2 서버 구성 매개 변수 APPLHEAPSZ를 증가시킵니다. 권장 값은 4096입니다.
TRANSACTION_SERIALIZABLE 격리 수준 응용 프로그램에서 TRANSACTION_SERIALIZABLE 격리 수준을 사용하고 위에 제시한 매개 변수 중 하나를 사용하면 연결하는 동안 응용 프로그램이 중단될 수 있습니다.
연결을 위해 바람직한 격리 수준을 설정하려면 상응하는 연결 풀을 같은 격리 수준에 만들어야 합니다. 지침은 Sun Java System Application Server 9.1 Administration Guide를 참조하십시오.
호스트 시스템 또는 Solaris 영역을 재부트하거나 Application Server를 시작한 후에 번들로 제공된 Java DB 데이터베이스가 자동으로 다시 시작되지 않습니다. 이 문제는 버그가 아니며 번들로 제공되는 응용 프로그램이나 타사 응용 프로그램에서 일어날 수 있는 동작입니다. 문제는 Application Server 인스턴스보다 먼저 Java DB를 시작해야 한다는 것입니다.
호스트 시스템이나 Solaris 영역을 재부트한 후에는Application Server를 시작하기 전에 Java DB를 시작해야 합니다. 예를 들면 다음과 같습니다.
/opt/SUNWappserver/appserver/bin/asadmin start-database |
asadmin 명령 옵션에 대한 자세한 내용은 Sun Java System Application Server 9.1 Quick Start Guide 의 Application Server Administration Tools를 참조하십시오.