Manual:$wgDBOracleDRCP

Database settings: $wgDBOracleDRCP
When set to true, enables persistent connection with DRCP on Oracle.
Introduced in version:1.22.0 (Gerrit change 65279; git #I2be7120)
Removed in version:1.34.0 (Gerrit change 522044; git #Iea948f7)
Allowed values:(boolean)
Default value:false

Details edit

  Warning: This feature is currently experimental.

Set true to enable Oracle DCRP (supported from 11gR1 onward). To use this feature, set to true and use a datasource defined as POOLED (i.e. in tnsnames definition set server=pooled in connect_data block).

Starting from 11gR1 you can use DCRP (Database Resident Connection Pool) that maintains established sessions and reuses them on new connections.

Not completely tested, but it should fall back on normal connection in case the pool is full or the datasource is not configured as pooled.

And the other way around; using oci_pconnect on a non pooled datasource should produce a normal connection. When it comes to frequent shortlived DB connections like with MW Oracle tends to mess up. The problem is the driver connects to the database reasonably fast, but establishing a session takes time and resources. MW does not rely on session state (as it does not use features such as package variables) so establishing a valid session is in this case an unwanted overhead that just slows things down.

See also edit