[openstack-nova/f16] Backport some diablo fixes from upstream

Mark McLoughlin markmc at fedoraproject.org
Wed Sep 28 15:55:45 UTC 2011


commit 223b092a5fd4a0694789a013c61c2607707b97a5
Author: Mark McLoughlin <markmc at redhat.com>
Date:   Wed Sep 28 16:54:37 2011 +0100

    Backport some diablo fixes from upstream
    
    Fix lazy load exception with security groups (#741307)
    Fix issue with nova-network deleting the default route (#741686)
    Fix errors caused by MySQL connection pooling (#741312)

 ...pool-complexities-from-nova.db.sqlalchemy.patch |   94 +++++++++++++++
 ...kes-sure-to-recreate-gateway-for-moved-ip.patch |  119 ++++++++++++++++++++
 ...e-grantee-group-loading-for-source-groups.patch |   36 ++++++
 ...hain-rule-for-EC2-metadata-requests-lp-85.patch |    6 +-
 ...pi-add-the-INPUT-rule-for-EC2-metadata-lp.patch |   10 +-
 ...ser-to-choose-either-ietadm-or-tgtadm-lp-.patch |    8 +-
 ...e-VolumeDriver.sync_exec-method-lp-819997.patch |    4 +-
 ...tadm-tgtadm-calls-out-into-helper-classes.patch |    8 +-
 openstack-nova.spec                                |   23 +++-
 9 files changed, 284 insertions(+), 24 deletions(-)
---
diff --git a/0001-Removed-db_pool-complexities-from-nova.db.sqlalchemy.patch b/0001-Removed-db_pool-complexities-from-nova.db.sqlalchemy.patch
new file mode 100644
index 0000000..2a6bc2c
--- /dev/null
+++ b/0001-Removed-db_pool-complexities-from-nova.db.sqlalchemy.patch
@@ -0,0 +1,94 @@
+From a122333e8faa77b57214071e6b2a45fb9eb986e0 Mon Sep 17 00:00:00 2001
+From: Brian Lamar <brian.lamar at rackspace.com>
+Date: Mon, 26 Sep 2011 11:52:21 -0400
+Subject: [PATCH] Removed db_pool complexities from
+ nova.db.sqlalchemy.session. Fixes bug 838581.
+
+Change-Id: I9b1f4790fcdb890a5113b853f1b1483f3212c530
+(cherry picked from commit f3dd56e916232e38e74d9e2f24ce9a738cac63cf)
+---
+ nova/db/sqlalchemy/session.py |   34 +---------------------------------
+ nova/flags.py                 |    6 ------
+ 2 files changed, 1 insertions(+), 39 deletions(-)
+
+diff --git a/nova/db/sqlalchemy/session.py b/nova/db/sqlalchemy/session.py
+index 643e233..74ee5ed 100644
+--- a/nova/db/sqlalchemy/session.py
++++ b/nova/db/sqlalchemy/session.py
+@@ -15,30 +15,16 @@
+ #    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ #    License for the specific language governing permissions and limitations
+ #    under the License.
+-"""
+-Session Handling for SQLAlchemy backend
+-"""
+ 
+-import eventlet.patcher
+-eventlet.patcher.monkey_patch()
++"""Session Handling for SQLAlchemy backend."""
+ 
+-import eventlet.db_pool
+ import sqlalchemy.orm
+-import sqlalchemy.pool
+ 
+ import nova.exception
+ import nova.flags
+-import nova.log
+ 
+ 
+ FLAGS = nova.flags.FLAGS
+-LOG = nova.log.getLogger("nova.db.sqlalchemy")
+-
+-
+-try:
+-    import MySQLdb
+-except ImportError:
+-    MySQLdb = None
+ 
+ 
+ _ENGINE = None
+@@ -71,24 +57,6 @@ def get_engine():
+     if "sqlite" in connection_dict.drivername:
+         engine_args["poolclass"] = sqlalchemy.pool.NullPool
+ 
+-    elif MySQLdb and "mysql" in connection_dict.drivername:
+-        LOG.info(_("Using mysql/eventlet db_pool."))
+-        # MySQLdb won't accept 'None' in the password field
+-        password = connection_dict.password or ''
+-        pool_args = {
+-            "db": connection_dict.database,
+-            "passwd": password,
+-            "host": connection_dict.host,
+-            "user": connection_dict.username,
+-            "min_size": FLAGS.sql_min_pool_size,
+-            "max_size": FLAGS.sql_max_pool_size,
+-            "max_idle": FLAGS.sql_idle_timeout,
+-        }
+-        creator = eventlet.db_pool.ConnectionPool(MySQLdb, **pool_args)
+-        engine_args["pool_size"] = FLAGS.sql_max_pool_size
+-        engine_args["pool_timeout"] = FLAGS.sql_pool_timeout
+-        engine_args["creator"] = creator.create
+-
+     return sqlalchemy.create_engine(FLAGS.sql_connection, **engine_args)
+ 
+ 
+diff --git a/nova/flags.py b/nova/flags.py
+index aa76def..0a87148 100644
+--- a/nova/flags.py
++++ b/nova/flags.py
+@@ -351,12 +351,6 @@ DEFINE_string('logdir', None, 'output to a per-service log file in named '
+                               'directory')
+ DEFINE_integer('logfile_mode', 0644, 'Default file mode of the logs.')
+ DEFINE_string('sqlite_db', 'nova.sqlite', 'file name for sqlite')
+-DEFINE_integer('sql_pool_timeout', 30,
+-               'seconds to wait for connection from pool before erroring')
+-DEFINE_integer('sql_min_pool_size', 10,
+-               'minimum number of SQL connections to pool')
+-DEFINE_integer('sql_max_pool_size', 10,
+-               'maximum number of SQL connections to pool')
+ DEFINE_string('sql_connection',
+               'sqlite:///$state_path/$sqlite_db',
+               'connection string for sql database')
+-- 
+1.7.6.4
+
diff --git a/0002-Makes-sure-to-recreate-gateway-for-moved-ip.patch b/0002-Makes-sure-to-recreate-gateway-for-moved-ip.patch
new file mode 100644
index 0000000..183728a
--- /dev/null
+++ b/0002-Makes-sure-to-recreate-gateway-for-moved-ip.patch
@@ -0,0 +1,119 @@
+From 96f0a932c59f03275a438d23386db5686b7f58e7 Mon Sep 17 00:00:00 2001
+From: Vishvananda Ishaya <vishvananda at gmail.com>
+Date: Mon, 26 Sep 2011 05:14:39 -0700
+Subject: [PATCH] Makes sure to recreate gateway for moved ip
+
+If nova moves an ip when setting up dhcp, make sure to reset
+the default gateway.  Fixes bug 859587
+
+Change-Id: I9f2b7bc5ede142717df6cb1653043b4f5c09959a
+(cherry picked from commit 569b310b003c1c96151a3e3d448ddf5fe4e9299a)
+---
+ nova/network/linux_net.py    |   13 +++++++++++++
+ nova/tests/test_linux_net.py |   32 +++++++++++++++++++++++++++++++-
+ 2 files changed, 44 insertions(+), 1 deletions(-)
+
+diff --git a/nova/network/linux_net.py b/nova/network/linux_net.py
+index 712db32..ac52c16 100755
+--- a/nova/network/linux_net.py
++++ b/nova/network/linux_net.py
+@@ -486,12 +486,25 @@ def initialize_gateway_device(dev, network_ref):
+             if ip_params[0] != full_ip:
+                 new_ip_params.append(ip_params)
+     if not old_ip_params or old_ip_params[0][0] != full_ip:
++        gateway = None
++        out, err = _execute('route', '-n', run_as_root=True)
++        for line in out.split('\n'):
++            fields = line.split()
++            if fields and fields[0] == '0.0.0.0' and \
++                            fields[-1] == dev:
++                gateway = fields[1]
++                _execute('route', 'del', 'default', 'gw', gateway,
++                         'dev', dev, check_exit_code=False,
++                         run_as_root=True)
+         for ip_params in old_ip_params:
+             _execute(*_ip_bridge_cmd('del', ip_params, dev),
+                         run_as_root=True)
+         for ip_params in new_ip_params:
+             _execute(*_ip_bridge_cmd('add', ip_params, dev),
+                         run_as_root=True)
++        if gateway:
++            _execute('route', 'add', 'default', 'gw', gateway,
++                        run_as_root=True)
+         if FLAGS.send_arp_for_ha:
+             _execute('arping', '-U', network_ref['dhcp_server'],
+                       '-A', '-I', dev,
+diff --git a/nova/tests/test_linux_net.py b/nova/tests/test_linux_net.py
+index 940af7b..0e933ef 100755
+--- a/nova/tests/test_linux_net.py
++++ b/nova/tests/test_linux_net.py
+@@ -346,7 +346,7 @@ class LinuxNetworkTestCase(test.TestCase):
+         actual = self.driver._host_dhcp(fixed_ips[0])
+         self.assertEquals(actual, expected)
+ 
+-    def _test_initialize_gateway(self, existing, expected):
++    def _test_initialize_gateway(self, existing, expected, routes=''):
+         self.flags(fake_network=False)
+         executes = []
+ 
+@@ -354,6 +354,8 @@ class LinuxNetworkTestCase(test.TestCase):
+             executes.append(args)
+             if args[0] == 'ip' and args[1] == 'addr' and args[2] == 'show':
+                 return existing, ""
++            if args[0] == 'route' and args[1] == '-n':
++                return routes, ""
+         self.stubs.Set(utils, 'execute', fake_execute)
+         network = {'dhcp_server': '192.168.1.1',
+                    'cidr': '192.168.1.0/24',
+@@ -371,6 +373,7 @@ class LinuxNetworkTestCase(test.TestCase):
+             "    valid_lft forever preferred_lft forever\n")
+         expected = [
+             ('ip', 'addr', 'show', 'dev', 'eth0', 'scope', 'global'),
++            ('route', '-n'),
+             ('ip', 'addr', 'del', '192.168.0.1/24',
+              'brd', '192.168.0.255', 'scope', 'global', 'dev', 'eth0'),
+             ('ip', 'addr', 'add', '192.168.1.1/24',
+@@ -383,6 +386,32 @@ class LinuxNetworkTestCase(test.TestCase):
+         ]
+         self._test_initialize_gateway(existing, expected)
+ 
++    def test_initialize_gateway_resets_route(self):
++        routes = "0.0.0.0         192.68.0.1        0.0.0.0         " \
++                "UG    100    0        0 eth0"
++        existing = ("2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> "
++            "    mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000\n"
++            "    link/ether de:ad:be:ef:be:ef brd ff:ff:ff:ff:ff:ff\n"
++            "    inet 192.168.0.1/24 brd 192.168.0.255 scope global eth0\n"
++            "    inet6 dead::beef:dead:beef:dead/64 scope link\n"
++            "    valid_lft forever preferred_lft forever\n")
++        expected = [
++            ('ip', 'addr', 'show', 'dev', 'eth0', 'scope', 'global'),
++            ('route', '-n'),
++            ('route', 'del', 'default', 'gw', '192.68.0.1', 'dev', 'eth0'),
++            ('ip', 'addr', 'del', '192.168.0.1/24',
++             'brd', '192.168.0.255', 'scope', 'global', 'dev', 'eth0'),
++            ('ip', 'addr', 'add', '192.168.1.1/24',
++             'brd', '192.168.1.255', 'dev', 'eth0'),
++            ('ip', 'addr', 'add', '192.168.0.1/24',
++             'brd', '192.168.0.255', 'scope', 'global', 'dev', 'eth0'),
++            ('route', 'add', 'default', 'gw', '192.68.0.1'),
++            ('ip', '-f', 'inet6', 'addr', 'change',
++             '2001:db8::/64', 'dev', 'eth0'),
++            ('ip', 'link', 'set', 'dev', 'eth0', 'promisc', 'on'),
++        ]
++        self._test_initialize_gateway(existing, expected, routes)
++
+     def test_initialize_gateway_no_move_right_ip(self):
+         existing = ("2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> "
+             "    mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000\n"
+@@ -407,6 +436,7 @@ class LinuxNetworkTestCase(test.TestCase):
+             "    valid_lft forever preferred_lft forever\n")
+         expected = [
+             ('ip', 'addr', 'show', 'dev', 'eth0', 'scope', 'global'),
++            ('route', '-n'),
+             ('ip', 'addr', 'add', '192.168.1.1/24',
+              'brd', '192.168.1.255', 'dev', 'eth0'),
+             ('ip', '-f', 'inet6', 'addr', 'change',
+-- 
+1.7.6.4
+
diff --git a/0003-Fix-the-grantee-group-loading-for-source-groups.patch b/0003-Fix-the-grantee-group-loading-for-source-groups.patch
new file mode 100644
index 0000000..0015185
--- /dev/null
+++ b/0003-Fix-the-grantee-group-loading-for-source-groups.patch
@@ -0,0 +1,36 @@
+From f558a865a4b3d67a6d1e33b888de79daf5ff2021 Mon Sep 17 00:00:00 2001
+From: Vishvananda Ishaya <vishvananda at gmail.com>
+Date: Mon, 26 Sep 2011 08:34:14 -0700
+Subject: [PATCH] Fix the grantee group loading for source groups
+
+Fixes bug 859679.
+
+Change-Id: Ia0b90b8373a02955f23b6dda0495f01511762822
+---
+ nova/db/sqlalchemy/api.py |    5 ++---
+ 1 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
+index 3226999..6cc678a 100644
+--- a/nova/db/sqlalchemy/api.py
++++ b/nova/db/sqlalchemy/api.py
+@@ -2828,14 +2828,13 @@ def security_group_rule_get_by_security_group(context, security_group_id,
+         result = session.query(models.SecurityGroupIngressRule).\
+                          filter_by(deleted=can_read_deleted(context)).\
+                          filter_by(parent_group_id=security_group_id).\
+-                         options(joinedload_all('grantee_group')).\
++                         options(joinedload_all('grantee_group.instances')).\
+                          all()
+     else:
+-        # TODO(vish): Join to group and check for project_id
+         result = session.query(models.SecurityGroupIngressRule).\
+                          filter_by(deleted=False).\
+                          filter_by(parent_group_id=security_group_id).\
+-                         options(joinedload_all('grantee_group')).\
++                         options(joinedload_all('grantee_group.instances')).\
+                          all()
+     return result
+ 
+-- 
+1.7.6.4
+
diff --git a/0001-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch b/0004-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
similarity index 93%
rename from 0001-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
rename to 0004-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
index 60cb3b8..d95aa40 100644
--- a/0001-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
+++ b/0004-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
@@ -1,4 +1,4 @@
-From ae7d3a76e0b22c829d8b8d7c1fd270f71ad36b76 Mon Sep 17 00:00:00 2001
+From 8666ba16b84efa4ef7d393faaecbfcd8d5e3015a Mon Sep 17 00:00:00 2001
 From: Mark McLoughlin <markmc at redhat.com>
 Date: Mon, 5 Sep 2011 07:10:52 +0100
 Subject: [PATCH] Add INPUT chain rule for EC2 metadata requests (lp:856385)
@@ -21,7 +21,7 @@ Change-Id: Ic99ba9249ce5219cd2631184154add82d25d9d6d
  1 files changed, 4 insertions(+), 0 deletions(-)
 
 diff --git a/nova/network/linux_net.py b/nova/network/linux_net.py
-index 712db32..6503537 100755
+index ac52c16..0482d4e 100755
 --- a/nova/network/linux_net.py
 +++ b/nova/network/linux_net.py
 @@ -381,6 +381,10 @@ def metadata_forward():
@@ -36,5 +36,5 @@ index 712db32..6503537 100755
  
  
 -- 
-1.7.6.2
+1.7.6.4
 
diff --git a/0002-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch b/0005-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
similarity index 97%
rename from 0002-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
rename to 0005-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
index d71fd98..05eb493 100644
--- a/0002-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
+++ b/0005-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
@@ -1,4 +1,4 @@
-From fc3ff39ec83b17d3b489f1857cd11650687653b2 Mon Sep 17 00:00:00 2001
+From 491261a15148092fce67feb8bb484e2d8a9d2a75 Mon Sep 17 00:00:00 2001
 From: Mark McLoughlin <markmc at redhat.com>
 Date: Thu, 8 Sep 2011 14:29:49 +0100
 Subject: [PATCH] Have nova-api add the INPUT rule for EC2 metadata
@@ -70,10 +70,10 @@ index 0000000..b3fcf93
 +        """
 +        self.network_driver.metadata_accept()
 diff --git a/nova/flags.py b/nova/flags.py
-index aa76def..d21cf2e 100644
+index 0a87148..432d483 100644
 --- a/nova/flags.py
 +++ b/nova/flags.py
-@@ -419,6 +419,9 @@ DEFINE_bool('resume_guests_state_on_host_boot', False,
+@@ -413,6 +413,9 @@ DEFINE_bool('resume_guests_state_on_host_boot', False,
  DEFINE_string('root_helper', 'sudo',
                'Command prefix to use for running commands as root')
  
@@ -84,7 +84,7 @@ index aa76def..d21cf2e 100644
  
  DEFINE_bool('monkey_patch', False,
 diff --git a/nova/network/linux_net.py b/nova/network/linux_net.py
-index 6503537..09cdd74 100755
+index 0482d4e..f1e9adf 100755
 --- a/nova/network/linux_net.py
 +++ b/nova/network/linux_net.py
 @@ -381,10 +381,17 @@ def metadata_forward():
@@ -184,5 +184,5 @@ index 247eb4f..b9ad579 100644
          self.port = self.server.port
  
 -- 
-1.7.6.2
+1.7.6.4
 
diff --git a/0003-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch b/0006-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
similarity index 98%
rename from 0003-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
rename to 0006-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
index 7327f64..37a0651 100644
--- a/0003-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
+++ b/0006-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
@@ -1,4 +1,4 @@
-From 947593b55d3f1272350be2fcf53ba4b93624299c Mon Sep 17 00:00:00 2001
+From ed1aff808be28ed79773ed269b0096c4a48464ef Mon Sep 17 00:00:00 2001
 From: Mark McLoughlin <markmc at redhat.com>
 Date: Thu, 11 Aug 2011 07:44:38 -0400
 Subject: [PATCH] Allow the user to choose either ietadm or tgtadm (lp:819997)
@@ -14,10 +14,10 @@ Change-Id: Ia350345a25a5f39b8aa26c8daf2a9987590d4b62
  3 files changed, 111 insertions(+), 34 deletions(-)
 
 diff --git a/nova/flags.py b/nova/flags.py
-index d21cf2e..a1981c8 100644
+index 432d483..4c71dd3 100644
 --- a/nova/flags.py
 +++ b/nova/flags.py
-@@ -422,6 +422,9 @@ DEFINE_string('root_helper', 'sudo',
+@@ -416,6 +416,9 @@ DEFINE_string('root_helper', 'sudo',
  DEFINE_string('network_driver', 'nova.network.linux_net',
                'Driver to use for network creation')
  
@@ -232,5 +232,5 @@ index e5bb498..76f0655 100644
              # Instances remount read-only in this case.
              # /etc/init.d/iscsitarget restart and rebooting nova-volume
 -- 
-1.7.6.2
+1.7.6.4
 
diff --git a/0004-Remove-VolumeDriver.sync_exec-method-lp-819997.patch b/0007-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
similarity index 99%
rename from 0004-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
rename to 0007-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
index 97482b4..2a27c0a 100644
--- a/0004-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
+++ b/0007-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
@@ -1,4 +1,4 @@
-From 74ca6aa85efc3102a5267733c288bce6d96ee2d8 Mon Sep 17 00:00:00 2001
+From ee5eacc0e268dc72d00f21685197f2fc734fc738 Mon Sep 17 00:00:00 2001
 From: Mark McLoughlin <markmc at redhat.com>
 Date: Sun, 18 Sep 2011 12:04:46 +0100
 Subject: [PATCH] Remove VolumeDriver.sync_exec method (lp:819997)
@@ -232,5 +232,5 @@ index 76f0655..8468602 100644
              LOG.debug(_("Failed to retrieve QoS info"))
              return {}
 -- 
-1.7.6.2
+1.7.6.4
 
diff --git a/0005-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch b/0008-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
similarity index 99%
rename from 0005-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
rename to 0008-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
index 5c8bec2..1c42329 100644
--- a/0005-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
+++ b/0008-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
@@ -1,4 +1,4 @@
-From 373aaba8b7f478c22eba082073073b68509506a6 Mon Sep 17 00:00:00 2001
+From c82a027f2993965f5d14be048ce8c4b56a76b468 Mon Sep 17 00:00:00 2001
 From: Mark McLoughlin <markmc at redhat.com>
 Date: Sun, 18 Sep 2011 16:02:43 +0100
 Subject: [PATCH] Refactor ietadm/tgtadm calls out into helper classes
@@ -19,10 +19,10 @@ Change-Id: I1c0064e5d35483a6c4059cfc61a484f5f576b2da
  create mode 100644 nova/volume/iscsi.py
 
 diff --git a/nova/flags.py b/nova/flags.py
-index a1981c8..d21cf2e 100644
+index 4c71dd3..432d483 100644
 --- a/nova/flags.py
 +++ b/nova/flags.py
-@@ -422,9 +422,6 @@ DEFINE_string('root_helper', 'sudo',
+@@ -416,9 +416,6 @@ DEFINE_string('root_helper', 'sudo',
  DEFINE_string('network_driver', 'nova.network.linux_net',
                'Driver to use for network creation')
  
@@ -557,5 +557,5 @@ index 0000000..d50dd5f
 +    else:
 +        return IetAdm()
 -- 
-1.7.6.2
+1.7.6.4
 
diff --git a/openstack-nova.spec b/openstack-nova.spec
index f021008..d33f5cd 100644
--- a/openstack-nova.spec
+++ b/openstack-nova.spec
@@ -4,7 +4,7 @@
 
 Name:             openstack-nova
 Version:          2011.3
-Release:          2%{?dist}
+Release:          3%{?dist}
 Summary:          OpenStack Compute (nova)
 
 Group:            Applications/System
@@ -31,11 +31,14 @@ Source22:         nova-ifc-template
 #
 # Patches managed here: https://github.com/markmc/nova/tree/fedora-patches
 #
-Patch1:           0001-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
-Patch2:           0002-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
-Patch3:           0003-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
-Patch4:           0004-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
-Patch5:           0005-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
+Patch1:           0001-Removed-db_pool-complexities-from-nova.db.sqlalchemy.patch
+Patch2:           0002-Makes-sure-to-recreate-gateway-for-moved-ip.patch
+Patch3:           0003-Fix-the-grantee-group-loading-for-source-groups.patch
+Patch4:           0004-Add-INPUT-chain-rule-for-EC2-metadata-requests-lp-85.patch
+Patch5:           0005-Have-nova-api-add-the-INPUT-rule-for-EC2-metadata-lp.patch
+Patch6:           0006-Allow-the-user-to-choose-either-ietadm-or-tgtadm-lp-.patch
+Patch7:           0007-Remove-VolumeDriver.sync_exec-method-lp-819997.patch
+Patch8:           0008-Refactor-ietadm-tgtadm-calls-out-into-helper-classes.patch
 
 BuildArch:        noarch
 BuildRequires:    intltool
@@ -167,6 +170,9 @@ This package contains documentation files for nova.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
 
 find . \( -name .gitignore -o -name .placeholder \) -delete
 
@@ -354,6 +360,11 @@ fi
 %endif
 
 %changelog
+* Wed Sep 28 2011 Mark McLoughlin <markmc at redhat.com> - 2011.3-3
+- Fix lazy load exception with security groups (#741307)
+- Fix issue with nova-network deleting the default route (#741686)
+- Fix errors caused by MySQL connection pooling (#741312)
+
 * Mon Sep 26 2011 Mark McLoughlin <markmc at redhat.com> - 2011.3-2
 - Manage the package's patches in git; no functional changes.
 


More information about the scm-commits mailing list