platform
Use the Gson adapters to serialize/deserialize the NatRules
Switch the NiciraNvpApi to a single gson Object with the proper adapters
Fix missing order setting for static nat rules and portforwarding rules
Return an error when a port range is passed in a portforwarding rule
The serializer is not required
Fix a bug where an ip address could be released even if it was still in
use for SourceNat
Throw a json parse exception when the type is unknown to the adapter
This fixes a null pointer if selected pool on which to deploy is unable
to be looked up via id. Used the same coding style found in the original
code (large if/else block).
If this is accepted, I'll fix master too. This patch doesn't apply
cleanly, but the code is very similar.
Testing:
Fixed broken system, tested against devcloud to ensure that it didn't
break a stock/fresh install (advanced zone with 3 storage pools).
Restarted VMs to ensure that the planner still functioned that way as
well.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
an IP. This seems to be possible if expunge fails at some point after freeing
an IP, on subsequent expunge tries the IP is freed already and gets null pointer
when looking for account id.
BUG-ID: CLOUDSTACK-2279
Bugfix-for: 4.1,4.2
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1367251304 -0600
pass back null if we fail to connect to agent or stop the vm, rather
than something that looks like success to the stopVirtualMachine api
command.
Testing:
Applied to 4.1 branch, attempted to stop VM with KVM agent disconnected,
finally saw it fail. The logs also showed why, which is good:
2013-04-25 17:37:09,933 ERROR [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-1:job-44) Unable to stop vm, agent unavailable:
com.cloud.exception.AgentUnavailableException: Resource [Host:1] is
unreachable: Host 1: Host with specified id is not in the right state:
Disconnected
Started the KVM agent, and stopping succeeded.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
Add migration to 4.1.0 in the PremiumDatabaseUpgradeChecker, like in the
DatabaseUpgradeChecker.
I opened the ticket CS 2172, and this fix corrects the issue.
Regards.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
anything fails
Changes:
createVolume changes the volume state from 'Allocated' to 'Creating',
but has no code to change it back to 'Allocated' if anything goes wrong,
despite there already being a path from 'Creating' to 'Allocated' for
volumes, via the OperationFailed event. Adding this in fixes the issue
and avoids leaving disks in an unusable state.
Testing:
Tested in devcloud-kvm, volume that was larger than primary storage
failed to attack, and went back to 'Allocated' from 'Creating' upon the
failure. I was then able to retry, and delete the disk.
can fail to start a VM without notifying caller, if no exception is triggered.
The result is that VM start looks successful but was not. This fixes it by
throwing an exception at the very end if the object to be passed back is still
null.
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1366225829 -0600
The DownloadProgress command is used to restart failed or stuck download jobs -- and it would not include the proxy information, unlike the DownloadCommand which always did
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
that don't have a domain id set (null).
Tested via: Called "listServiceOfferings" using a simple perl script,
once with an ID, and once without an ID specified.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
For 'connectivity' network service current set of providers (MidoNet,
NiciraNcp) not necessarily part of OSS builds. So handle the case where
there are no providers for a service
leaving instances in eternal expunged state. This happens when a domain is
deleted while a deleted account is cleaning up. The cleanup looks for the domain
of the account and we hit a null pointer. Adding null pointer check.
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1365695448 -0600
Most recent centos based systems have process limit of 1024. Running this test will result in an OutOfMemory exception with description unable to create native thread.
With commit d79f1f6fdc the AgentMonitor
was replaced with a pluggable service. However the ping timeout in the
original constructor was not passed on anymore, leading to a default
pingTimout of 0. This would fail all agents constantly.
Modified the startMonitor command to take a pingtimeout as an argument
and instruct AgentManagerImpl to pass it along.