Now that we have support for PHP7 in SS 3.x, we should test the Postgres module against it.
I've set up the tests to run weekly on this branch (and master) via TravisCI new cron job feature.
While we have a nightly "all modules" run in silverstripe-installer, it doesn't have the same matrix coverage as this run here.
I've also removed removed tests against older (and unsupported) 3.x releases (it was testing against 3.2)
This issue causes the comparison to fail if comparing a non text fields (for example, a date or integer). This will cause the CMS to fail in places such as Gridfield selector.
Similar fix as this one: https://github.com/silverstripe/silverstripe-framework/pull/2242 The difference being comparisonClause(...) being more apt solution in SS 3.1
Previous implementation of PostgreSQLDatabase::selectDatabase() just updated internal
registers, and expected connectDatabase() or similar to be called. This is out of line
with MySQLDatabase's behaviour, and frankly a bit stupid. FullTextSearch's test system
expected different behaviour from selectDatabase() and so this is needed to fix that.
Since it's making PostgreSQLDatabase match the behaviour of MySQLDatabase, I don't consider
it an API change.
When clearing tables this will delete all rows instead of truncating it.
Benchmarking this change by running the full cms and framework test suit changed improved the running time from 32 minutes to 9 minutes.
If truncate functionality is needed for any special cases it should be run as
DB::query("TRUNCATE \"TableToTruncate\"");
In prepration for https://github.com/silverstripe/sapphire/pull/1319
Probably should accept this at the same time.
If someone knows of the relevant ALTER permissions in Postgres, feel free to implment.
When a postgres db server is down or credentials are wrone, the adapter still tries to check for a existing database and loops back into trying to connect again.
This caused tables starting with "sql" to be excluded from
the tableList() results, where only "sql_" should be filtered.
An unescaped underscore in ANSI SQL pattern matching stands
for "any single character", the escape needed to be doubled
to account for PHP's own escape expanding.
This broke SQLQueryTest since the test data wasn't reset
between test runs.
Added composer.json file which will help this module for submission on proposed extension.silverstripe.org website. Please add more fields according to requirement.
For more information please visit at http://extension.openbees.org/instructions/