         copy_id = misc.uuid()
         dbg = @dbg("copy_path('#{opts.path}', id='#{copy_id}')")
         dbg("copy a path using rsync from one project to another")
-        @_task()
+        @active()
         async.series([
             (cb) =>
                 dbg("get synctable")
                 @client.copy_paths_synctable (err, s) =>
                     synctable = s; cb(err)
             (cb) =>
+                @active()
                 dbg('write query requesting the copy to the database')
                 @database._query
                     query  : "INSERT INTO copy_paths"

        dbg = @dbg('constructor')
        dbg("initializing")

        # By definition "idle" means not working on any tasks.
        @free_check = setInterval((=>@free_if_idle()), 5*60*1000)
        @_task()
        @database.synctable
            table          : 'projects'
            columns        : ['state', 'status', 'action_request']

                    url += '?hidden=true'
                misc.retry_until_success
                    f           : (cb) =>
                        @active()
                        get_json url, (err, x) =>
                            listing = x
                            cb(err)
