Moodle PHP Documentation 4.5
Moodle 4.5dev (Build: 20240606) (d3ae1391abe)
perf_postgres Class Reference
Inheritance diagram for perf_postgres:
adodb_perf

Public Member Functions

 __construct (&$conn)
 
 _CPULoad ()
 
 _DBParameter ($sql)
 
 _ExpensiveSQL ($numsql=10)
 
 _SuspiciousSQL ($numsql=10)
 
 CheckMemory ()
 
 clearsql ()
 
 CPULoad ()
 
 CreateLogTable ()
 
 DBParameter ($param)
 
 DoSQLForm ()
 
 ExpensiveSQL ($numsql=10)
 
 Explain ($sql, $partial=false)
 
 HealthCheck ($cli=false)
 
 HealthCheckCLI ()
 
 InvalidSQL ($numsql=10)
 
 MemInfo ()
 
 optimizeDatabase ()
 Reorganise current database.
 
 OptimizeTable ( $table, $mode=ADODB_OPT_LOW)
 Reorganise the table-indices/statistics/.
 
 optimizeTable ($table, $mode=ADODB_OPT_LOW)
 
 OptimizeTables ()
 
 Poll ($secs=5)
 
 PollParameters ()
 
 SplitSQL ($sql)
 
 SuspiciousSQL ($numsql=10)
 
 Tables ($orderby='1')
 
 Tracer ($sql)
 
 UI ($pollsecs=5)
 
 WarnCacheRatio ($val)
 

Static Public Member Functions

static table ($newtable=false)
 

Public Attributes

 $_lastLoad
 
 $cliFormat = "%32s => %s r\n"
 
 $color = '#F0F0F0'
 
 $conn
 
 $createTableSQL
 
 $explain = true
 
 $helpurl = '<a href="https://adodb.org/dokuwiki/doku.php?id=v5:performance:logsql">LogSQL help</a>'
 
 $maxLength = 2000
 
 $optimizeTableHigh = 'VACUUM ANALYZE %s'
 
 $optimizeTableLow = 'VACUUM %s'
 
 $settings
 
 $sql1 = 'sql1'
 
 $table = '<table border=1 bgcolor=white>'
 
 $tablesSQL
 
 $titles = '<tr><td><b>Parameter</b></td><td><b>Value</b></td><td><b>Description</b></td></tr>'
 
 $warnRatio = 90
 

Member Function Documentation

◆ Explain()

perf_postgres::Explain ( $sql,
$partial = false )

Reimplemented from adodb_perf.

◆ optimizeDatabase()

adodb_perf::optimizeDatabase ( )
inherited

Reorganise current database.

Default implementation loops over all MetaTables() and optimize each using optmizeTable()

Author
Markus Staab
Return values
booltrue on success, false on error
Examples
/home/runner/work/phpdoc/phpdoc/.moodle/lib/adodb/adodb-perf.inc.php.

◆ OptimizeTable()

adodb_perf::OptimizeTable ( $table,
$mode = ADODB_OPT_LOW )
inherited

Reorganise the table-indices/statistics/.

. depending on the given mode. Default Implementation throws an error.

Parameters
stringtable name of the table to optimize
intmode optimization-mode ADODB_OPT_HIGH for full optimization ADODB_OPT_LOW for CPU-less optimization Default is LOW ADODB_OPT_LOW
Author
Markus Staab
Return values
booltrue on success, false on error
Examples
/home/runner/work/phpdoc/phpdoc/.moodle/lib/adodb/adodb-perf.inc.php.

◆ optimizeTable()

perf_postgres::optimizeTable ( $table,
$mode = ADODB_OPT_LOW )
See also
adodb_perf\optimizeTable()

◆ Tables()

adodb_perf::Tables ( $orderby = '1')
inherited

Reimplemented in perf_db2.

Member Data Documentation

◆ $createTableSQL

perf_postgres::$createTableSQL
Initial value:
= "CREATE TABLE adodb_logsql (
created timestamp NOT NULL,
sql0 varchar(250) NOT NULL,
sql1 text NOT NULL,
params text NOT NULL,
tracer text NOT NULL,
timer decimal(16,6) NOT NULL
)"

◆ $tablesSQL

perf_postgres::$tablesSQL
Initial value:
=
"select a.relname as tablename,(a.relpages+CASE WHEN b.relpages is null THEN 0 ELSE b.relpages END+CASE WHEN c.relpages is null THEN 0 ELSE c.relpages END)*8 as size_in_K,a.relfilenode as "OID::" from pg_class a left join pg_class b
on b.relname = 'pg_toast_'||trim(a.relfilenode)
left join pg_class c on c.relname = 'pg_toast_'||trim(a.relfilenode)||'_index'
where a.relname in (select tablename from pg_tables where tablename not like 'pg_%')"

The documentation for this class was generated from the following file: