Branch Coverage

blib/lib/DBIx/ParseError/MySQL.pm
Criterion Covered Total %
branch 10 10 100.0


line true false branch
101 6 18 if $error =~ m[ (?-x:Deadlock found when trying to get (?:user-level |locking service )?lock; try )(?: (?-x:restarting transaction)| (?-x:rolling back transaction/releasing locks and restarting lock acquisition)| (?-x:releasing locks and restarting lock acquisition) )| (?-x:Lock wait timeout exceeded; try restarting transaction)| (?-x:Service lock wait timeout exceeded)| (?-x:WSREP detected deadlock/conflict and aborted the transaction.\s+Try restarting the transaction) ]x
113 11 7 if $error =~ m[ # Connection dropped/interrupted (?-x:MySQL server has gone away)| (?-x:Lost connection to MySQL server)| (?-x:Query execution was interrupted)| # Initial connection failure (?-x:Bad handshake)| (?-x:Too many connections)| (?-x:Host '\S+' is blocked because of many connection errors)| (?-x:Can't get hostname for your address)| (?-x:Can't connect to (?:local )?MySQL server)| # Packet corruption (?-x:Got a read error from the connection pipe)| (?-x:Got (?:an error|timeout) (?:reading|writing) communication packets)| (?-x:Malformed communication packet)| # XXX: This _might be_ a connection failure, but the DBD::mysql error message # does not expose the direct failure cause. See DBD::mysql/dbdimp.c#L2551. (?-x:Turning (?:off|on) AutoCommit failed) ]x
137 2 5 if $error =~ / (?-x:WSREP has not yet prepared node for application use)| (?-x:Server shutdown in progress)| (?-x:Normal shutdown)| (?-x:Shutdown complete) /x
145 2 3 if $error =~ / # Any value can be in the first piece here... (?-x:Duplicate entry '.+?' for key '\S+') /sx
176 19 5 if $type =~ /^(lock|connection|shutdown)$/