1) Timeout occurs when deleting repository.
Check queries by using processlist.
"show processlist;"
2) If the reason of that case is timeout, set follows.
show variables like '%timeout';
set global innodb_lock_wait_timeout=300;
set session innodb_lock_wait_timeout=300;
If you necessary, kill process to restart process.
"kill <id>;"
3) Check if you have dummy data.
SELECT changesets.repository_id FROM changesets WHERE changesets.repository_id NOT IN (SELECT id from repositories) group by changesets.repository_id ;
Do A or B.
* A
DELETE FROM changes WHERE changes.changeset_id IN (SELECT changesets.id FROM changesets WHERE changesets.repository_id NOT IN (SELECT id from repositories));
DELETE FROM changesets WHERE changesets.repository_id NOT IN (SELECT id from repositories);
* or B (415 = your target repository id)
DELETE FROM changes WHERE changes.changeset_id IN (SELECT changesets.id FROM changesets WHERE changesets.repository_id = 415);
DELETE FROM changesets WHERE changesets.repository_id = 415;
4) If timeout occurs during delete query, do follows and do it again.
OPTIMIZE TABLE `redmine_333`.`changes`
5) If you want to fetch manually, do follows on redmine home directory and look for what errors occur.
rails runner "Repository.fetch_changesets" -e production
( the older version: ruby script/runner "Repository.fetch_changesets" -e production )
Comments
Post a Comment