Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
emulab
emulab-devel
Commits
af79be8f
Commit
af79be8f
authored
Mar 23, 2004
by
Leigh B. Stoller
Browse files
Fix my last revision to that DBQueryFatal() and DBQuery() really do
what I want them to do and properly mirror the perl impl.
parent
49bc0337
Changes
2
Hide whitespace changes
Inline
Side-by-side
db/libdb.py.in
View file @
af79be8f
...
...
@@ -74,20 +74,21 @@ def DBQuery(queryPat, querySub = (), asDict = False):
except
MySQLdb
.
MySQLError
:
tries
-=
1
if
tries
==
0
:
raise
break
else
:
time
.
sleep
(
1
)
try
:
__dbConnection
.
ping
()
except
MySQLdb
.
MySQLError
:
pass
tbmsg
=
""
.
join
(
traceback
.
format_exception
(
*
sys
.
exc_info
()))
except
MySQLdb
.
MySQLError
:
pass
tbmsg
=
queryPat
%
cursor
.
connection
.
literal
(
querySub
)
tbmsg
+=
"
\n\n
"
tbmsg
+=
""
.
join
(
traceback
.
format_exception
(
*
sys
.
exc_info
()))
SENDMAIL
(
TBOPS
,
"DB query failed"
,
"DB query failed:
\n\n
%s"
%
tbmsg
,
TBOPS
)
r
aise
RuntimeError
,
"Aah! Escaped DBQueryFatal loop"
r
eturn
None
def
DBQueryFatal
(
*
args
):
try
:
ret
=
DBQuery
(
*
args
)
ret
=
DBQuery
(
*
args
)
if
ret
:
return
ret
except
MySQLdb
.
MySQLError
:
return
None
raise
RuntimeError
,
"DBQueryFatal failed"
tbsetup/plab/libdb.py.in
View file @
af79be8f
...
...
@@ -74,20 +74,21 @@ def DBQuery(queryPat, querySub = (), asDict = False):
except
MySQLdb
.
MySQLError
:
tries
-=
1
if
tries
==
0
:
raise
break
else
:
time
.
sleep
(
1
)
try
:
__dbConnection
.
ping
()
except
MySQLdb
.
MySQLError
:
pass
tbmsg
=
""
.
join
(
traceback
.
format_exception
(
*
sys
.
exc_info
()))
except
MySQLdb
.
MySQLError
:
pass
tbmsg
=
queryPat
%
cursor
.
connection
.
literal
(
querySub
)
tbmsg
+=
"
\n\n
"
tbmsg
+=
""
.
join
(
traceback
.
format_exception
(
*
sys
.
exc_info
()))
SENDMAIL
(
TBOPS
,
"DB query failed"
,
"DB query failed:
\n\n
%s"
%
tbmsg
,
TBOPS
)
r
aise
RuntimeError
,
"Aah! Escaped DBQueryFatal loop"
r
eturn
None
def
DBQueryFatal
(
*
args
):
try
:
ret
=
DBQuery
(
*
args
)
ret
=
DBQuery
(
*
args
)
if
ret
:
return
ret
except
MySQLdb
.
MySQLError
:
return
None
raise
RuntimeError
,
"DBQueryFatal failed"
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment