2016-10-18 2 views
0

Gerade installiert TUP auf Ubuntu 16.04 gesperrt und bekam folgende Fehlermeldung:TUP SQL-Reset Fehler: Datenbank wird

$ tup init 
.tup repository initialized. 
SQL reset error: database is locked 
Statement was: commit 

Auch TUP upd Fehler als gut.

$ tup upd 
.tup/shared: No such file or directory 
tup error: Unable to open lockfile. 

Irgendwelche Ideen auf, wie ich TUP zu arbeiten zu bekommen?

EDIT: heruntergeladen ich die Quelle von GIT (https://github.com/gittup/tup) und trat durch sie und der Fehler wird in src/TUP/db.c sein: tup_db_commit() -Leitung 933

rc = sqlite3_step(*stmt); 

sqlite3_step Funktion zurückkehrt SQLITE_BUSY (5).
Meine Annahme ist, dass ich eine neuere Version von SQLite verwende und einige Bereinigung nicht mehr korrekt durchgeführt wird. Aber es scheint definitiv eine Art von sqllite3-Problem zu sein.

+0

Könnten Sie folgendes versuchen: 'cd $ (mktemp -d) && touch Tupfile && tup init'? Dies funktioniert auf ArchLinux. Veröffentliche auch deine genaue Version von tup ('tup --version'). –

+0

@FreddieChopin $ cd $ (mktemp -d) && Berühren Sie Tupfile && tup init .up-Repository initialisiert. Es klappt. Schlagen Sie ein Problem mit der Verzeichnisberechtigung vor? $ tup - Version tup 0.7.2-12-ga582fee – sdstack

+0

Ich weiß es nicht, aber es scheint, dass es in einem Verzeichnis funktioniert, aber in einem anderen fehlschlägt. Löschen Sie einfach das Verzeichnis, das Sie verwenden, erstellen Sie es neu und sehen Sie, ob das Problem weiterhin besteht? Vielleicht ist das nur ein einziger Fehler, der nach dem Löschen des versteckten .tup-Ordners (oder der Datei/des Ordners, der dieses Problem verursacht) verschwindet? –

Antwort

1

nach mehreren anderen Fragen/Antworten auf Stackoverflow, sollten Sie nicht sqlite3 auf einem Netzlaufwerk verwenden. Daher sollten Sie tup nicht auf einem Netzlaufwerk verwenden.