*** This bug is a duplicate of bug 1722404 ***
    https://bugs.launchpad.net/bugs/1722404

This was fixed in queens and backported to stable/pike, but we'd need to
also backport https://review.openstack.org/#/c/512456/ to stable/ocata
(newton is end of life upstream).

** This bug has been marked a duplicate of bug 1722404
   Database transactions can fail with "TypeError: Can't upgrade a READER 
transaction to a WRITER mid-transaction" because of scatter_gather_cells

-- 
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/1746509

Title:
  TypeError: Can't upgrade a READER transaction to a WRITER mid-
  transaction

Status in OpenStack Compute (nova):
  New

Bug description:
  Hi, I was running OPenstack Newton with no nova_cell0 database and 
placement-api setup . After migrate to Openstack Pike and correctly setup the 
nova_cell0 and placement-api everything is working fine except the openstack 
server list on tenant that already exist . 
  For example : 

  1. For a new tenant created after the migration at Pike. 
  nova --os-project-name="New Project" list 
  
+--------------------------------------+-----------------+--------+------------+-------------+---------------------------+
  | ID                                   | Name            | Status | Task 
State | Power State | Networks                  |
  
+--------------------------------------+-----------------+--------+------------+-------------+---------------------------+
  | c41c7e8d-4bc0-4a0f-a9d3-dc719ae2aff0 | SAMPLE_VM       | ACTIVE | -         
 | Running     | SAMPLE-SUBNET=192.168.0.8 |
  | 3d3d3e10-f326-4a92-9253-1511e738d1cc | SECOND_INSTANCE | ACTIVE | -         
 | Running     | SAMPLE-SUBNET=192.168.0.5 |
  
+--------------------------------------+-----------------+--------+------------+-------------+---------------------------+
  2. For a old tenant created before the migration at Newton .

  nova --os-project-name="InterCon" list 
  ERROR (ClientException): Unexpected API Error. Please report this at 
http://bugs.launchpad.net/nova/ and attach the Nova API log if possible.
  <type 'exceptions.TypeError'> (HTTP 500) (Request-ID: 
req-0dd4ef4d-54c2-4cfd-b8d9-636c5736ef5f)

  And here the log related to this error .

  2018-01-31 07:45:35.832 2340 DEBUG nova.compute.api 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Searching by: {'deleted': False} get_all 
/usr/lib/python2.7/site-packages/nova/compute/api.py:2311
  2018-01-31 07:45:35.837 2340 DEBUG oslo_concurrency.lockutils 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Lock "00000000-0000-0000-0000-000000000000" 
acquired by "nova.context.get_or_set_cached_cell_and_set_connections" :: waited 
0.000s inner /usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:270
  2018-01-31 07:45:35.837 2340 DEBUG oslo_concurrency.lockutils 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Lock "00000000-0000-0000-0000-000000000000" 
released by "nova.context.get_or_set_cached_cell_and_set_connections" :: held 
0.000s inner /usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:282
  2018-01-31 07:45:35.858 2340 DEBUG nova.compute.api 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Skipping already-collected cell0 list 
_get_instances_by_filters_all_cells 
/usr/lib/python2.7/site-packages/nova/compute/api.py:2503
  2018-01-31 07:45:35.858 2340 DEBUG nova.compute.api 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Listing 1000 instances in cell 
ea0a32fb-c148-4d4f-a42d-4e46356ff926 _get_instances_by_filters_all_cells 
/usr/lib/python2.7/site-packages/nova/compute/api.py:2506
  2018-01-31 07:45:35.859 2340 DEBUG oslo_concurrency.lockutils 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Lock "ea0a32fb-c148-4d4f-a42d-4e46356ff926" 
acquired by "nova.context.get_or_set_cached_cell_and_set_connections" :: waited 
0.000s inner /usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:270
  2018-01-31 07:45:35.859 2340 DEBUG oslo_concurrency.lockutils 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Lock "ea0a32fb-c148-4d4f-a42d-4e46356ff926" 
released by "nova.context.get_or_set_cached_cell_and_set_connections" :: held 
0.000s inner /usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:282
  2018-01-31 07:45:35.934 2340 DEBUG nova.objects.service 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Generated UUID 
f9ae1e59-21be-4fc3-9b02-ebb4c35783ec for service 19 _from_db_object 
/usr/lib/python2.7/site-packages/nova/objects/service.py:245
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Unexpected exception in API method: 
TypeError: Can't upgrade a READER transaction to a WRITER mid-transaction
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions Traceback 
(most recent call last):
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/api/openstack/extensions.py", line 336, 
in wrapped
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
f(*args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/api/validation/__init__.py", line 181, 
in wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
func(*args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/api/validation/__init__.py", line 181, 
in wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
func(*args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py", line 
168, in detail
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     servers 
= self._get_servers(req, is_detail=True)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py", line 
311, in _get_servers
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
sort_keys=sort_keys, sort_dirs=sort_dirs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/compute/api.py", line 2415, in get_all
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
sort_dirs=sort_dirs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/compute/api.py", line 2512, in 
_get_instances_by_filters_all_cells
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/compute/api.py", line 2543, in 
_get_instances_by_filters
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
expected_attrs=fields, sort_keys=sort_keys, sort_dirs=sort_dirs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_versionedobjects/base.py", line 184, in 
wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     result = 
fn(cls, context, *args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/objects/instance.py", line 1245, in 
get_by_filters
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
use_slave=use_slave, sort_keys=sort_keys, sort_dirs=sort_dirs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py", line 235, in 
wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
f(*args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/objects/instance.py", line 1235, in 
_get_by_filters_impl
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
expected_attrs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/objects/instance.py", line 1198, in 
_make_instance_list
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
expected_attrs=expected_attrs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/objects/instance.py", line 448, in 
_from_db_object
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
objects.Service, db_inst['services'])
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_versionedobjects/base.py", line 1121, in 
obj_make_list
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
**extra_args)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/objects/service.py", line 246, in 
_from_db_object
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
service.save()
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_versionedobjects/base.py", line 226, in 
wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
fn(self, *args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/objects/service.py", line 363, in save
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
db_service = db.service_update(self._context, self.id, updates)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/db/api.py", line 189, in service_update
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
IMPL.service_update(context, service_id, values)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_db/api.py", line 150, in wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
ectxt.value = e.inner_exc
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
self.force_reraise()
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in 
force_reraise
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
six.reraise(self.type_, self.value, self.tb)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_db/api.py", line 138, in wrapper
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
f(*args, **kwargs)
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py", line 249, in 
wrapped
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     with 
ctxt_mgr.writer.using(context):
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib64/python2.7/contextlib.py", line 17, in __enter__
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     return 
self.gen.next()
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_db/sqlalchemy/enginefacade.py", line 
1034, in _transaction_scope
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
context=context) as resource:
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_db/sqlalchemy/enginefacade.py", line 
684, in _produce_block
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     
self._writer()
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions   File 
"/usr/lib/python2.7/site-packages/oslo_db/sqlalchemy/enginefacade.py", line 
702, in _writer
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions     "Can't 
upgrade a READER transaction "
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions TypeError: 
Can't upgrade a READER transaction to a WRITER mid-transaction
  2018-01-31 07:45:35.937 2340 ERROR nova.api.openstack.extensions 
  2018-01-31 07:45:35.938 2340 INFO nova.api.openstack.wsgi 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] HTTP exception thrown: Unexpected API Error. 
Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API 
log if possible.
  <type 'exceptions.TypeError'>
  2018-01-31 07:45:35.938 2340 DEBUG nova.api.openstack.wsgi 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] Returning 500 to user: Unexpected API Error. 
Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API 
log if possible.
  <type 'exceptions.TypeError'> __call__ 
/usr/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:1029
  2018-01-31 07:45:35.939 2340 INFO nova.osapi_compute.wsgi.server 
[req-254ac685-f218-4a23-8fa6-9c6a2d48bb07 45bd2d15e8534c469bf08b7db268e8d4 
f80e111e5030457a872bee3a4c11ca70 - 8433db4810f947168950770f8c93a4f2 
8433db4810f947168950770f8c93a4f2] 192.168.0.180 "GET 
/v2.1/servers/detail?all_tenants=True HTTP/1.1" status: 500 len: 626 time: 
0.2633660

  but at same tenant I can show a instance information .

  nova --os-project-name="Intercon" show 5249185f-0a8e-4b24-a777-214ed967695f
  
+--------------------------------------+----------------------------------------------------------------------------------+
  | Property                             | Value                                
                                            |
  
+--------------------------------------+----------------------------------------------------------------------------------+
  | INTERNAL-NETWORK network             | 192.168.120.14                       
                         |
  | OS-DCF:diskConfig                    | AUTO                                 
                                            |
  | OS-EXT-AZ:availability_zone          | XXXXXXXXXXX                          
                                            |
  | OS-EXT-STS:power_state               | 1                                    
                                            |
  | OS-EXT-STS:task_state                | -                                    
                                            |
  | OS-EXT-STS:vm_state                  | active                               
                                            |
  | OS-SRV-USG:launched_at               | 2017-10-19T15:30:57.000000           
                                            |
  | OS-SRV-USG:terminated_at             | -                                    
                                            |
  | accessIPv4                           |                                      
                                            |
  | accessIPv6                           |                                      
                                            |
  | config_drive                         |                                      
                                            |
  | created                              | 2017-10-19T15:30:47Z                 
                                            |
  | description                          | zabbix-intercon                      
                                            |
  | flavor:disk                          | 40                                   
                                            |
  | flavor:ephemeral                     | 0                                    
                                            |
  | flavor:extra_specs                   | {}                                   
                                            |
  | flavor:original_name                 | m1.medium                            
                                            |
  | flavor:ram                           | 4096                                 
                                            |
  | flavor:swap                          | 0                                    
                                            |
  | flavor:vcpus                         | 2                                    
                                            |
  | hostId                               | 
723f077d53d4182fcb76bb87c7fc16efd7ad5fea5d939a9d1a61cb07                        
 |
  | id                                   | 5249185f-0a8e-4b24-a777-214ed967695f 
                                            |
  | image                                | Centos-7 
(d3f18d34-bb00-44e1-85cd-71bfae7ca24a)                                  |
  | key_name                             | saulo-fcm360_id_rsa                  
                                            |
  | locked                               | False                                
                                            |
  | metadata                             | {}                                   
                                            |
  | name                                 | zabbix-intercon                      
                                            |
  | os-extended-volumes:volumes_attached | [{"id": 
"4a30e8a4-86c3-4cef-9f89-5bccefd9df22", "delete_on_termination": false}] |
  | progress                             | 0                                    
                                            |
  | security_groups                      | Zabbix Access, default               
                                            |
  | status                               | ACTIVE                               
                                            |
  | tags                                 | []                                   
                                            |
  | tenant_id                            | e082484fc4004da78407a0c0857ae8a9     
                                            |
  | updated                              | 2018-01-31T00:06:36Z                 
                                            |
  | user_id                              | ff9a3af4473c480cacd0c4e18d68edb4     
                                            |
  
+--------------------------------------+----------------------------------------------------------------------------------+

  Ant help ?

  Saulo Augusto Silva
  sauloaugustosilva at gmail.com

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1746509/+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