Commit Graph

134 Commits

Author SHA1 Message Date
Damian Mooyman
90a7539ebd Fix incorrect SQL 2015-10-16 11:47:58 +13:00
Damian Mooyman
f932aa4b04 Update master to 2.0 for 4.0 compatibility 2015-10-16 11:30:00 +13:00
Damian Mooyman
a596d9d343 Update API for 3.2 release
Fix bug with literal question mark in conditions
See https://github.com/silverstripe/silverstripe-framework/pull/4288
2015-06-17 13:50:36 +12:00
Loz Calver
0a61b16caf NEW: Allow 'null' limit in database queries 2015-05-04 15:36:49 +01:00
Ingo Schommer
5a7ea699a0 Fixed indentation from last commit 2015-04-30 23:30:23 +12:00
David Preece
7bb29a9288 Fixes alter table problem
If you can log in (with write permissons), you can alter tables.
2015-03-14 12:14:54 +13:00
Damian Mooyman
1aeb7b1436 Merge pull request #30 from ClaySolutions/master
Add bigint support
2015-02-25 08:52:57 +13:00
Sean Harvey
846f31b31c Merge pull request #26 from torleif/patch-1
FIX postgres can filter on non text fields
2014-09-24 18:06:06 +12:00
Damian Mooyman
010ce575ed BUG Fix issues in master 2014-07-18 13:06:58 +12:00
ClayLennart
d9699fa28d Add bigint support 2014-07-15 09:44:01 +02:00
Damian Mooyman
abe3843012 API Upgraded module to use new database ORM 2014-07-11 09:13:52 +12:00
torleif
7626d74bee FIX postgres can filter on non text fields
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
2014-04-08 13:24:05 +12:00
Sam Minnee
863ead3255 FIX: Fix fatal bugs in previous commit. 2014-02-14 15:27:36 +13:00
Sam Minnee
f967c20383 FIX: PostgreSQLDatabase::selectDatabase() should switch to the database if it exists.
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.
2014-02-14 13:49:11 +13:00
Simon Welsh
b8771b79da Better error handling and support passwords with spaces in them 2013-12-20 14:34:31 +13:00
Sean Harvey
65702e4a6b Merge pull request #22 from stojg/unittest-speed-improvements
NEW: Improve the unittest running time by not truncating tables
2013-06-06 16:40:49 -07:00
Stig Lindqvist
082adb4fd6 NEW: Improve the unittest running time by not truncating tables
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\"");
2013-06-06 13:43:31 +12:00
Stephen Shkardoon
0c7362bbc5 Update PostgreSQLDatabaseConfigurationHelper.php
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.
2013-03-24 03:03:59 +13:00
Stig Lindqvist
201e5b7b8b BUG: Infinite loop on failed connect to a postgresql server
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.
2013-02-27 11:17:11 +13:00
Ingo Schommer
cd7b761bed BUG Faulty query escape in tableList()
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.
2012-12-11 15:09:10 +01:00
Ingo Schommer
fc7a21b567 BUG Support for case sensitive searches
Through newly added Database->comparisonClause() API
2012-12-11 01:47:47 +01:00
Damian Mooyman
9b623a2b2b BUG Unescaped underscore in query unintentionally hid any table beginning with 'SQL' or 'PG' 2012-11-16 14:42:49 +13:00
Damian Mooyman
ef4cd20cfa FIXED: Minor typo in string concatenation 2012-09-24 12:46:23 +12:00
Sam Minnee
3fe7671442 FIX: Conditional revert of 06f80d3347 as the original code is necessary in some configurations.
Now we have the magic of an if block to guide us.
2012-09-19 17:28:17 +12:00
Sam Minnee
06f80d3347 FIX: Fix the apparently obsolete code for extracting search index columns from the trigger meta-data. 2012-09-18 13:19:22 +12:00
Sam Minnee
54821bde2d FIX: Fixed PostgreSQLDatabase::indexList() / PostgresSQLDatabase::requireIndex() so that it doesn't need to infer the ORM-name for the index in order to determine the schema update. 2012-09-18 13:19:19 +12:00
Sam Minnee
8cd7cc5127 Removed unnecessary exec bit. 2012-09-18 12:49:21 +12:00
Damian Mooyman
37199fc08c FIXED: Incorrect paging on full text search results 2012-09-17 16:51:20 +12:00
Damian Mooyman
3291147c8e FIXED: Issue with correct extraction of index names from the database. The root cause of this issue was the way that columns from indxes were retrieved. It was assumed that the column names formed the index name, which isn't necessarily true (E.g. when the index is named "SearchFields"). The behaviour of the module was updated to create case-sensitive index and trigger names, which could then be used to later tell Silverstripe which indexes existed in the database. These could be compared to the SiteTree::$indexes property in a case-sensitive fashion to determine which indexes needed to be created / updated. This update fixes a lot of the unnecessary/broken DDL operations that occurred. 2012-09-17 16:15:00 +12:00
Damian Mooyman
dc7334087c FIXED: Improved parsing of index strings to support more index formats (array, string, variable index types in either form, etc).
UPDATED: Syntax to conform (better) to SS coding convention
UPDATED: Refactor, cleanup, and simplification of alterTable to reduce duplication of effort. Use of index parsing mechanism to pre-prepare indexe specifications for generation.
UPDATED: Better naming of variables (For instance, $indexName instead of $k)
BUG: Index generation is still not working properly. To investigate.
2012-09-17 11:13:41 +12:00
Sam Minnee
8cd458b818 BUGFIX: Make indexList() return double-quotes in index names to prevent unnecessary recreation of the indexes. 2012-08-21 16:22:17 +12:00
Sam Minnee
f74e9c260e BUGFIX: Fix support for \ characters in table names. 2012-08-21 16:21:45 +12:00
Saophalkun Ponlu
fe85c32d5b BUG: BUG Fix PostgreSQL error when creating a table for namespaced data object
This issue is caused by the presence of backslash characters (PHP namespace delimiter) in entity names.
2012-07-18 19:32:49 +12:00
Saophalkun Ponlu
0ffaf3d055 Revert "BUG Fix PostgreSQL error when creating a table for namespaced data object."
This reverts commit eeaa32a148.
2012-07-18 19:19:29 +12:00
Saophalkun Ponlu
eeaa32a148 BUG Fix PostgreSQL error when creating a table for namespaced data object.
This issue is caused by the presence of backslash characters (PHP namespace delimiter) in entity names
2012-07-18 14:36:08 +12:00
Ingo Schommer
bb07e6cfd5 Added supportsTimezoneOverride() method 2012-07-06 11:35:33 +02:00
Kirk Mayo
501c158f7f #BUGFIX: Ticket 7533 fixed a bug which I found whilst testing this and amended the README.md 2012-06-28 15:42:49 +02:00
Sean Harvey
29512e54b7 BUGFIX Fixing check for array when building indexes 2012-06-12 14:41:44 +12:00
Sean Harvey
200dcf3121 BUGFIX Fixing index building failing on array check when the index is a string. 2012-06-12 13:55:49 +12:00
Sean Harvey
1fd2088c96 BUGFIX Fixing PostgreSQLDatabase::searchEngine to work with SS3 2012-05-08 15:33:18 +12:00
Sean Harvey
8152ddce8c ENHANCEMENT Use simplier query syntax for SS3 ORM 2012-05-04 09:56:52 +12:00
Sean Harvey
6e30463e3e BUGFIX Fixing PostgreSQL support in SS 3.x, removing sqlQueryToString() since SQLQuery does the work of fixing selects instead. 2012-05-01 12:05:15 +12:00
Robert Curry
43ac0a4641 BUGFIX: Fixes #7123. Sets timezone of database if specified. 2012-04-16 11:49:35 +12:00
Sean Harvey
b9e63145b4 Merge pull request #2 from mrmorphic/master
Operator precedence error means query execution times are meaningless. This corrects them.
2012-02-10 19:02:29 -08:00
Sean Harvey
7a3024d046 BUGFIX Fixed support for fulltext search in PostgreSQLDatabase::searchEngine() by supporting DataList/PaginatedList/ArrayList when these classes are available 2012-02-11 15:58:04 +13:00
Mark Stephens
b08cf4b4ba BUGFIX: report query times correctly 2011-11-03 20:55:02 +13:00
Ingo Schommer
8bbf8401f9 MINOR Fixed edge case around 2011-09-15 18:01:02 +02:00
Ingo Schommer
5e058a151d ENHANCEMENT Optionally filtering by new File.ShowInSearch flag in PostgreSQLDatabase->searcnEngine() 2011-09-15 16:01:53 +02:00
Ingo Schommer
74abdec18b BUGFIX Allow omitting FROM clause in sqlQueryToString() 2011-05-19 11:35:56 +12:00
Ingo Schommer
2b0ffdb4e0 API CHANGE Renamed transactions methods from endTransaction() to transactionEnd(), startTransaction() to transactionStart() to comply with new sapphire trunk API 2011-03-11 16:43:27 +13:00