aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters
Commit message (Collapse)AuthorAgeFilesLines
* fix documentation for SchemaStatements#add_foreign_keySimon Stemplinger2015-04-081-2/+2
| | | | | | The implementation of the generation of the foreign key name was changed between Rails 4.2.0 and 4.2.1 from a random to a deterministic behavior, however the documentation still describes the old randomized behavior.
* Merge pull request #17574 from kamipo/charset_collation_optionsJeremy Kemper2015-04-072-0/+39
|\ | | | | | | Add charset and collation options support for MySQL string and text columns.
| * Add `:charset` and `:collation` options support for MySQL string and text ↵Ryuta Kamizono2015-03-062-0/+39
| | | | | | | | | | | | | | | | | | | | | | columns Example: create_table :foos do |t| t.string :string_utf8_bin, charset: 'utf8', collation: 'utf8_bin' t.text :text_ascii, charset: 'ascii' end
* | Merge pull request #19448 from tgxworld/fix_activesupport_callbacks_clash_on_runRafael Mendonça França2015-04-061-2/+2
|\ \ | | | | | | Fix AS::Callbacks raising an error when `:run` callback is defined.
| * | Revert "Reduce allocations when running AR callbacks."Guo Xiang Tan2015-03-221-2/+2
| | | | | | | | | | | | This reverts commit 796cab45561fce268aa74e6587cdb9cae3bb243e.
* | | No need to document drop_table in the PostgreSQLAdapterRafael Mendonça França2015-04-063-9/+8
| | | | | | | | | | | | | | | | | | It behaves in the same way that the abstract adapter. [ci skip]
* | | change the explanation of :if_exists option [ci skip]Mehmet Emin İNAÇ2015-04-062-2/+2
| | |
* | | drop_table method documentation for mysql and postgresql adapters [ci skip]Mehmet Emin İNAÇ2015-04-062-0/+19
| | |
* | | use singular table name if pluralize_table_names is setted as false while ↵Mehmet Emin İNAÇ2015-04-062-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | creating foreign key test case for use singular table name if pluralize_table_names is setted as false while creating foreign key refactor references foreign key addition tests use singular table name while removing foreign key merge foreign key singular table name methods remove unnecessary drop table from test
* | | Freeze static arguments for gsubbrainopia2015-04-022-3/+3
| | |
* | | Prefer string patterns for gsubbrainopia2015-04-022-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/ruby/ruby/pull/579 - there is a new optimization since ruby 2.2 Previously regexp patterns were faster (since a string was converted to regexp underneath anyway). But now string patterns are faster and better reflect the purpose. Benchmark.ips do |bm| bm.report('regexp') { 'this is ::a random string'.gsub(/::/, '/') } bm.report('string') { 'this is ::a random string'.gsub('::', '/') } bm.compare! end # string: 753724.4 i/s # regexp: 501443.1 i/s - 1.50x slower
* | | Make method as nodoc since we are already docummenting at AbstractAdapterRafael Mendonça França2015-03-311-1/+1
| | |
* | | Reduce memory usage when loading types in PGSean Griffin2015-03-292-8/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were never clearing the `PG::Result` object used to query the types when the connection is first established. This would lead to a potentially large amount of memory being retained for the life of the connection. Investigating this issue also revealed several low hanging fruit on the performance of these methods, and the number of allocations has been reduced by ~90%. Fixes #19578
* | | PostgreSQL, Use ruby-pg's built-in capabilities for array en-/decoding in C.Lars Kanis2015-03-253-147/+10
| | | | | | | | | | | | This obsoletes the ruby based implementations.
* | | PostgreSQL, Add input type casts for primitive types.Lars Kanis2015-03-251-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | Ruby-pg's default way to serialize values for transmission to the database is to call #to_s . This however creates a temporary String object for each value. Setting a class based type map avoids the allocation of this additional String. The performance benefit is measurable in microbenchmarks, but not with the overhead of activerecord. However it's free to use and has no drawback.
* | | PostgreSQL, Fix OID based type casts in C for primitive types.Lars Kanis2015-03-253-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The type map was introduced in aafee23, but wasn't properly filled. This mainly adjusts many locations, that expected strings instead of integers or boolean. add_pg_decoders is moved after setup of the StatementPool, because execute_and_clear could potentially make use of it.
* | | [ci skip] Remove unacceptable method nameyui-knk2015-03-241-1/+1
| | |
* | | Merge pull request #19449 from Gaurav2728/gaurav-unavailable_linkRafael Mendonça França2015-03-231-2/+1
|\ \ \ | | | | | | | | remove old unavailable link with relevant fix patch 1
| * | | remove old unavailable link with relevant fixGaurav Sharma2015-03-231-2/+1
| |/ /
* / / update mysql link that has been replacedGaurav Sharma2015-03-231-1/+1
|/ /
* | Delegate limit to subtypewallerjake2015-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | As described here https://github.com/rails/rails/issues/19420. When using the Postgres BigInt[] field type the big int value was not being translated into schema.rb. This caused the field to become just a regular integer field when building off of schema.rb. This fix will address this by delegating the limit from the subtype to the Array type. https://github.com/rails/rails/issues/19420
* | Don't cast nil to string in pg enumsSean Griffin2015-03-191-1/+3
| | | | | | | | Fixes #19389.
* | Updated MySQL documentation link to MySQL latest version 5.6 everywhere [ci ↵amitkumarsuroliya2015-03-192-4/+4
| | | | | | | | skip]
* | Updated MySQL documentation link to latest version MySQL 5.6 [ci skip]amitkumarsuroliya2015-03-191-2/+2
| |
* | Updated MySQL documentation link for STRICT_ALL_TABLESamitkumarsuroliya2015-03-191-1/+1
| |
* | Materialize subqueries by adding `DISTINCT`Yasuo Honda2015-03-161-1/+3
| | | | | | | | to support MySQL 5.7.6 `optimizer_switch='derived_merge=on'`
* | Fix before_commit when updating a record on the callbackArthur Neves2015-03-141-23/+22
| |
* | Require pg~>0.18 to ensure Ruby 2.2 compatibilityMatt Brictson2015-03-111-2/+2
| | | | | | | | | | | | | | Versions of the pg gem earlier than 0.18.0 cannot be used safely with Ruby 2.2. Specifically, pg 0.17 when used with Ruby 2.2 has a known bug that causes random bits to be added to the end of strings. Further explanation here: https://bitbucket.org/ged/ruby-pg/issue/210/crazy-bytes-being-added-to-record
* | pg, `disable_referential_integrity` only catches AR errors.Yves Senn2015-03-111-2/+2
| | | | | | | | This change was prompted by 598b841.
* | fix typo in transaction argument. Closes #19265.Yves Senn2015-03-111-1/+1
|/ | | | | | There was a typo in the `:requires_new` option. This led to `#<ArgumentError: unknown keyword: require_new>` leaving all the triggers in a disabled state.
* Correctly dump `serial` and `bigserial`Ryuta Kamizono2015-03-044-4/+29
|
* Add `Column#bigint?` methodRyuta Kamizono2015-03-043-3/+7
|
* Merge pull request #19171 from JuanitoFatas/doc/more-examplesSean Griffin2015-03-021-0/+16
|\ | | | | Add more documents for AR connection_adapters abstract schema_definitions. [ci skip]
| * Add more documents for AR connection_adapters abstract schema_definitions. ↵Juanito Fatas2015-03-031-0/+16
| | | | | | | | | | | | | | | | | | [ci skip] - Add example to column_exists? - Add example to index_exists? - Add document for foreign_key - Add document for foreign_key_exists?
* | Revert "delete unused method"Carlos Antonio da Silva2015-03-021-0/+4
| | | | | | | | | | | | | | | | This reverts commit a38732c8e6ab76ea0db4e1a617a1fa84b53a9750. Since the mutation logic was reverted in 07278519bb6db5579171fea70bccdfee1306f1d4, we must bring the reader method back as well, since the implementation relies on it.
* | Revert "mutate the transaction object to reflect state"Aaron Patterson2015-03-021-29/+25
| | | | | | | | | | | | | | | | This reverts commit 393e65b4170608593ad82377a9eadc918e85698d and ec51c3fedd16b561d096dcc1a6705fdc02ab7666 We don't want the records to hold hard references to transactions because they point at records that have callbacks.
* | delete unused methodAaron Patterson2015-03-021-4/+0
| |
* | mutate the transaction object to reflect stateAaron Patterson2015-03-021-25/+21
| | | | | | | | | | this lets us keep singleton instances of "state" values and precalculate return values of things like `finalized?` and `completed?`.
* | ask the txn for it's state, not a state objectAaron Patterson2015-03-021-0/+8
| | | | | | | | | | this way we don't have to mutate a state object, we can just change the state of the txn
* | change if! to unlessAaron Patterson2015-03-021-1/+1
| |
* | Merge pull request #19172 from JuanitoFatas/doc/fix-typoRichard Schneeman2015-03-021-2/+2
|\ \ | | | | | | [ci skip] Fix a typo for PostgreSQL text limit, GB instead of Gb.
| * | [ci skip] Fix a typo for PostgreSQL text limit, GB instead of Gb.Juanito Fatas2015-03-031-2/+2
| |/
* / Clarify that t.references and t.belongs_to are interchangeable. [ci skip]Juanito Fatas2015-03-021-1/+1
|/
* Remove parent transaction stateArthur Neves2015-03-011-3/+0
| | | | As far as I can tell nobody is setting this variable.
* Add `SchemaMigration.create_table` support any unicode charsets for MySQL.Ryuta Kamizono2015-02-262-9/+10
| | | | | | | | | | | | | | | | | MySQL unicode support is not only `utf8mb4`. Then, The index length problem is not only `utf8mb4`. http://dev.mysql.com/doc/refman/5.6/en/charset-unicode.html SELECT * FROM information_schema.character_sets WHERE maxlen > 3; +--------------------+----------------------+------------------+--------+ | CHARACTER_SET_NAME | DEFAULT_COLLATE_NAME | DESCRIPTION | MAXLEN | +--------------------+----------------------+------------------+--------+ | utf8mb4 | utf8mb4_general_ci | UTF-8 Unicode | 4 | | utf16 | utf16_general_ci | UTF-16 Unicode | 4 | | utf16le | utf16le_general_ci | UTF-16LE Unicode | 4 | | utf32 | utf32_general_ci | UTF-32 Unicode | 4 | +--------------------+----------------------+------------------+--------+
* cache quoted column names in SQLite3Aaron Patterson2015-02-241-1/+2
| | | | we do this in other adapters, and it's a nice speed improvement
* Merge pull request #19068 from pda/ar-translate-exception-class-no-logAaron Patterson2015-02-241-1/+0
|\ | | | | AR: translate_exception_class() no longer logs error.
| * AR: translate_exception_class() no longer logs error.Paul Annesley2015-02-241-1/+0
| |
* | Merge pull request #18936 from arthurnn/txn_callbacksArthur Nogueira Neves2015-02-241-1/+7
|\ \ | |/ |/| Spike on new transaction callbacks
| * Add before_commitArthur Neves2015-02-241-1/+7
| | | | | | | | [fixes #18903]