Public bug reported:

There's a race condition in instance_create, that allows creation
several instances with duplicate hostname/display_name.  Before storing
instance record in database, there's a query for existing records with
same hostname.

    with session.begin():
        if 'hostname' in values:
            _validate_unique_server_name(context, session, values['hostname'])
        instance_ref.security_groups = _get_sec_group_models(session,
                security_groups)
        session.add(instance_ref)

If another instance with same hostname is stored after
_validate_unique_server_name, there will be duplicates.

We hit this bug when badly-written client resubmitted POST request after
timeout.

** Affects: nova
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1436897

Title:
  Race in instance_create when checking for duplicate hostname

Status in OpenStack Compute (Nova):
  New

Bug description:
  There's a race condition in instance_create, that allows creation
  several instances with duplicate hostname/display_name.  Before
  storing instance record in database, there's a query for existing
  records with same hostname.

      with session.begin():
          if 'hostname' in values:
              _validate_unique_server_name(context, session, values['hostname'])
          instance_ref.security_groups = _get_sec_group_models(session,
                  security_groups)
          session.add(instance_ref)

  If another instance with same hostname is stored after
  _validate_unique_server_name, there will be duplicates.

  We hit this bug when badly-written client resubmitted POST request
  after timeout.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1436897/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to