48 lines
1.4 KiB
Text
48 lines
1.4 KiB
Text
|
|
#!/usr/bin/perl
|
||
|
|
# This code was forked from the LiveJournal project owned and operated
|
||
|
|
# by Live Journal, Inc. The code has been modified and expanded by
|
||
|
|
# Dreamwidth Studios, LLC. These files were originally licensed under
|
||
|
|
# the terms of the license supplied by Live Journal, Inc, which can
|
||
|
|
# currently be found at:
|
||
|
|
#
|
||
|
|
# http://code.livejournal.org/trac/livejournal/browser/trunk/LICENSE-LiveJournal.txt
|
||
|
|
#
|
||
|
|
# In accordance with the original license, this code and all its
|
||
|
|
# modifications are provided under the GNU General Public License.
|
||
|
|
# A copy of that license can be found in the LICENSE file included as
|
||
|
|
# part of this distribution.
|
||
|
|
|
||
|
|
use strict;
|
||
|
|
BEGIN {
|
||
|
|
require "$ENV{LJHOME}/cgi-bin/ljlib.pl";
|
||
|
|
}
|
||
|
|
|
||
|
|
LJ::Worker::DirectoryMeta->run;
|
||
|
|
|
||
|
|
package LJ::Worker::DirectoryMeta;
|
||
|
|
use base 'LJ::Worker::Manual';
|
||
|
|
use LJ::UserSearch::MetaUpdater;
|
||
|
|
|
||
|
|
# return 1 if we did work, false if not.
|
||
|
|
sub work {
|
||
|
|
my $class = shift;
|
||
|
|
my $did_work = 0;
|
||
|
|
|
||
|
|
my $t1 = time();
|
||
|
|
while (LJ::UserSearch::MetaUpdater::update_some_rows()) {
|
||
|
|
return 1 if time() > $t1 + 30;
|
||
|
|
$did_work = 1;
|
||
|
|
}
|
||
|
|
|
||
|
|
if (my $lock = LJ::locker()->trylock("dirpack:addrows")) {
|
||
|
|
if (LJ::UserSearch::MetaUpdater::missing_rows()) {
|
||
|
|
print "adding missing rows....\n";
|
||
|
|
LJ::UserSearch::MetaUpdater::add_some_missing_rows();
|
||
|
|
$did_work = 1;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
return $did_work;
|
||
|
|
}
|
||
|
|
|