Classes

Coverage Distribution

Complexity

Methods

Coverage Distribution

Complexity

Insufficient Coverage

Method Coverage
getServerInfo0%
schemaExists0%
doFlushSession0%
doUnlock0%
doLock0%
doLockIsFree0%
streamStatementEnd0%
addQuotes0%
strencode0%
decodeBlob0%
encodeBlob0%
fieldInfo0%
roleExists0%
constraintExists0%
getInsertIdColumnForUpsert0%
sequenceExists0%
tableExists0%
relationExists0%
getServerVersion0%
getCoreSchemas0%
getCoreSchema0%
determineCoreSchema0%
setSearchPath0%
getSearchPath0%
getSchemas0%
getCurrentSchema0%
getSoftwareLink0%
serverIsReadOnly0%
getAttributes0%
listTables0%
doFlushSession0%
consumeTrxId0%
getTrxId0%
trxLevel0%
__construct0%
getCleanedSql0%
getWriteTable0%
getFlags0%
getSQL0%
fieldHasBit0%
getVerb0%
isWriteQuery0%
__construct0%
doHandleSessionLossPreconnect0%
attachDatabase0%
truncateTable0%
listTables0%
doUnlock0%
doLock0%
doLockIsFree0%
decodeBlob0%
encodeBlob0%
strencode0%
getSoftwareLink0%
isKnownStatementRollbackError0%
isConnectionError0%
tableExists0%
pg_array_parse0%
truncateTable0%
trxStatus0%
getSoftwareLink0%
duplicateTableStructure0%
isKnownStatementRollbackError0%
isQueryTimeoutError0%
isConnectionError0%
replace0%
upsert0%
doFlushSession0%
doUnlock0%
doLock0%
doLockIsFree0%
setSessionOptions0%
getServerVersion0%
serverIsReadOnly0%
doSingleStatementQuery0%
strencode0%
indexInfo0%
fieldInfo0%
tableExists0%
estimateRowCount0%
checkInsertWarnings0%
trxLevel0%
lastError0%
doSelectDomain0%
open0%
getType0%
__construct0%
listTables0%
mysqlConnect0%
duplicateTableStructure0%
doSingleStatementQuery0%
isKnownStatementRollbackError0%
isQueryTimeoutError0%
isConnectionError0%
getValueTypesForWithClause0%
doInsertSelectNative0%
indexAttributes0%
indexInfo0%
estimateRowCount0%
lastErrno0%
lastError0%
lastInsertId0%
dumpError0%
closeConnection0%
closeConnection0%
makeConnectionString0%
doSelectDomain0%
databasesAreIndependent0%
open0%
getType0%
__construct0%
mysqlRealEscapeString0%
mysqlError0%
lastErrno0%
insertId0%
doHandleSessionLossPreconnect0%
lastInsertId0%
trxTimestamp0%
setTrxStatusToOk0%
getSessionLagStatus0%
getLag0%
doGetFieldNames0%
doFree0%
getLogContext0%
getSessionLagStatus0%
getRecordedTransactionLagStatus0%
resetReplicationLagStatus0%
getTopologyBasedReadOnlyReason0%
getPrimaryPos0%
getReplicaPos0%
primaryPosWait0%
getApproximateLagStatus0%
doGetLag0%
getTopologyRole0%
doNumRows0%
__construct0%
getServerRoleStatus0%
getServerGTIDs0%
getServerUUID0%
getServerId0%
getPrimaryPos0%
getReplicaPos0%
primaryPosWait0%
useGTIDs0%
getReplicationSafetyInfo0%
getApproximateLagStatus0%
fetchSecondsSinceHeartbeat0%
__construct0%
checkFetchError0%
getLagFromSlaveStatus0%
count0%
__construct0%
__construct0%
__construct0%
newFromQuery0%
getRawSql0%
stringify0%
__construct0%
__construct0%
doGetFieldNames0%
doFree0%
getFieldNames0%
free0%
doGetFieldNames0%
doFetchObject0%
doFree0%
doSeek0%
convertBoolean0%
doFetchRow0%
doFetchObject0%
doNumRows0%
__construct0%
getInternalFieldInfo0%
doGetFieldNames0%
doFree0%
doSeek0%
doFetchRow0%
getLagFromPtHeartbeat0%
doGetLag0%
setTrxStatusToNone0%
explicitTrxActive0%
turnOnAutomatic0%
setAutomaticAtomic0%
popAtomicLevel0%
cancelAtomic0%
getPositionFromSectionId0%
onEndAtomic0%
onCommit0%
onBegin0%
addToAtomicLevels0%
currentAtomicSectionId0%
onCancelAtomicBeforeCriticalSection0%
trxCheckBeforeClose0%
resetTrxAtomicLevels0%
writesPending0%
flatAtomicSectionList0%
pendingWriteQueryDuration0%
updateTrxWriteQueryReport0%
pendingWriteCallers0%
calculateLastTrxApplyTime0%
clearSessionError0%
setSessionError0%
sessionStatus0%
setTrxStatusIgnoredCause0%
setTransactionError0%
assertSessionStatus0%
assertTransactionStatus0%
nextSavePointId0%
onDestruct0%
__construct0%
writesOrCallbacksPending0%
onGetScopedLockAndFlush0%
onFlushSnapshot0%
onEndAtomicInCriticalSection0%
onSessionLoss0%
onCommitInCriticalSection0%
onRollbackInCriticalSection0%
onBeginInCriticalSection0%
countPostCommitOrIdleCallbacks0%
getRecurringCallbacks0%
isEndCallbacksSuppressed0%
pendingPreCommitCallbackCallers0%
pendingWriteAndCallbackCallers0%
clearEndCallbacks0%
transactionWritingIn0%
clearPreEndCallbacks0%
runOnTransactionPreCommitCallbacks0%
consumeEndCallbacks0%
modifyCallbacksForCancel0%
reassignCallbacksForSection0%
setTrxEndCallbackSuppression0%
setTransactionListener0%
addPreCommitOrIdleCallback0%
addPostCommitOrIdleCallback0%
onTransactionResolution0%
recordQueryCompletion0%
transactionWritingOut0%
attributesFromType0%
isInsertSelectSafe0%
getLag0%
getPrimaryPos0%
rollback0%
commit0%
begin0%
doAtomicSection0%
cancelAtomic0%
endAtomic0%
startAtomic0%
setTransactionListener0%
onTransactionPreCommitOrIdle0%
onTransactionCommitOrIdle0%
onTransactionResolution0%
serverIsReadOnly0%
primaryPosWait0%
flushSnapshot0%
strreplace0%
conditional0%
unionQueries0%
unionSupportsOrderAndLimit0%
insertSelect0%
deleteJoin0%
anyString0%
anyChar0%
buildLike0%
addIdentifierQuotes0%
addQuotes0%
getServerName0%
flushSession0%
timestamp0%
getDBname0%
setIndexAliases0%
getDomainChangeException0%
fieldInfo0%
listTables0%
indexUnique0%
duplicateTableStructure0%
truncateTable0%
dropTable0%
sourceStream0%
sourceFile0%
tableNamesN0%
tableNames0%
tableName0%
getTableAliases0%
timestampOrNull0%
setTableAliases0%
isReadOnly0%
decodeExpiry0%
encodeExpiry0%
getInfinity0%
lockIsFree0%
setSchemaVars0%
setSessionOptions0%
decodeBlob0%
encodeBlob0%
getSessionLagStatus0%
getLag0%
ping0%
getServer0%
selectDomain0%
setLogger0%
clearFlag0%
newUnionQueryBuilder0%
newSelectQueryBuilder0%
query0%
getServerVersion0%
getSoftwareLink0%
affectedRows0%
lastError0%
lastErrno0%
insertId0%
getProperty0%
getFlag0%
restoreFlags0%
setFlag0%
newDeleteQueryBuilder0%
isOpen0%
pendingWriteCallers0%
pendingWriteQueryDuration0%
writesOrCallbacksPending0%
writesPending0%
lastDoneWrites0%
implicitOrderby0%
setLBInfo0%
getLBInfo0%
dbSchema0%
tablePrefix0%
explicitTrxActive0%
trxTimestamp0%
newUpdateQueryBuilder0%
newInsertQueryBuilder0%
databasesAreIndependent0%
factorConds0%
buildSelectSubquery0%
buildExcludedValue0%
buildIntegerCast0%
buildStringCast0%
buildSubstring0%
buildLeast0%
buildGreatest0%
buildGroupConcatField0%
buildConcat0%
bitOr0%
bitAnd0%
bitNot0%
makeWhereFrom2d0%
newReplaceQueryBuilder0%
makeList0%
buildComparison0%
tableExists0%
indexExists0%
fieldExists0%
lockForUpdate0%
selectRowCount0%
estimateRowCount0%
selectRow0%
limitResult0%
selectSQLText0%
selectFieldValues0%
selectField0%
getAttributes0%
streamStatementEnd0%
getServerInfo0%
implicitOrderby0%
buildLeast0%
buildGreatest0%
buildConcat0%
bitOr0%
bitAnd0%
bitNot0%
factorConds0%
makeWhereFrom2d0%
buildComparison0%
trxTimestamp0%
buildStringCast0%
__sleep0%
__clone0%
isReadOnly0%
truncateTable0%
sourceStream0%
sourceFile0%
setSessionOptions0%
encodeBlob0%
getCacheSetOptions0%
ping0%
buildSubstring0%
buildIntegerCast0%
duplicateTableStructure0%
timestampOrNull0%
getPrimaryPos0%
primaryPosWait0%
setSchemaVars0%
buildSelectSubquery0%
buildGroupConcatField0%
getTableAliases0%
decodeExpiry0%
encodeExpiry0%
getInfinity0%
timestamp0%
tableNamesN0%
strreplace0%
conditional0%
unionQueries0%
unionSupportsOrderAndLimit0%
limitResult0%
anyString0%
anyChar0%
buildLike0%
isQuotedIdentifier0%
addIdentifierQuotes0%
listTables0%
decodeBlob0%
isKnownStatementRollbackError0%
databasesAreIndependent0%
lastDoneWrites0%
installErrorHandler0%
restoreErrorHandler0%
getLastPHPError0%
connectionErrorLogger0%
assessConnectionLoss0%
newExceptionAfterConnectError0%
newUnionQueryBuilder0%
newUpdateQueryBuilder0%
newInsertQueryBuilder0%
newReplaceQueryBuilder0%
selectRow0%
estimateRowCount0%
checkInsertWarnings0%
newDeleteQueryBuilder0%
__toString0%
attachDatabasesFromTableAliases20%
getFulltextSearchModule21%
getQueryVerb28%
reportQueryError33%
getBindingHandle33%
unlock35%
initConnectionFlags40%
generateFileName40%
generateDatabaseName40%
runTransactionListenerCallbacks42%
selectDomain50%
handleErroredQuery50%
lock50%
unlock50%
getScopedLockAndFlush50%
delete50%
lockForUpdate50%
insert50%
update50%
lock50%
upsert50%
assertHasConnectionHandle50%
replace50%
selectSQLText57%
getQueryException60%
flushSession60%
newFromArray62%
completeCriticalSection63%
trxLevel66%
getServerVersion66%
pendingWriteCallers66%
getDomainID66%
__toString66%
__construct66%
setTableAliases66%
begin68%
selectField69%
replaceLostConnection69%
insert71%
onTransactionPreCommitOrIdle71%
getClass72%
addQuotes72%
runOnTransactionIdleCallbacks73%
selectFieldValues75%
getDefaultPragmas75%
commenceCriticalSection75%
open76%
rollback77%
getLockFileDirectory80%
doBegin80%
lastErrno80%
getType80%
startAtomic80%
replace81%
__destruct81%
doSelectDomain81%
runTransactionPostCommitCallbacks83%
restoreFlags83%
endAtomic83%
attemptQuery84%
close84%
getActiveGtidCoordinates84%
getReadOnlyReason85%
setLBInfo85%
clearFlag85%
init86%
doFetchRow87%
__toString87%
__construct87%
onTransactionCommitOrIdle87%
getMySqlServerVariant87%
addQuotes88%
getScopedLockAndFlush88%

Project Risks

Method CRAP
assessConnectionLoss380
sourceStream240
open210
open182
primaryPosWait182
mysqlConnect156
getPrimaryPos110
onCommit90
estimateRowCount56
addQuotes56
getInsertIdColumnForUpsert56
isWriteQuery56
onFlushSnapshot56
getCacheSetOptions56
getReplicaPos56
reassignCallbacksForSection56
trxCheckBeforeClose42
doSingleStatementQuery42
pg_array_parse42
duplicateTableStructure30
doSelectDomain30
estimateRowCount30
listTables30
lastError30
checkInsertWarnings30
updateTrxWriteQueryReport30
indexAttributes30
writesOrCallbacksPending30
relationExists30
__construct30
estimateRowCount30
handleErroredQuery22
open22
constraintExists20
isInsertSelectSafe20
getLagFromPtHeartbeat20
doLock20
doFetchObject20
doFetchRow20
determineCoreSchema20
assertTransactionStatus20
lastError20
indexInfo20
getValueTypesForWithClause20
onEndAtomic20
getLagFromSlaveStatus20
doFlushSession20
setSessionOptions20
cancelAtomic20
pendingWriteQueryDuration20
getPositionFromSectionId20
getServerVersion20
onBegin20
listTables20
getActiveGtidCoordinates12
attachDatabasesFromTableAliases12
flushSession12
convertBoolean12
lastErrno12
doSelectDomain12
fetchSecondsSinceHeartbeat12
decodeBlob12
dbSchema12
onCancelAtomicBeforeCriticalSection12
getApproximateLagStatus12
pendingWriteAndCallbackCallers12
runOnTransactionPreCommitCallbacks12
modifyCallbacksForCancel12
onDestruct12
getServerGTIDs12
currentAtomicSectionId12
getServerRoleStatus12
getCoreSchemas12
getLag12
doSingleStatementQuery12
getApproximateLagStatus12
getTopologyBasedReadOnlyReason12
checkFetchError12
streamStatementEnd12
getInternalFieldInfo12
decodeBlob12
explicitTrxActive12
tablePrefix12
sourceFile12
indexInfo12
duplicateTableStructure12
getServerName12
selectRow12
ping12
listTables12
__construct12
rollback9
getClass9
attemptQuery9
selectSQLText8
init8
runOnTransactionIdleCallbacks7
generateFileName7
getFulltextSearchModule7
startAtomic7
selectField7
runTransactionListenerCallbacks6
onTransactionPreCommitOrIdle6
addQuotes6
getQueryVerb6
completeCriticalSection6
endAtomic6
close6
addQuotes6
setTransactionListener6
onTransactionResolution6
transactionWritingOut6
dumpError6
transactionWritingIn6
writesPending6
nextSavePointId6
popAtomicLevel6
lastInsertId6
mysqlError6
replace6
decodeBlob6
pendingPreCommitCallbackCallers6
onEndAtomicInCriticalSection6
onCommitInCriticalSection6
doFetchObject6
newFromQuery6
stringify6
doGetFieldNames6
doGetFieldNames6
query6
getDBname6
closeConnection6
doGetFieldNames6
doFetchRow6
ping6
upsert6
getSessionLagStatus6
getRecordedTransactionLagStatus6
restoreErrorHandler6
getLastPHPError6
getServerUUID6
insertId6
getReplicationSafetyInfo6
lastErrno6
doGetLag6
onGetScopedLockAndFlush6
flatAtomicSectionList6
__construct6
serverIsReadOnly6
tableExists6
pendingWriteCallers6
doFlushSession6
doLock6
schemaExists6
tableExists6
attributesFromType6
getServerVersion6
makeConnectionString6
closeConnection6
doInsertSelectNative6
__clone6
fieldInfo6
doLock6
trxLevel6
trxTimestamp6
serverIsReadOnly6
assertSessionStatus6
setTransactionError6
getSoftwareLink6
sessionStatus6
attachDatabase6
begin5
selectFieldValues5
unlock5
getLockFileDirectory5
replace5
onTransactionCommitOrIdle5
getScopedLockAndFlush5
generateDatabaseName4
initConnectionFlags4
newFromArray4
commenceCriticalSection4
lock4
lockForUpdate4
doSelectDomain4
__destruct4
setLBInfo4
getQueryException3
replaceLostConnection3
insert3
reportQueryError3
getBindingHandle3
lastErrno3
getType3
restoreFlags3
clearFlag3
getReadOnlyReason3
getMySqlServerVariant3
doFetchRow3
__toString3
selectDomain2
assertHasConnectionHandle2
__construct2
setTableAliases2
__toString2
pendingWriteCallers2
trxLevel2
getDomainID2
getServerVersion2
getDefaultPragmas2
doBegin2
runTransactionPostCommitCallbacks2
__construct2