fix statistics query in postgres

when aggregate functions present, postgres requires all
non-aggregate columns selected to be included in group by clause
to ensure a single value is selected.

Change-Id: Iccbcd8046cca872e8eba472f48fa392114f34426
Closes-Bug: #1256318
Remove duplicate alarm from alarm_ids

Alarm ids in combination rule is a list, and for now, we allow duplicate
alarms, the duplicate alarms are unnecessary to handle when evaluate a
combination alarm, and it is weird when print the combination rule.

This patch will remove duplicate alarm ids when user try to post or put
combination alarm.

Change-Id: Ic9392355e08834b4d01b0e421de1c77fed8ac5e4
Closes-Bug: #1304886
Made get_engine method module-private

This method is not accessed outside of this module so there is no need
for it to be public.

Encapsulation this method will allow us to improve connection creation.

Change-Id: I59e13c61510a81904858e575c2f6f8989727026c
Add encoding argument to deserialising udp packets in collector

Samples from udp publisher failed signature verifying when they
contain utf8 strs. It happened because msgpack.loads
unpacked data without utf8 by default and in compute signature
this strs are processed as different.
This is fixed by adding of encoding in unpacking packets from
udp

Fixes: bug #1297731

Change-Id: I3a8072eb49a61364ff1a6bff1a14ad2c9925b88e
Merge "fix statistics query in postgres"
Merge "Made get_engine method module-private"
Merge "Remove duplicate alarm from alarm_ids"
Use known protocol scheme in keystone tests

With the recent introduction of the identity_uri in keystoneclient,
there is a small backward incompatible change which means that weird
protocols like the ones we use during tests aren't support properly
anymore. The patch replaces "foottp" and "barttp" by "file" hopefully
keeping testing coverage the same.

Change-Id: Idb30ff3ee0ca50911e453899ad32e630f9b18724
Closes-Bug: #1309092
Remove ceilometer.conf.sample

The check-uptodate.sh was removed from the tox checks and therefore
ceilometer.conf.sample is not tested any more to be up to date. As this
sample configuration file changes independently from the project, this check
failed on the gate time to time, as this file  needed to be updated manually.
In order to avoid the need of this periodic manual process, the sample file
is removed from git in this patch and an alternate solution is added for
generating the file manually. Also a README file is added to the place of the
config sample to document this change.

Change-Id: I0bbec0e86f63e6fcd691d626473ed8498024f7ab
Merge "Add encoding argument to deserialising udp packets in collector"
Merge "Remove ceilometer.conf.sample"
Use NotificationPlugin as an oslo.msg endpoint

This refactor the NotificationPlugin code to have
NotificationPlugin acting as a oslo.messaging endpoint

Change-Id: Iecdce3513a22a1c1d5037ed2969c6333e893791d
Consume notif. from multiple message bus

This patch allow to consume notification from multiple
message bus servers at the same times with configuration like:

 [DEFAULT]
 transport_url = rabbit://rabbit-ceilo:5772/

 [notification]
 messaging_urls = rabbit://rabbit-nova1:5772,rabbit-nova2:5772/
 messaging_urls = rabbit://rabbit-cinder:5772/
 messaging_urls = rabbit://rabbit-neutron:5772/

Implements blueprint multiple-rabbitmq

Co-Authored-By: Ala Rezmerita <ala.rezmerita@cloudwatt.com>

Change-Id: If3bf6f080ce15f2403c3516b433953b0bdf6ea40