diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2018-07-09 11:23:37 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2018-07-09 11:23:37 +0900 |
commit | 544492d04f10beb007df0db968c24bed140a1c4f (patch) | |
tree | b6c5e9dce107ea93e5bc7b89e70d2fd9caef916f /activerecord/test/cases | |
parent | f7c5a8ce262cf16ad8d7c0b0d631a4b88afec414 (diff) | |
download | rails-544492d04f10beb007df0db968c24bed140a1c4f.tar.gz rails-544492d04f10beb007df0db968c24bed140a1c4f.tar.bz2 rails-544492d04f10beb007df0db968c24bed140a1c4f.zip |
SQLite: Don't leak internal schema objects
Related #31201.
If creating custom primary key (like a string) in SQLite, it would also
create an internal index implicitly which named begin with "sqlite_".
It need to be hidden since the internal object names are reserved and
prohibited for public use.
See https://www.sqlite.org/fileformat2.html#intschema
Fixes #33320.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/primary_keys_test.rb | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/activerecord/test/cases/primary_keys_test.rb b/activerecord/test/cases/primary_keys_test.rb index 60dac91ec9..4ed7469039 100644 --- a/activerecord/test/cases/primary_keys_test.rb +++ b/activerecord/test/cases/primary_keys_test.rb @@ -305,6 +305,7 @@ class PrimaryKeyAnyTypeTest < ActiveRecord::TestCase test "schema dump primary key includes type and options" do schema = dump_table_schema "barcodes" assert_match %r{create_table "barcodes", primary_key: "code", id: :string, limit: 42}, schema + assert_no_match %r{t\.index \["code"\]}, schema end if current_adapter?(:Mysql2Adapter) && subsecond_precision_supported? |