Hi,

I've promoted to full project two modules and something weird has happened, the final result is that I have just one module with the description of the first and the machine name of the second:

http://drupal.org/project/commerce_coupon_pct

The original sandboxes were:
http://drupal.org/sandbox/pcambra/1454380
http://drupal.org/sandbox/pcambra/1454390

The edit links are:
http://drupal.org/node/1454380/edit
http://drupal.org/node/1454390/edit

Comments

dww’s picture

Category: bug » support
Status: Active » Closed (works as designed)

I believe you're just confused by the similar names/descriptions:

http://drupal.org/node/1454380
http://drupal.org/project/commerce_coupon_fixed_amount
"Commerce coupon plugin that provides fixed amount coupons."

vs.
http://drupal.org/node/1454390
http://drupal.org/project/commerce_coupon_pct
"Commerce coupon plugin that provides percentage amount coupons."

I don't see anything merged here...

Please re-open if necessary, but it seems like there's no bug here, just human error.

Thanks,
-Derek

pcambra’s picture

Status: Closed (works as designed) » Active

Yeah, we fixed it "live" with Damien, but it seems I've hit a race condition when you have 2 sandboxes open in diferent tabs and then you promote them at "the same time"

I still have an issue with Commerce fixed amount: http://drupal.org/project/commerce_coupon_fixed_amount

If you look at http://drupal.org/node/add/project-release/1454380 & http://drupalcode.org/project/commerce_coupon_fixed_amount.git/tree/refs... the release didn't really get picked up.

damien tournoud’s picture

The two projects got merged. I had to manually untangle them.

Also, the promotion script really needs to be made more robust when the target repository already exists for some reason: currently it moves the old repository as a children of the existing target (see /var/git/repositories/project/commerce_coupon_pct.git/1454380.git).

dww’s picture

Category: support » bug

So, was the merging only in the Git repo, or also the project nodes?

damien tournoud’s picture

@dww: everything was merged, including the uri of the projects (and you would think that this column is unique, but it actually isn't).

dww’s picture

Project: Drupal.org infrastructure » Project
Version: » 6.x-1.x-dev
Component: Git » Projects

Just marked #1661406: Missing sandbox project duplicate. As I wrote there:

The confirm form during promotion does make use of $_SESSION['project_promote_project_shortname'];. That should probably be an array keyed by nid, instead. :( It never occurred to me that people would be doing this simultaneously in two separate browser windows.

That seems like the first place to fix. There might still be a bug in the Git side of things, but I kinda doubt it. Moving queues for now. We can always move this back to infra/git if needed.

dww’s picture

Assigned: Unassigned » dww
Status: Active » Needs review
StatusFileSize
new2.58 KB

Untested, but something like this. In looking at the code, seemed cleaner to just append the nid to the variable name instead of trying to make it an array (since then we don't have to worry about unsetting the array from $_SESSION if there are no projects in the process of being promoted -- each variable can just be cleanly set/unset on its own).

tamerzg’s picture

Regarding my issue: #1661406: Missing sandbox project

Eventually I recreated the first sandbox again so are you able to delete the first node (http://drupal.org/node/1567700)?
Because I am unable to edit the project name on the http://drupal.org/node/1567682 due to duplicated machine name.

dww’s picture

Sure, node 1567700 is now gone. https://drupal.org/node/1567682 can now be edited and has the right URL alias: https://drupal.org/project/voipcommerce

Sorry about the bug. ;) Thanks for resolving the mess yourself.

Cheers,
-Derek

dww’s picture

Status: Needs review » Fixed
Issue tags: +needs drupal.org deployment

I remembered this bug when reviewing a patch for #1794888: Port the sandbox-to-full-project promotion UI to D7. Although there's been a lot of progress with automated testing on d.o, it's still not trivial to verify stuff like this via our testing framework, so I just manually tested this. Reproduced the bug where the shortnames get confused if you go through the promote process with two projects simultaneously, and then verified everything works as expected once this patch is applied. Therefore, I just committed and pushed to 6.x-1.x. Still needs to be deployed on d.o.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

drumm’s picture

Issue tags: -needs drupal.org deployment

Deployed.