projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Pg: FOR UPDATE LIMIT 1
[freeside.git]
/
FS
/
bin
/
freeside-queued
diff --git
a/FS/bin/freeside-queued
b/FS/bin/freeside-queued
index
35728db
..
4e3724e
100644
(file)
--- a/
FS/bin/freeside-queued
+++ b/
FS/bin/freeside-queued
@@
-7,7
+7,7
@@
use Fcntl qw(:flock);
use POSIX qw(setsid);
use Date::Format;
use IO::File;
use POSIX qw(setsid);
use Date::Format;
use IO::File;
-use FS::UID qw(adminsuidsetup forksuidsetup);
+use FS::UID qw(adminsuidsetup forksuidsetup
driver_name
);
use FS::Record qw(qsearchs);
use FS::queue;
use FS::Record qw(qsearchs);
use FS::queue;
@@
-48,7
+48,9
@@
while (1) {
'queue',
{ 'status' => 'new' },
'',
'queue',
{ 'status' => 'new' },
'',
- 'ORDER BY jobnum FOR UPDATE LIMIT 1'
+ driver_name =~ /^mysql$/i
+ ? 'ORDER BY jobnum LIMIT 1 FOR UPDATE'
+ : 'ORDER BY jobnum FOR UPDATE LIMIT 1'
) or do {
sleep 5;
next;
) or do {
sleep 5;
next;
@@
-76,7
+78,7
@@
while (1) {
#get new db handles
$FS::UID::dbh->{InactiveDestroy} = 1;
#get new db handles
$FS::UID::dbh->{InactiveDestroy} = 1;
- $FS::svc_acct::icradius_dbh->{InactiveDestroy}
+ $FS::svc_acct::icradius_dbh->{InactiveDestroy}
= 1
if $FS::svc_acct::icradius_dbh;
forksuidsetup($user);
if $FS::svc_acct::icradius_dbh;
forksuidsetup($user);