Skip to main content
Blackboard Help

Configure Database Connections

Establishing a connection from the application container to the database server is time consuming. As a result, JDBC connection pooling is widely used in Blackboard Learn.

Blackboard Learn has multiple schemas that are used for a variety of functions. The core schema is BBLEARN (legacy: BB_BB60), which is where the bulk of key database objects and access reside. The BBLEARN_ADMIN schema is an administrative schema accessed by the start-up utilities and some administrative functions. The BBLEARN_STATS (legacy: BB_BB60_STATS) schema is an operational data store that is used for reporting to ease demand on BBLEARN (legacy: BB_BB60). BBLEARN_STATS (legacy: BB_BB60_STATS) is not accessible using the Blackboard Learn User Interface (UI).

Connections from the Apache Tomcat to the database are managed using parameters in the file.

This section provides recommended settings for the four key bbconfig.database parameters.

For steps to edit the file, see File.

Database Parameters in

The following table describes each parameter and its recommended setting.

Database Parameter Recommended Settings
Parameter Name Description Recommended Setting
bbconfig.appserver.minthreads Minimum number of threads created for Tomcat 100
bbconfig.appserver.maxthreads Maximum number of threads allocated to Tomcat for 64-bit 4 GB RAM in the heapspace
This setting limits the number of requests that can be simultaneously processed by Tomcat.
This number should match the bbconfig.unix.httpd.maxclients setting for Apache on UNIX platforms.
To learn more, see Sizing the Maximum Thread Count.
bbconfig.min.heapsize.tomcat Minimum heap size allocated to the Tomcat JVM 1/2 of or equal to max.heap size.tomcat
bbconfig.max.permsize.tomcat Maximum perm space allocated to the Tomcat JVM 320m
bbconfig.max.stacksize.tomcat Stack size for each thread in the Tomcat JVM 170-300k
Additional settings used to configure the JVM
To learn more, see Using Non-Standard (-XX) JVM Arguments.
User defined
Maximum number of connections waiting to serve database requests

The BBLEARN (legacy: BB_BB60) connection pool is the primary database connection pool interface for the Blackboard schema in Tomcat. Blackboard recommends that this value be sized conservatively based on need and usage. Start with a maximum value of 100, and then increase the maximum size as the Tomcat application threads increase.

Optimally, this value should be equal to, but not greater than, the bbconfig.appserver.maxthreads parameter setting.

JDBC connection consumption is a symptom of a performance issue or degradation. Increasing the JDBC connection count will not always solve a performance issue. Performance issues should be diagnosed by identifying bottlenecks at their source.

Number of connections waiting to serve database requests 10
Initial number of connections waiting to serve database requests for SQL Server 10
bbconfig.database.instance.timeout Time window in which database transactions must be processed before a timeout occurs 60-300