(PDB-844) Formatted all clojure code with clojure-mode formatting
(maint) Update rpm spec to support systemd in el/fedora and suse
(maint) Update rpm spec and systemd service file for pidfile handling

Previously, the rpm package was creating /var/run/puppetdb at install time for
pidfile storage. This will break on modern Fedora/RHEL and SUSE systems as
/var/run (which is a symlink to /run) uses tmpfs and will not persist through a
reboot.

As the systemd service type is "simple", meaning non-forking, systemd
manages the process directly, and the PIDfile is not needed or used on
those platforms.
(maint) Update "sles-release" dependency to "distribution-release" virtual package

The "sles-release" package only exists SLES. distribution-release
is a virtual package that will install sles-release on SLES, or
OpenSUSE-release on OpenSUSE.
Merge pull request #1090 from senior/ticket/master/pdb-844-format-clj-code

(PDB-844) Formatted all clojure code with clojure-mode formatting
(PDB-813) Upgrade trapperkeeper, and move certificate-whitelist

This patch upgrades trapperkeeper, and the jetty component to the latest
revision. All lines of this patch are attributable to getting this to
work.

The major change was the change to certificate-whitelist, which is
not supported in trapperkeeper-webserver-jetty9 so we had to intercept
the configuration item, deprecate it and move it to a new [puppetdb] section
so we could do this work ourselves.

We avoid using [global] in this instance, since we have identified
a potential to clash if we want to bundle PDB with other clojure applications,
this is a general problem anyway - but our first move to try and reduce
this potential.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #1072 from shrug/maint/master/systemd

(maint)(packaging) Updates to packaging for improved systemd support and PID dir handling
Merge pull request #1088 from kbarber/ticket/master/pdb-813-upgrade-trapperkeeper

(PDB-813) Upgrade trapperkeeper, and move certificate-whitelist
Switch to using c3.large testing instances

This switches us over to the newer c3.large instance types in EC2. After some
testing I've found these boxes are much faster and can complete our tests at
a faster rate. Not only that for pricing they are priced at $0.105 versus
$0.130 (c1.medium) per instance hour.

And since c1.medium are now in the 'previous generation' bucket, best to switch
away anyway.

Signed-off-by: Ken Barber <ken@bob.sh>
(PDB-900) Make performance improvements to fact_values GC process

Switched from a background thread to cleanup orphaned fact_values to one
that deletes as it goes. Switching to deferred constraints also
significantly improved performance on PostgreSQL. The same facilities are
not available in HSQLDB, but I have alternate queries that work, though
will likely not be as fast.
Mention that a -contrib package is required when install pg_trgm

Signed-off-by: Ken Barber <ken@bob.sh>
Missing check for fact_values_string_trgm

The code for index handling was only checking one index, but not the other.
This corrects the logic, and drops and extra INFO when creating the new index.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #1092 from kbarber/maint/stable/switch-to-c3-large-instances

Switch to using c3.large testing instances
Merge pull request #1096 from kbarber/maint/stable/mention-postgresql-contrib

Mention that a -contrib package is required when install pg_trgm
Merge pull request #1094 from senior/ticket/stable/pdb-900-fact-value-cleanup

(PDB-900) Make performance improvements to fact_values GC process
Merge branch 'stable'

* stable:
  Mention that a -contrib package is required when install pg_trgm
  (PDB-900) Make performance improvements to fact_values GC process
  Switch to using c3.large testing instances

Conflicts:
	src/puppetlabs/puppetdb/scf/storage.clj
Missing opening ( during last merge-up from stable

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #1097 from kbarber/maint/stable/missing-check-for-fact_values_string_trgm

Missing check for fact_values_string_trgm
Try reverting to c1.medium

After the change to c3.large we started to see intermitent issues with tests,
this patch is to just test the theory that it might be the box change
somehow changing the timing characteristics or some such. We're not 100%
so we might need to revert this also.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #1100 from kbarber/maint/master/try-reverting-to-c1-medium

Try reverting to c1.medium