Hi: I tried to (in this order): - Create a network - Create a subnet I've tested a bit adding more log information. I've seen that, when the event "network create" is processed [1], tries to retrieve the network information, NOT from the cache but from the RPC client [2]. Then in [3], this new information (network, subnet and port) is added to the cache (debug log added at the beginning of [4]): WARNING neutron.agent.dhcp.agent [-] RAH - put network: _ns_name=qdhcp-a46c2769-fd1c-49f5-889f-6f019b727a48, admin_state_up=True, availability_zone_hints=[], availability_zones=['nova'], created_at=2019-05-20T11:20:38Z, description=, id=a46c2769-fd1c-49f5-889f-6f019b727a48, ipv4_address_scope=None, ipv6_address_scope=None, mtu=1500, name=net9, non_local_subnets=[], port_security_enabled=True, ports=[{'id': '3ba19af8-26fd-481e-bc60-2e294c74c7d4', 'name': '', 'network_id': 'a46c2769-fd1c-49f5-889f-6f019b727a48', 'tenant_id': '159b38ee91dc46a59a40536b26cc4233', 'mac_address': 'fa:16:3e:07:1f:a8', 'admin_state_up': True, 'status': 'ACTIVE', 'fixed_ips': [{'subnet_id': '38695b5e-ad25-4993-a851-8e1e18b053cf', 'ip_address': '10.103.0.2', 'subnet': {'id': '38695b5e-ad25-4993-a851-8e1e18b053cf', 'name': 'subnet3_a', 'tenant_id': '159b38ee91dc46a59a40536b26cc4233', 'network_id': 'a46c2769-fd1c-49f5-889f-6f019b727a48', 'ip_version': 4, 'subnetpool_id': None, 'enable_dhcp': True, 'ipv6_ra_mode': None, 'ipv6_address_mode': None, 'gateway_ip': '10.103.0.1', 'cidr': '10.103.0.0/24', 'allocation_pools': [{'start': '10.103.0.2', 'end': '10.103.0.254'}], 'host_routes': [], 'dns_nameservers': [], 'shared': False, 'description': '', 'service_types': [], 'tags': [], 'created_at': '2019-05-20T11:20:45Z', 'updated_at': '2019-05-20T11:20:45Z', 'revision_number': 0, 'project_id': '159b38ee91dc46a59a40536b26cc4233'}}], 'device_id': 'dhcp95cf1ac9-7fbf-5be6-bc93-e3471f4e5b33-a46c2769-fd1c-49f5-889f-6f019b727a48', 'device_owner': 'network:dhcp', 'allowed_address_pairs': [], 'extra_dhcp_opts': [], 'security_groups': [], 'description': '', 'binding:vnic_type': 'normal', 'binding:profile': {}, 'binding:host_id': 'osdev18', 'binding:vif_type': 'ovs', 'binding:vif_details': {'port_filter': True, 'ovs_hybrid_plug': False, 'datapath_type': 'system', 'bridge_name': 'br-int'}, 'port_security_enabled': False, 'qos_policy_id': None, 'resource_request': None, 'tags': [], 'created_at': '2019-05-20T11:20:46Z', 'updated_at': '2019-05-20T11:20:49Z', 'revision_number': 4, 'project_id': '159b38ee91dc46a59a40536b26cc4233'}], project_id=159b38ee91dc46a59a40536b26cc4233, provider:network_type=vlan, provider:physical_network=default, provider:segmentation_id=1072, qos_policy_id=None, revision_number=3, router:external=False, shared=False, status=ACTIVE, subnets=[{'id': '38695b5e-ad25-4993-a851-8e1e18b053cf', 'name': 'subnet3_a', 'tenant_id': '159b38ee91dc46a59a40536b26cc4233', 'network_id': 'a46c2769-fd1c-49f5-889f-6f019b727a48', 'ip_version': 4, 'subnetpool_id': None, 'enable_dhcp': True, 'ipv6_ra_mode': None, 'ipv6_address_mode': None, 'gateway_ip': '10.103.0.1', 'cidr': '10.103.0.0/24', 'allocation_pools': [{'start': '10.103.0.2', 'end': '10.103.0.254'}], 'host_routes': [], 'dns_nameservers': [], 'shared': False, 'description': '', 'service_types': [], 'tags': [], 'created_at': '2019-05-20T11:20:45Z', 'updated_at': '2019-05-20T11:20:45Z', 'revision_number': 0, 'project_id': '159b38ee91dc46a59a40536b26cc4233'}], tags=[], tenant_id=159b38ee91dc46a59a40536b26cc4233, updated_at=2019-05-20T11:20:45Z, vlan_transparent=None As you can see, although this is the first event to be processed (then we should have subnet creation and port creation), and this event should contain only the information from the network, because ResourceProcessingQueue processes the events asynchronously, when "network create" event is processed, the information of subnet and port is already there in the Neutron database. Possible solutions: - Do not process subnets and ports during the network creation event. - Handle correctly those subnets and ports added to the cache when the network is created. Regards. [1] https://github.com/openstack/neutron/blob/stable/stein/neutron/agent/dhcp/agent.py#L401 [2] https://github.com/openstack/neutron/blob/stable/stein/neutron/agent/dhcp/agent.py#L307 [3] https://github.com/openstack/neutron/blob/stable/stein/neutron/agent/dhcp/agent.py#L331 [4] https://github.com/openstack/neutron/blob/stable/stein/neutron/agent/dhcp/agent.py#L809