aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb
Commit message (Collapse)AuthorAgeFilesLines
...
* Wrong exception is occured when raising no translatable exceptionkennyj2013-03-011-0/+2
|
* Support PostgreSQL specific column types when using `change_table`.Yves Senn2013-02-281-2/+14
| | | | | | | | Closes #9480. We use `TableDefinition` for `#create_table` and `Table` for `#change_table`. The PostgreSQL sepcifc types were only defined on `TableDefinition` so I also added them to `Table`.
* Do not type cast all the database url values.Rafael Mendonça França2013-02-241-3/+3
| | | | | | We should only type cast when we need to use. Related to 4b005fb371c2e7af80df7da63be94509b1db038c
* Remove valid_type? methodJon Leighton2013-02-151-4/+0
| | | | | It was supposed to be removed by the preceding two reversions but I did them in the wrong order.
* Revert "Make valid_type? public"Jon Leighton2013-02-151-4/+4
| | | | | | This reverts commit 5d528f835e871f5f9d4b68e8a81cfbe900b7e718. Relates to f8c8ad5 which is also getting reverted due to failing test.
* Make valid_type? publicSam Ruby2013-02-141-4/+4
|
* Merge pull request #9204 from ranjaykrishna/col-probAaron Patterson2013-02-121-0/+4
|\ | | | | schema dumper tests now conducted by ActiveRecord::Base.Connection
| * checking in the abstractions for valid type checking:Ranjay Krishna2013-02-121-0/+4
| |
* | Call super to use the abstract adapter implementation insteadCarlos Antonio da Silva2013-02-061-1/+1
| |
* | add ActiveRecord::AbstractAdapter#extensions and ↵Justin George2013-02-061-0/+9
| | | | | | | | ActiveRecord::ConnectionAdapters::PostgreSQLAdapter#extensions to allow dumping of enabled extensions to schema.rb, add ActiveRecord::SchemaDumper#extensions to dump extensions to schema.rb
* | reloading type map on extension changingAaron Patterson2013-01-291-2/+11
| |
* | fixing commentAaron Patterson2013-01-291-1/+1
| |
* | Fix typoRafael Mendonça França2013-01-291-1/+1
| |
* | Only search for enabled extension if the PostgreSQL version supportsRafael Mendonça França2013-01-291-3/+5
| | | | | | | | extensions
* | add API to pg for enabling / disabling hstoreAaron Patterson2013-01-281-0/+19
| |
* | Fix PostgreSQL tests on TravisAndrew White2013-01-241-0/+5
| | | | | | | | Travis only has PostgreSQL 9.1.x but 9.2 is required for range datatypes.
* | Add postgresql range types supportbUg2013-01-231-11/+34
|/
* Use whitelist to pass valid connection parameters to PGConn.Rafael Mendonça França2013-01-061-7/+10
| | | | | | | | | All the valids parameters for libpq are used. See http://www.postgresql.org/docs/9.1/static/libpq-connect.html for the full list Fixes #8784
* Remove the configuration key in the correct placeRafael Mendonça França2013-01-061-3/+1
|
* Remove unnecessary begin..rescue..end, use only rescueAkira Matsuda2013-01-061-25/+23
|
* Support for PostgreSQL's ltree data type.Rob Worley2013-01-041-1/+8
|
* AR supporting new intrange data type on PostgreSQL >= 9.2Alexey2012-12-161-4/+15
|
* Session variables for mysql, mysql2, and postgresql adapters can be setAaron Stone2012-12-081-1/+16
| | | | | | | | | in the new 'variables:' hash in each database config section in database.yml. The key-value pairs of this hash will be sent in a 'SET key = value, ...' query on new database connections. The configure_connection methods from mysql and mysql2 into are consolidated into the abstract_mysql base class.
* #7914 Remove code for unsupported postgreSQL version.Arturo Pie2012-10-131-3/+0
| | | | | | | Remove parsing of character type default values for 8.1 formatting since Rails doesn't support postgreSQL 8.1 anymore. Remove misleading comment unrelated to code.
* #7914 Using a better way to get the defaults from db.Arturo Pie2012-10-131-1/+2
| | | | | | | | | According to postgreSQL documentation: (http://www.postgresql.org/docs/8.2/static/catalog-pg-attrdef.html) we should not be using 'adsrc' field because this field is unaware of outside changes that could affect the way that default values are represented. Thus, I changed the queries to use "pg_get_expr(adbin, adrelid)" instead of the historical "adsrc" field.
* #7914 get default value when type uses schema nameArturo Pie2012-10-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | PostgreSQL adapter properly parses default values when using multiple schemas and domains. When using domains across schemas, PostgresSQL prefixes the type of the default value with the name of the schema where that type (or domain) is. For example, this query: ``` SELECT a.attname, d.adsrc FROM pg_attribute a LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum WHERE a.attrelid = "defaults"'::regclass AND a.attnum > 0 AND NOT a.attisdropped ORDER BY a.attnum; ``` could return something like "'<default_value>'::pg_catalog.text" or "(''<default_value>'::pg_catalog.text)::text" for the text columns with defaults. I modified the regexp used to parse this value so that it ignores anything between ':: and \b(?:character varying|bpchar|text), and it allows to have optional parens like in the above second example.
* Fixed unclosing tagAvnerCohen2012-10-091-1/+1
|
* Support for specifying transaction isolation levelJon Leighton2012-09-211-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If your database supports setting the isolation level for a transaction, you can set it like so: Post.transaction(isolation: :serializable) do # ... end Valid isolation levels are: * `:read_uncommitted` * `:read_committed` * `:repeatable_read` * `:serializable` You should consult the documentation for your database to understand the semantics of these different levels: * http://www.postgresql.org/docs/9.1/static/transaction-iso.html * https://dev.mysql.com/doc/refman/5.0/en/set-transaction.html An `ActiveRecord::TransactionIsolationError` will be raised if: * The adapter does not support setting the isolation level * You are joining an existing open transaction * You are creating a nested (savepoint) transaction The mysql, mysql2 and postgresql adapters support setting the transaction isolation level. However, support is disabled for mysql versions below 5, because they are affected by a bug (http://bugs.mysql.com/bug.php?id=39170) which means the isolation level gets persisted outside the transaction.
* Merge pull request #7547 from danmcclain/pg-arraysRafael Mendonça França2012-09-161-9/+66
|\ | | | | Adds migration and type casting support for PostgreSQL Array datatype
| * Moves column dump specific code to a module included in AbstractAdapterDan McClain2012-09-141-9/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having column related schema dumper code in the AbstractAdapter. The code remains the same, but by placing it in the AbstractAdapter, we can then overwrite it with Adapter specific methods that will help with Adapter specific data types. The goal of moving this code here is to create a new migration key for PostgreSQL's array type. Since any datatype can be an array, the goal is to have ':array => true' as a migration option, turning the datatype into an array. I've implemented this in postgres_ext, the syntax is shown here: https://github.com/dockyard/postgres_ext#arrays Adds array migration support Adds array_test.rb outlining the test cases for array data type Adds pg_array_parser to Gemfile for testing Adds pg_array_parser to postgresql_adapter (unused in this commit) Adds schema dump support for arrays Adds postgres array type casting support Updates changelog, adds note for inet and cidr support, which I forgot to add before Removing debugger, Adds pg_array_parser to JRuby platform Removes pg_array_parser requirement, creates ArrayParser module used by PostgreSQLAdapter
* | Ensure disconnecting or reconnecting resets the transaction stateJon Leighton2012-09-151-2/+2
| |
* | Store the transaction number in the transaction objectJon Leighton2012-09-151-1/+0
|/ | | | This avoids us having to manually increment and decrement it.
* postgres, map scaled intervals to string datatype (#7518)Yves Senn2012-09-061-1/+1
|
* ActiveRecord support to PostgreSQL 9.2 JSON typeDickson S. Guedes2012-09-051-1/+12
| | | | | | | | | This implements the support to encode/decode JSON data to/from database and creating columns of type JSON using a native type [1] supported by PostgreSQL from version 9.2. [1] http://www.postgresql.org/docs/9.2/static/datatype-json.html
* Modularize postgresql adapterKonstantin Shabanov2012-09-051-985/+136
|
* Refactor AR::Result or inherits. Because we have redundant codes aboutkennyj2012-08-221-8/+1
|
* load active_support/core_ext/object/blank in active_support/railsXavier Noria2012-08-021-1/+0
|
* Simulated & actual (manual/skipped) PostgreSQL auto-reconnection tests.Steve Jorgensen2012-07-161-0/+1
|
* Don't crash exception translation w/ nil result attribute.Steve Jorgensen2012-07-161-1/+1
| | | | | | Exception.result is nil when attempting a query after PostgreSQL disconnect, resulting in new exception: NoMethodError: undefined method `error_field' for nil:NilClass
* Merge pull request #6874 from robbkidd/rename_sequences_tooAaron Patterson2012-07-101-0/+7
|\ | | | | Rename default sequence when table is renamed? [AR:postgres]
| * Update psql adapter to rename a default pkey sequence when renaming a table.Robb Kidd2012-06-271-0/+7
| |
* | Unify the collation API for the database adptersRafael Mendonça França2012-07-011-4/+4
| |
* | Support collate and ctype on the PostgreSQL.kennyj2012-06-291-1/+20
|/
* Allow precision option for postgresql datetimesTony Schneider2012-06-221-0/+10
| | | | | | | | | | This patch addresses the difficulty of retrieving datetime fields. By default, the database holds a higher precision than the time as a String. This issue is discussed at length at the following links: - [#3519](https://github.com/rails/rails/issues/3519) - [#3520](https://github.com/rails/rails/issues/3520) Also, kudos to @mattscilipoti
* Change minimum (default) log level in PostgreSQL to warning.kennyj2012-06-181-1/+1
|
* Add uuid type support to PostgreSQL adapterKonstantin Shabanov2012-06-141-3/+7
|
* Merge pull request #6477 from steveklabnik/close_discovered_pg_connectionRafael Mendonça França2012-05-301-1/+2
|\ | | | | Properly discover a connection is closed in postgresql_adapter
| * Properly discover a connection is closed in postgresql_adapterSteve Klabnik2012-05-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | PQstatus doesn't properly test if future operations will succeed. A PQping function is added to libpq in PostgreSQL 9.1, but if we rely on it, everyone on earlier versions of Postgres is out of luck, and the pg gem wouldn't have the 'fix' until the next release. Thanks to @cbrecabarren and @ged for handling all the dirty details. Closes #3392.
* | Merge pull request #6386 from kennyj/fix_logs_name_consistencyAaron Patterson2012-05-301-6/+5
|\ \ | | | | | | Fix logs name consistency.
| * | Fix logs name consistency.kennyj2012-05-191-6/+5
| | |