Kris Adcock wrote:
--- Philipp von Weitershausen <philipp@weitershausen.de> wrote:
Kris Adcock wrote:
I've tried going through the "Undo" procedure, but the idea of manually ticking 130,000 boxes (in pages of 20) and undoing them fills me with dread.
Hmm, this is something I don't understand. You deleted 130,000 files in individual transactions? If you deleted the 130,000 files in one big transaction, all you have to do is undo this one transaction. That is, of course, provided that any subsequent transaction you made after deleting the files won't cause inconsistencies and potentially prevent the undo.
Perhaps the Windows FTP client chooses to scan through the folder structure itself and individually delete each file?
Aaah, FTP client. :(((
I'm certainly looking at 130,000 entries, anyway. I'd be much happier if I only had to undo one transaction!
Undo them programmatically from Python! In the zopectl debug shell, do:
db = root._p_jar.db() specification = dict(location='/path/to/folder/of/deleted/items') txn_ids = [entry['id'] for entry in db.undoInfo(specification)] db.undo(txn_ids) import transaction transaction.commit()
Untested! No warranties! Make backups! Philipp