It appears that the allura.tasks.repo_tasks.clone task flushes the Project record at the end, and since that task can take a very long time, any updates (e.g. to project description) get lost when it saves the old project document back to mongo.
I haven't duplicated this in development, but here's what happened on sourceforge:
import_project_info
task ran at 2013/12/17 04:54:38 https://sourceforge.net/nf/admin/task_manager/view/52afd90dc4314373398546adI didn't find any other tasks with the specific project_id that completed after 06:07:16, so I believe it's the repo clone task at fault.
allura:cj/7005
forgehg:cj/7005
I tried and failed to come up with a way to create a test case for this; since the tests use MIM, there's no way to do an "out-of-band" update to ensure it doesn't get overwritten.
To QA:
Add a breakpoint to, e.g.,
forgegit.model.git_repo.GitImplementation.clone_from
then start a clone of a repo (or just clone a large repo w/o a breakpoint). While it's processing, update something on the project metadata, such as the summary.May want to try with the breakpoint in a few different points in the code (start of the task,
clone_from
,repo_refresh
, end of task).Lots of failures like this:
Rebased and force-pushed to:
allura:cj/7005