Skip to content
Snippets Groups Projects
Unverified Commit e7f225c0 authored by blizzz's avatar blizzz Committed by GitHub
Browse files

Merge pull request #18016 from nextcloud/fix/noid/ldap-checkup-batchsize

make chunksize (used to check for gone LDAP users) configurable
parents 4d5f5825 f990620e
No related branches found
No related tags found
No related merge requests found
......@@ -44,7 +44,7 @@ use OCA\User_LDAP\User\DeletedUsersIndex;
*/
class CleanUp extends TimedJob {
/** @var int $limit amount of users that should be checked per run */
protected $limit = 50;
protected $limit;
/** @var int $defaultIntervalMin default interval in minutes */
protected $defaultIntervalMin = 51;
......@@ -61,10 +61,10 @@ class CleanUp extends TimedJob {
/** @var Helper $ldapHelper */
protected $ldapHelper;
/** @var \OCA\User_LDAP\Mapping\UserMapping */
/** @var UserMapping */
protected $mapping;
/** @var \OCA\User_LDAP\User\DeletedUsersIndex */
/** @var DeletedUsersIndex */
protected $dui;
public function __construct() {
......@@ -138,7 +138,7 @@ class CleanUp extends TimedJob {
if(!$this->isCleanUpAllowed()) {
return;
}
$users = $this->mapping->getList($this->getOffset(), $this->limit);
$users = $this->mapping->getList($this->getOffset(), $this->getChunkSize());
if(!is_array($users)) {
//something wrong? Let's start from the beginning next time and
//abort
......@@ -156,7 +156,7 @@ class CleanUp extends TimedJob {
* @return bool
*/
public function isOffsetResetNecessary($resultCount) {
return $resultCount < $this->limit;
return $resultCount < $this->getChunkSize();
}
/**
......@@ -222,7 +222,7 @@ class CleanUp extends TimedJob {
*/
public function setOffset($reset = false) {
$newOffset = $reset ? 0 :
$this->getOffset() + $this->limit;
$this->getOffset() + $this->getChunkSize();
$this->ocConfig->setAppValue('user_ldap', 'cleanUpJobOffset', $newOffset);
}
......@@ -231,6 +231,9 @@ class CleanUp extends TimedJob {
* @return int
*/
public function getChunkSize() {
if($this->limit === null) {
$this->limit = (int)$this->ocConfig->getAppValue('user_ldap', 'cleanUpJobChunkSize', 50);
}
return $this->limit;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment