22
22
import sys
23
23
import time
24
24
25
- def compact (server , dbnames ):
26
- for dbname in dbnames :
27
- sys .stdout .flush ()
28
- db = server [dbname ]
29
- db .resource .post ('_compact' )
30
-
31
25
def main ():
32
26
33
27
usage = '%prog [options]'
@@ -36,14 +30,14 @@ def main():
36
30
action = 'append' ,
37
31
dest = 'dbnames' ,
38
32
help = 'Database to replicate. Can be given more than once. [all databases]' )
39
- parser .add_option ('--no-target-compaction' ,
40
- action = 'store_false' ,
41
- dest = 'compact_target' ,
42
- help = 'do not start compaction of target after replications' )
43
33
parser .add_option ('--continuous' ,
44
34
action = 'store_true' ,
45
35
dest = 'continuous' ,
46
36
help = 'trigger continuous replication in cochdb' )
37
+ parser .add_option ('--compact' ,
38
+ action = 'store_true' ,
39
+ dest = 'compact' ,
40
+ help = 'compact target database after replication' )
47
41
48
42
options , args = parser .parse_args ()
49
43
if len (args ) != 2 :
@@ -81,9 +75,13 @@ def main():
81
75
body .update ({'source' : '%s%s' % (src , dbname ), 'target' : dbname })
82
76
target_server .resource .post ('_replicate' , body )
83
77
print '%.1fs' % (time .time () - start )
84
-
85
- if options .compact_target :
86
- compact (target_server , dbnames )
78
+
79
+ if not options .compact :
80
+ return
81
+
82
+ sys .stdout .flush ()
83
+ for dbname in dbnames :
84
+ target_server [dbname ].compact ()
87
85
88
86
if __name__ == '__main__' :
89
87
main ()
0 commit comments