Edgewall Software
Modify

Opened 16 years ago

Closed 15 years ago

#1892 closed enhancement (fixed)

No feedback during "Indexing repository" phase of environment initialization

Reported by: clepple+trac@… Owned by: Christian Boos
Priority: normal Milestone: 0.10.4
Component: admin/console Version: 0.9.3
Severity: normal Keywords: resync
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

If possible, it would be nice to have some sort of feedback during the environment initialization phase. For instance, you could have a background thread that occasionally prints the revision that is currently being indexed, then goes back to sleep for a certain amount of time (rather than simply printing every revision as it is encountered, and thus slowing down the indexing operation). Or it could print status after every 100 commits.

Attachments (0)

Change History (11)

comment:1 by Christopher Lenz, 16 years ago

Component: generaltrac-admin
Owner: changed from Jonas Borgström to daniel
Priority: normallowest

comment:2 by Steve Milner, 16 years ago

Priority: lowestlow
Version: 0.8.40.9.3

This still happens in the 0.9.3. While it isn't a killer it's hard to tell if it is hung or doing something.

comment:3 by Christian Boos, 15 years ago

Keywords: resync added
Milestone: 0.10.4
Owner: changed from daniel to Christian Boos
Status: newassigned

This is even more useful now that the resync is committing after each revision sync (more robust, but also much slower).

A few "." printed after every commit or every 10 commits would be adequate, I think.

comment:4 by Christian Boos, 15 years ago

Milestone: 0.10.40.12
Priority: lownormal

Well, I couldn't find a clean way to get this information out without modifying the versioncontrol API, so this will have to wait 0.12.

comment:5 by Christian Boos, 15 years ago

Milestone: 0.120.10.4

Now that sync() is called explicitly by trac-admin, this can be done easily.

comment:6 by Christian Boos, 15 years ago

Resolution: fixed
Status: assignedclosed

Implemented in r5138 (trunk) and r5139 (0.10-stable).

Note that this changes the signature of the Repository.sync() recently introduced in the VC API (see #5014).

comment:7 by Matthew Good, 15 years ago

Resolution: fixed
Status: closedreopened

This change is not backwards compatible with existing VC plugins and needs reverted, at least on the 0.10-stable branch. See for example the Trac+Darcs plugin: http://progetti.arstecnica.it/trac%2Bdarcs/browser/tracdarcs/repository.py#L217

comment:8 by Christian Boos, 15 years ago

Well, you can bring the topic on the trac-dev mailing list if you want, but sync() is only officially documented since 0.10.4, so there's no breakage here (see #5014).

If we really want to support the old API, then the change must be completed in order to check for the arity of the sync() method.

in reply to:  8 comment:9 by Christian Boos, 15 years ago

Follow-up to comment:8

If we really want to support the old API, then the change must be completed in order to check for the arity of the sync() method.

OK, turns out to be not a big deal, even useful considering that sync() was not documented and that we're now explicitly calling it. I'll do the same for the sync_changeset recently introduced as well.

in reply to:  8 comment:10 by Matthew Good, 15 years ago

Replying to cboos:

Well, you can bring the topic on the trac-dev mailing list if you want, but sync() is only officially documented since 0.10.4, so there's no breakage here (see #5014).

Well, despite being undocumented the method was still required. Trac assumed that repository connectors would all use the CachedRepository object which provided this method, which was not really a safe assumption.

If we really want to support the old API, then the change must be completed in order to check for the arity of the sync() method.

Ok. I'd also prefer to rename it to "rev_callback" to make its purpose more clear.

comment:11 by Christian Boos, 15 years ago

Resolution: fixed
Status: reopenedclosed

Matt's concerns hopefully addressed in r5144.

I raised a NotImplemented error so that a trac-admin resync <rev> will explicitly fail instead of succeeding with a "<rev> resynced." message that would be erroneous.

For the ultimate Repository.sync API documentation, let's discuss that on #5014

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Christian Boos.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Christian Boos to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.