View | Details | Raw Unified | Return to bug 49430
Collapse All | Expand All

(-)a/management/univention-directory-notifier/univention-translog (-4 / +6 lines)
 Lines 142-148   class Index(object): Link Here 
142
            self.size = size = len(data)
142
            self.size = size = len(data)
143
143
144
        count, reminder = divmod(size - sizeof(IndexHeader), sizeof(IndexEntry))
144
        count, reminder = divmod(size - sizeof(IndexHeader), sizeof(IndexEntry))
145
        self.log.info("Index of size %d contains %d entries", size, count)
145
        self.log.info("Index of size %d, last entry: %d", size, count - 1)
146
        self.count = count - 1 if count else 0  # transaction 0 is never used
146
        self.count = count - 1 if count else 0  # transaction 0 is never used
147
        assert reminder == 0, reminder
147
        assert reminder == 0, reminder
148
148
 Lines 302-307   class Translog(object): Link Here 
302
302
303
            self.translog.seek(0, SEEK_SET)
303
            self.translog.seek(0, SEEK_SET)
304
304
305
        self.log.info("Translog of size %d contains %d entries", size, self.last - self.first)
306
305
        return self
307
        return self
306
308
307
    def __exit__(self, exc_type, exc_value, traceback):
309
    def __exit__(self, exc_type, exc_value, traceback):
 Lines 1197-1206   def prune_file(opt): Link Here 
1197
1199
1198
        log.info('Purging/keeping %d..%d..%d', translog.first, opt.trans, translog.last)
1200
        log.info('Purging/keeping %d..%d..%d', translog.first, opt.trans, translog.last)
1199
        if opt.trans <= translog.first:
1201
        if opt.trans <= translog.first:
1200
            log.fatal('Already purged.')
1202
            log.info('Already purged, nothing to do.')
1201
            raise Abort()
1203
            raise Abort()
1202
        if opt.trans >= translog.last:
1204
        if opt.trans >= translog.last:
1203
            log.fatal('Nothing to purge.')
1205
            log.info('Nothing to purge.')
1204
            raise Abort()
1206
            raise Abort()
1205
        assert translog.first < opt.trans < translog.last
1207
        assert translog.first < opt.trans < translog.last
1206
1208
 Lines 1330-1336   def parse_args(args=None): Link Here 
1330
    parser_check.set_defaults(func=check)
1332
    parser_check.set_defaults(func=check)
1331
1333
1332
    parser_prune = subparsers.add_parser("prune", help="Prune transaction files")
1334
    parser_prune = subparsers.add_parser("prune", help="Prune transaction files")
1333
    parser_prune.add_argument("trans", metavar="tid", type=int, help="Oldest transaction number to keep")
1335
    parser_prune.add_argument("trans", metavar="tid", type=int, help="Oldest transaction number to keep (negative numbers: the number of transactions to keep)")
1334
    parser_prune.add_argument("--role", "-r", metavar="ROLE", help="Server role [%(default)s]", default=ucr['server/role'])
1336
    parser_prune.add_argument("--role", "-r", metavar="ROLE", help="Server role [%(default)s]", default=ucr['server/role'])
1335
    parser_prune.set_defaults(func=prune, fix=True)
1337
    parser_prune.set_defaults(func=prune, fix=True)
1336
1338

Return to bug 49430