mirror of
https://github.com/silverstripe/silverstripe-postgresql
synced 2024-10-22 17:05:45 +02:00
Upgrade code for new namespaces
This commit is contained in:
parent
85526e7076
commit
946d429c41
7
.upgrade.yml
Normal file
7
.upgrade.yml
Normal file
@ -0,0 +1,7 @@
|
||||
mappings:
|
||||
PostgreSQLConnector: SilverStripe\PostgreSQL\PostgreSQLConnector
|
||||
PostgreSQLDatabase: SilverStripe\PostgreSQL\PostgreSQLDatabase
|
||||
PostgreSQLDatabaseConfigurationHelper: SilverStripe\PostgreSQL\PostgreSQLDatabaseConfigurationHelper
|
||||
PostgreSQLQuery: SilverStripe\PostgreSQL\PostgreSQLQuery
|
||||
PostgreSQLQueryBuilder: SilverStripe\PostgreSQL\PostgreSQLQueryBuilder
|
||||
PostgreSQLSchemaManager: SilverStripe\PostgreSQL\PostgreSQLSchemaManager
|
@ -1 +0,0 @@
|
||||
<?php
|
@ -3,14 +3,21 @@ name: postgresqlconnectors
|
||||
---
|
||||
Injector:
|
||||
PostgrePDODatabase:
|
||||
class: 'PostgreSQLDatabase'
|
||||
class: 'SilverStripe\PostgreSQL\PostgreSQLDatabase'
|
||||
properties:
|
||||
connector: %$PDOConnector
|
||||
schemaManager: %$PostgreSQLSchemaManager
|
||||
queryBuilder: %$PostgreSQLQueryBuilder
|
||||
PostgreSQLDatabase:
|
||||
class: 'PostgreSQLDatabase'
|
||||
class: 'SilverStripe\PostgreSQL\PostgreSQLDatabase'
|
||||
properties:
|
||||
connector: %$PostgreSQLConnector
|
||||
schemaManager: %$PostgreSQLSchemaManager
|
||||
queryBuilder: %$PostgreSQLQueryBuilder
|
||||
PostgreSQLConnector:
|
||||
class: 'SilverStripe\PostgreSQL\PostgreSQLConnector'
|
||||
type: prototype
|
||||
PostgreSQLSchemaManager:
|
||||
class: 'SilverStripe\PostgreSQL\PostgreSQLSchemaManager'
|
||||
PostgreSQLQueryBuilder:
|
||||
class: 'SilverStripe\PostgreSQL\PostgreSQLQueryBuilder'
|
||||
|
@ -1,5 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace SilverStripe\PostgreSQL;
|
||||
|
||||
use SilverStripe\ORM\Connect\DBConnector;
|
||||
use ErrorException;
|
||||
|
||||
/**
|
||||
* PostgreSQL connector class using the PostgreSQL specific api
|
||||
*
|
||||
@ -253,16 +258,6 @@ class PostgreSQLConnector extends DBConnector
|
||||
return pg_escape_string($this->dbConn, $value);
|
||||
}
|
||||
|
||||
public function escapeIdentifier($value, $separator = '.')
|
||||
{
|
||||
if (empty($separator) && function_exists('pg_escape_identifier')) {
|
||||
return pg_escape_identifier($this->dbConn, $value);
|
||||
}
|
||||
|
||||
// Let parent function handle recursive calls
|
||||
return parent::escapeIdentifier($value, $separator);
|
||||
}
|
||||
|
||||
public function selectDatabase($name)
|
||||
{
|
||||
if ($name !== $this->databaseName) {
|
||||
|
@ -1,5 +1,16 @@
|
||||
<?php
|
||||
|
||||
namespace SilverStripe\PostgreSQL;
|
||||
|
||||
use SilverStripe\ORM\DB;
|
||||
use SilverStripe\ORM\DataObject;
|
||||
use SilverStripe\ORM\ArrayList;
|
||||
use SilverStripe\ORM\Connect\SS_Database;
|
||||
use Config;
|
||||
use ErrorException;
|
||||
use Exception;
|
||||
use PaginatedList;
|
||||
|
||||
/**
|
||||
* PostgreSQL connector class.
|
||||
*
|
||||
@ -35,7 +46,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
*/
|
||||
public static function default_fts_cluster_method()
|
||||
{
|
||||
return Config::inst()->get('PostgreSQLDatabase', 'default_fts_cluster_method');
|
||||
return Config::inst()->get('SilverStripe\\PostgreSQL\\PostgreSQLDatabase', 'default_fts_cluster_method');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -45,7 +56,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
*/
|
||||
public static function default_fts_search_method()
|
||||
{
|
||||
return Config::inst()->get('PostgreSQLDatabase', 'default_fts_search_method');
|
||||
return Config::inst()->get('SilverStripe\\PostgreSQL\\PostgreSQLDatabase', 'default_fts_search_method');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -61,7 +72,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
*/
|
||||
public static function allow_query_master_postgres()
|
||||
{
|
||||
return Config::inst()->get('PostgreSQLDatabase', 'allow_query_master_postgres');
|
||||
return Config::inst()->get('SilverStripe\\PostgreSQL\\PostgreSQLDatabase', 'allow_query_master_postgres');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -76,7 +87,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
*/
|
||||
public static function model_schema_as_database()
|
||||
{
|
||||
return Config::inst()->get('PostgreSQLDatabase', 'model_schema_as_database');
|
||||
return Config::inst()->get('SilverStripe\\PostgreSQL\\PostgreSQLDatabase', 'model_schema_as_database');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -84,11 +95,11 @@ class PostgreSQLDatabase extends SS_Database
|
||||
* could be any of the supported languages that can be found in the
|
||||
* pg_catalog.pg_ts_config table.
|
||||
*
|
||||
* @var string
|
||||
* @return string
|
||||
*/
|
||||
public static function search_language()
|
||||
{
|
||||
return Config::inst()->get('PostgreSQLDatabase', 'search_language');
|
||||
return Config::inst()->get('SilverStripe\\PostgreSQL\\PostgreSQLDatabase', 'search_language');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -223,7 +234,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
* Utility method to manually set the schema to an alternative
|
||||
* Check existance & sets search path to the supplied schema name
|
||||
*
|
||||
* @param string $name Name of the schema
|
||||
* @param string $schema Name of the schema
|
||||
* @param boolean $create Flag indicating whether the schema should be created
|
||||
* if it doesn't exist. If $create is false and the schema doesn't exist
|
||||
* then an error will be raised
|
||||
@ -257,13 +268,11 @@ class PostgreSQLDatabase extends SS_Database
|
||||
* SQL queries. Sapphire cannot search for datamodel tables in alternate
|
||||
* schemas, so be wary of using alternate schemas within the ORM environment.
|
||||
*
|
||||
* @param string $arg1 First schema to use
|
||||
* @param string $arg2 Second schema to use
|
||||
* @param string $argN Nth schema to use
|
||||
* @param string ...$arg Schema name to use. Add additional schema names as extra arguments.
|
||||
*/
|
||||
public function setSchemaSearchPath()
|
||||
public function setSchemaSearchPath($arg = null)
|
||||
{
|
||||
if (func_num_args() == 0) {
|
||||
if (!$arg) {
|
||||
user_error('At least one Schema must be supplied to set a search path.', E_USER_ERROR);
|
||||
}
|
||||
$schemas = array_values(func_get_args());
|
||||
@ -274,8 +283,17 @@ class PostgreSQLDatabase extends SS_Database
|
||||
* The core search engine configuration.
|
||||
* @todo Properly extract the search functions out of the core.
|
||||
*
|
||||
* @param array $classesToSearch
|
||||
* @param string $keywords Keywords as a space separated string
|
||||
* @return object DataObjectSet of result pages
|
||||
* @param int $start
|
||||
* @param int $pageLength
|
||||
* @param string $sortBy
|
||||
* @param string $extraFilter
|
||||
* @param bool $booleanSearch
|
||||
* @param string $alternativeFileFilter
|
||||
* @param bool $invertedMatch
|
||||
* @return PaginatedList List of result pages
|
||||
* @throws Exception
|
||||
*/
|
||||
public function searchEngine($classesToSearch, $keywords, $start, $pageLength, $sortBy = "ts_rank DESC", $extraFilter = "", $booleanSearch = false, $alternativeFileFilter = "", $invertedMatch = false)
|
||||
{
|
||||
@ -613,7 +631,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
// Check current schema is valid
|
||||
$oldSchema = $this->schema;
|
||||
if (empty($oldSchema)) {
|
||||
return true;
|
||||
return;
|
||||
} // Nothing selected to drop
|
||||
|
||||
// Select another schema
|
||||
@ -667,6 +685,7 @@ class PostgreSQLDatabase extends SS_Database
|
||||
// New connection made here, treating the new database name as the new original
|
||||
$this->databaseOriginal = $name;
|
||||
$this->connectDefault();
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1,4 +1,12 @@
|
||||
<?php
|
||||
|
||||
namespace SilverStripe\PostgreSQL;
|
||||
|
||||
use DatabaseConfigurationHelper;
|
||||
use PDO;
|
||||
use Exception;
|
||||
use DatabaseAdapterRegistry;
|
||||
|
||||
/**
|
||||
* This is a helper class for the SS installer.
|
||||
*
|
||||
@ -120,24 +128,6 @@ class PostgreSQLDatabaseConfigurationHelper implements DatabaseConfigurationHelp
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper function to quote a string value
|
||||
*
|
||||
* @param mixed $conn Connection object/resource
|
||||
* @param string $value Value to quote
|
||||
* @return string Quoted strieng
|
||||
*/
|
||||
protected function quote($conn, $value)
|
||||
{
|
||||
if ($conn instanceof PDO) {
|
||||
return $conn->quote($value);
|
||||
} elseif (is_resource($conn)) {
|
||||
return "'".pg_escape_string($conn, $value)."'";
|
||||
} else {
|
||||
user_error('Invalid database connection', E_USER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper function to execute a query
|
||||
*
|
||||
|
@ -1,5 +1,9 @@
|
||||
<?php
|
||||
|
||||
namespace SilverStripe\PostgreSQL;
|
||||
|
||||
use SilverStripe\ORM\Connect\SS_Query;
|
||||
|
||||
/**
|
||||
* A result-set from a PostgreSQL database.
|
||||
*
|
||||
@ -16,8 +20,7 @@ class PostgreSQLQuery extends SS_Query
|
||||
|
||||
/**
|
||||
* Hook the result-set given into a Query class, suitable for use by sapphire.
|
||||
* @param database The database object that created this query.
|
||||
* @param handle the internal Postgres handle that is points to the resultset.
|
||||
* @param resource $handle the internal Postgres handle that is points to the resultset.
|
||||
*/
|
||||
public function __construct($handle)
|
||||
{
|
||||
|
@ -1,5 +1,11 @@
|
||||
<?php
|
||||
|
||||
namespace SilverStripe\PostgreSQL;
|
||||
|
||||
use SilverStripe\ORM\Queries\SQLSelect;
|
||||
use SilverStripe\ORM\Connect\DBQueryBuilder;
|
||||
use InvalidArgumentException;
|
||||
|
||||
class PostgreSQLQueryBuilder extends DBQueryBuilder
|
||||
{
|
||||
/**
|
||||
|
@ -1,5 +1,11 @@
|
||||
<?php
|
||||
|
||||
namespace SilverStripe\PostgreSQL;
|
||||
|
||||
use SilverStripe\ORM\Connect\DBSchemaManager;
|
||||
use SilverStripe\ORM\DB;
|
||||
use Deprecation;
|
||||
|
||||
/**
|
||||
* PostgreSQL schema manager
|
||||
*
|
||||
@ -122,7 +128,8 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
{
|
||||
if (PostgreSQLDatabase::model_schema_as_database()) {
|
||||
$schemaName = $this->database->databaseToSchemaName($name);
|
||||
return $this->dropSchema($schemaName);
|
||||
$this->dropSchema($schemaName);
|
||||
return;
|
||||
}
|
||||
$this->dropPostgresDatabase($name);
|
||||
}
|
||||
@ -400,7 +407,7 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
|
||||
if ($alteredOptions && isset($this->class) && isset($alteredOptions[$this->class])) {
|
||||
$this->query(sprintf("ALTER TABLE \"%s\" %s", $table, $alteredOptions[$this->class]));
|
||||
Database::alteration_message(
|
||||
DB::alteration_message(
|
||||
sprintf("Table %s options changed: %s", $table, $alteredOptions[$this->class]),
|
||||
"changed"
|
||||
);
|
||||
@ -808,6 +815,7 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
if ($indexSpec[0] != '(') {
|
||||
list($indexType, $indexFields) = explode(' ', $indexSpec, 2);
|
||||
} else {
|
||||
$indexType = null;
|
||||
$indexFields = $indexSpec;
|
||||
}
|
||||
|
||||
@ -1045,28 +1053,12 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
* Return a boolean type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function boolean($values, $asDbValue=false)
|
||||
public function boolean($values)
|
||||
{
|
||||
//Annoyingly, we need to do a good ol' fashioned switch here:
|
||||
$default = $values['default'] ? '1' : '0';
|
||||
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'smallint');
|
||||
}
|
||||
|
||||
if ($values['arrayValue'] != '') {
|
||||
$default = '';
|
||||
} else {
|
||||
$default = ' default ' . (int)$values['default'];
|
||||
}
|
||||
return "smallint{$values['arrayValue']}" . $default;
|
||||
return "smallint default {$default}";
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1077,26 +1069,17 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
*/
|
||||
public function date($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
return "date{$values['arrayValue']}";
|
||||
return "date";
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a decimal type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function decimal($values, $asDbValue=false)
|
||||
public function decimal($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
// Avoid empty strings being put in the db
|
||||
if ($values['precision'] == '') {
|
||||
$precision = 1;
|
||||
@ -1109,11 +1092,7 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
$defaultValue = ' default ' . floatval($values['default']);
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type' => 'numeric', 'precision' => $precision);
|
||||
} else {
|
||||
return "decimal($precision){$values['arrayValue']}$defaultValue";
|
||||
}
|
||||
return "decimal($precision)$defaultValue";
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1124,103 +1103,52 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
*/
|
||||
public function enum($values)
|
||||
{
|
||||
//Enums are a bit different. We'll be creating a varchar(255) with a constraint of all the usual enum options.
|
||||
//NOTE: In this one instance, we are including the table name in the values array
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
if ($values['arrayValue']!='') {
|
||||
$default = '';
|
||||
} else {
|
||||
$default = " default '{$values['default']}'";
|
||||
}
|
||||
|
||||
return "varchar(255){$values['arrayValue']}" . $default . " check (\"" . $values['name'] . "\" in ('" . implode('\', \'', $values['enums']) . "'))";
|
||||
$default = " default '{$values['default']}'";
|
||||
return "varchar(255)" . $default . " check (\"" . $values['name'] . "\" in ('" . implode('\', \'', $values['enums']) . "'))";
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a float type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function float($values, $asDbValue = false)
|
||||
public function float($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type' => 'double precision');
|
||||
} else {
|
||||
return "float{$values['arrayValue']}";
|
||||
}
|
||||
return "float";
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a float type-formatted string cause double is not supported
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function double($values, $asDbValue=false)
|
||||
public function double($values)
|
||||
{
|
||||
return $this->float($values, $asDbValue);
|
||||
return $this->float($values);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a int type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function int($values, $asDbValue = false)
|
||||
public function int($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'integer', 'precision'=>'32');
|
||||
}
|
||||
|
||||
if ($values['arrayValue']!='') {
|
||||
$default='';
|
||||
} else {
|
||||
$default=' default ' . (int)$values['default'];
|
||||
}
|
||||
|
||||
return "integer{$values['arrayValue']}" . $default;
|
||||
return "integer default " . (int)$values['default'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a bigint type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function bigint($values, $asDbValue = false)
|
||||
public function bigint($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'bigint', 'precision'=>'64');
|
||||
}
|
||||
|
||||
if ($values['arrayValue']!='') {
|
||||
$default='';
|
||||
} else {
|
||||
$default=' default ' . (int)$values['default'];
|
||||
}
|
||||
|
||||
return "bigint{$values['arrayValue']}" . $default;
|
||||
return "bigint default" . (int)$values['default'];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1228,40 +1156,22 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
* For PostgreSQL, we simply return the word 'timestamp', no other parameters are necessary
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function SS_Datetime($values, $asDbValue = false)
|
||||
public function datetime($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue']='';
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'timestamp without time zone');
|
||||
} else {
|
||||
return "timestamp{$values['arrayValue']}";
|
||||
}
|
||||
return "timestamp";
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a text type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function text($values, $asDbValue = false)
|
||||
public function text($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue'] = '';
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'text');
|
||||
} else {
|
||||
return "text{$values['arrayValue']}";
|
||||
}
|
||||
return "text";
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1272,35 +1182,22 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
*/
|
||||
public function time($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue'] = '';
|
||||
}
|
||||
|
||||
return "time{$values['arrayValue']}";
|
||||
return "time";
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a varchar type-formatted string
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function varchar($values, $asDbValue=false)
|
||||
public function varchar($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue'] = '';
|
||||
}
|
||||
|
||||
if (!isset($values['precision'])) {
|
||||
$values['precision'] = 255;
|
||||
}
|
||||
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'varchar', 'precision'=>$values['precision']);
|
||||
} else {
|
||||
return "varchar({$values['precision']}){$values['arrayValue']}";
|
||||
}
|
||||
return "varchar({$values['precision']})";
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1308,21 +1205,11 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
* For Postgres, we'll use a 4 digit numeric
|
||||
*
|
||||
* @param array $values Contains a tokenised list of info about this data type
|
||||
* @param boolean $asDbValue
|
||||
* @return string
|
||||
*/
|
||||
public function year($values, $asDbValue = false)
|
||||
public function year($values)
|
||||
{
|
||||
if (!isset($values['arrayValue'])) {
|
||||
$values['arrayValue'] = '';
|
||||
}
|
||||
|
||||
//TODO: the DbValue result does not include the numeric_scale option (ie, the ,0 value in 4,0)
|
||||
if ($asDbValue) {
|
||||
return array('data_type'=>'decimal', 'precision'=>'4');
|
||||
} else {
|
||||
return "decimal(4,0){$values['arrayValue']}";
|
||||
}
|
||||
return "decimal(4,0)";
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1334,7 +1221,7 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
* @param array $this_index Index specification for the fulltext index
|
||||
* @param string $tableName
|
||||
* @param string $name
|
||||
* @param array $spec
|
||||
* @return array
|
||||
*/
|
||||
protected function fulltext($this_index, $tableName, $name)
|
||||
{
|
||||
@ -1462,7 +1349,7 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||
* @param array $indexes
|
||||
* @param array $extensions
|
||||
*/
|
||||
public function createOrReplacePartition($tableName, $partitions, $indexes, $extensions)
|
||||
public function createOrReplacePartition($tableName, $partitions, $indexes = [], $extensions = [])
|
||||
{
|
||||
|
||||
//We need the plpgsql language to be installed for this to work:
|
||||
|
@ -1,5 +1,7 @@
|
||||
<?php
|
||||
|
||||
use SilverStripe\PostgreSQL\PostgreSQLConnector;
|
||||
|
||||
/**
|
||||
* Description of PostgreSQLConnectorTest
|
||||
*
|
||||
|
@ -1,4 +1,9 @@
|
||||
<?php
|
||||
|
||||
use SilverStripe\ORM\DB;
|
||||
use SilverStripe\ORM\DataObject;
|
||||
use SilverStripe\PostgreSQL\PostgreSQLDatabase;
|
||||
|
||||
/**
|
||||
* @package postgresql
|
||||
* @subpackage tests
|
||||
|
Loading…
Reference in New Issue
Block a user