I brought this issue up on irc but figured it was a good idea to bring it
up here as well. I'm running into an issue deleting a shared network. This
is on CS 4.2.0. I have two shared networks exibiting the same behavior. At
this point I'd like to clean them up in the database if possible but if
something is off with the nics table (as I suspect), I'd be willing to fix
that as well.
>From the logs it appears that the NPE is in the cleanup step:
2014-01-07 04:48:15,111 DEBUG
[network.lb.LoadBalancingRulesManagerImpl] (Job-Executor-26:job-320 =
[ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ]) Found 0 lb rules to cleanup
2014-01-07 04:48:15,111 DEBUG [cloud.network.NetworkManagerImpl]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Cleaning up remote access vpns as a part of
public IP id=4 release...
2014-01-07 04:48:15,122 DEBUG [network.vpn.RemoteAccessVpnManagerImpl]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
there are no Remote access vpns for p
ublic ip address id=4
2014-01-07 04:48:15,132 DEBUG [cloud.network.NetworkManagerImpl]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Sending destroy to com.cloud.network.elemen
t.VirtualRouterElement_EnhancerByCloudStack_c958fdcb@31e924f9
2014-01-07 04:48:15,133 DEBUG [cloud.network.NetworkManagerImpl]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Network id=207 is destroyed successfully, c
leaning up corresponding resources now.
2014-01-07 04:48:15,138 DEBUG [network.guru.DirectNetworkGuru]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Releasing ip 172.16.0.1 of placeholder nic Ni
c[54-null-null-172.16.0.1]
2014-01-07 04:48:15,140 DEBUG [db.Transaction.Transaction]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Rolling back the transaction: Time = 5 Name = -A
syncJobManagerImpl$1.run:494-Executors$RunnableAdapter.call:471-FutureTask$Sync.innerRun:334-FutureTask.run:166-ThreadPoolExecutor.runWorker:1145-ThreadPoolExecutor$Worker.run:6
15-Thread.run:724; called by
-Transaction.rollback:898-Transaction.removeUpTo:841-Transaction.close:665-TransactionContextBuilder.interceptException:63-ComponentInstantiationPos
tProcessor$InterceptorDispatcher.intercept:133-NetworkManagerImpl.destroyNetwork:3131-ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept:125-NetworkServiceImpl.
deleteNetwork:1767-ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept:125-DeleteNetworkCmd.execute:70-ApiDispatcher.dispatch:158-AsyncJobManagerImpl$1.run:531
2014-01-07 04:48:15,146 ERROR [cloud.async.AsyncJobManagerImpl]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Unexpected
exception while executing
org.apache.cloudstack.api.command.user.network.DeleteNetworkCmd
java.lang.NullPointerException
at
com.cloud.network.guru.DirectNetworkGuru.trash(DirectNetworkGuru.java:311)
at
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
at
com.cloud.network.NetworkManagerImpl.destroyNetwork(NetworkManagerImpl.java:3131)
at
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
at
com.cloud.network.NetworkServiceImpl.deleteNetwork(NetworkServiceImpl.java:1767)
at
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
at
org.apache.cloudstack.api.command.user.network.DeleteNetworkCmd.execute(DeleteNetworkCmd.java:70)
at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:158)
at
com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:531)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
2014-01-07 04:48:15,149 DEBUG [cloud.async.AsyncJobManagerImpl]
(Job-Executor-26:job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ])
Complete async job-320 = [ ceb8c1fb-cb28-42b6-b9f6-6d82f760a689 ],
jobStatus: 2, resultCode: 530, result: Error Code: 530 Error text:
null
I've tried this with and without the virtual router running for that
network. Here are the entries from the nic table for that network
right now (with the VR running):
mysql> select id,instance_id,reservation_id,ip4_address,state,strategy
from nics where network_id = '208';
+-----+-------------+----------------+--------------+--------------+-------------+
| id | instance_id | reservation_id | ip4_address | state |
strategy |
+-----+-------------+----------------+--------------+--------------+-------------+
| 58 | 26 | NULL | 172.16.1.79 | Deallocating |
Create |
| 60 | NULL | NULL | 172.16.1.1 | Reserved |
PlaceHolder |
| 61 | 27 | NULL | 172.16.1.1 | Deallocating |
Create |
| 64 | 28 | NULL | 172.16.1.45 | Deallocating |
Create |
| 73 | 31 | NULL | 172.16.1.141 | Deallocating |
Create |
| 77 | 33 | NULL | 172.16.1.1 | Deallocating |
Create |
| 147 | 85 | NULL | 172.16.1.1 | Deallocating |
Create |
| 150 | 86 | NULL | 172.16.1.1 | Reserved |
Create |
+-----+-------------+----------------+--------------+--------------+-------------+
8 rows in set (0.00 sec)
Here's the entry from the networks table for it:
mysql> select * from networks where id = 208\G
*************************** 1. row ***************************
id: 208
name: prod-be-network
uuid: be81f804-f75d-4c8f-89af-9800b3c3f328
display_text: Production Backend Network
traffic_type: Guest
broadcast_domain_type: Vlan
broadcast_uri: vlan://1121
gateway: 172.16.1.1
cidr: 172.16.1.0/24
mode: Dhcp
network_offering_id: 19
physical_network_id: 202
data_center_id: 1
guru_name: DirectNetworkGuru
state: Implementing
related: 208
domain_id: 1
account_id: 1
dns1: 8.8.8.8
dns2: NULL
guru_data: NULL
set_fields: 0
acl_type: Domain
network_domain: cs1cloud.internal
reservation_id: eed95258-e478-49ed-a5ef-ffa5460d320d
guest_type: Shared
restart_required: 0
created: 2013-11-20 16:00:26
removed: NULL
specify_ip_ranges: 1
vpc_id: NULL
ip6_gateway: NULL
ip6_cidr: NULL
network_cidr: NULL
display_network: 1
network_acl_id: NULL
1 row in set (0.00 sec)
For comparison, here's the entry from nics and networks for the other
network that won't delete (207)
nics:
mysql> select id,instance_id,reservation_id,ip4_address,state,strategy
from nics where network_id = '207';
+-----+-------------+----------------+--------------+--------------+-------------+
| id | instance_id | reservation_id | ip4_address | state |
strategy |
+-----+-------------+----------------+--------------+--------------+-------------+
| 53 | 24 | NULL | 172.16.0.23 | Deallocating |
Create |
| 54 | NULL | NULL | 172.16.0.1 | Reserved |
PlaceHolder |
| 55 | 25 | NULL | 172.16.0.1 | Deallocating |
Create |
| 59 | 26 | NULL | 172.16.0.80 | Deallocating |
Create |
| 72 | 31 | NULL | 172.16.0.164 | Deallocating |
Create |
| 74 | 32 | NULL | 172.16.0.1 | Deallocating |
Create |
| 80 | 34 | NULL | 172.16.0.36 | Deallocating |
Create |
| 81 | 35 | NULL | 172.16.0.32 | Deallocating |
Create |
| 85 | 38 | NULL | 172.16.0.168 | Deallocating |
Create |
| 144 | 84 | NULL | 172.16.0.1 | Deallocating |
Create |
+-----+-------------+----------------+--------------+--------------+-------------+
10 rows in set (0.00 sec)
networks:
mysql> select * from networks where id = 207\G
*************************** 1. row ***************************
id: 207
name: prod-fe-network
uuid: da81b864-7082-4c46-a425-c5c6265a1eca
display_text: Production frontend network
traffic_type: Guest
broadcast_domain_type: Vlan
broadcast_uri: vlan://1120
gateway: 172.16.0.1
cidr: 172.16.0.0/24
mode: Dhcp
network_offering_id: 19
physical_network_id: 202
data_center_id: 1
guru_name: DirectNetworkGuru
state: Setup
related: 207
domain_id: 1
account_id: 1
dns1: 8.8.8.8
dns2: NULL
guru_data: NULL
set_fields: 0
acl_type: Domain
network_domain: cs1cloud.internal
reservation_id: 81d652a1-9cb3-4833-92ca-58ee7b33c04b
guest_type: Shared
restart_required: 0
created: 2013-11-20 15:54:39
removed: NULL
specify_ip_ranges: 1
vpc_id: NULL
ip6_gateway: NULL
ip6_cidr: NULL
network_cidr: NULL
display_network: 1
network_acl_id: NULL
1 row in set (0.00 sec)