The Database Driver Router (LADB)

Lawson makes use of drivers for interfacing between the RDBMS system and the Thread-Safe API, a method for accessing the database messaging layer that allows for simultaneous use by multiple client applications without conflicts. (More information about the messaging layer is in "Chapter 4: Batch and Online Transaction Processing."

There is a driver for each database platform supported by Lawson. When requests for data come in, LADB is responsible for orchestrating access to the database drivers from all database clients. At system startup time, LADB performs all database setup, including the creation of structures used in the messaging layer. Nothing else in the system can be started until LADB starts and initializes the MDBS.

During system operation, user applications contact LADB to request access to a table in a particular data area. If necessary, the LADB process starts the associated database driver and returns information to the user application that allows it to communicate with the driver (for example, the identifier that specifies the message queue on which the user application should place request messages). After LADB has opened the connection to the database on behalf of the user application, the application communicates directly with the database driver. When the application has finished using a file in a given data area, it sends a message to LADB to close the table. If this is the last open table being managed by the driver, the driver is pooled for reuse.

To summarize, LADB is invoked by user applications only to open and close the database connection. At all other times, the user application interacts directly with a database driver. This design improves performance by avoiding a potential bottleneck in the execution of LADB itself.