activerecord-cockroachdb-adapter icon indicating copy to clipboard operation
activerecord-cockroachdb-adapter copied to clipboard

[ActiveRecord 5.2 Test Failure] test/cases/adapters/postgresql/postgresql_adapter_test.rb

Open alimi opened this issue 5 years ago • 0 comments

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_default_sequence_name_bad_table [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:94]:
Expected: "zomg_id_seq"
  Actual: nil

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:93

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_exec_insert_with_returning_disabled_and_no_sequence_name_given:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation "postgresql_partitioned_table_parent" does not exist
: insert into postgresql_partitioned_table_parent (number) VALUES (1)
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `exec_params'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `block (2 levels) in exec_no_cache'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:610:in `block in exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:609:in `exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:596:in `execute_and_clear'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:81:in `exec_query'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:117:in `exec_insert'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:57:in `test_exec_insert_with_returning_disabled_and_no_sequence_name_given'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:55

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_exec_insert_with_returning_disabled:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation "postgresql_partitioned_table_parent" does not exist
: insert into postgresql_partitioned_table_parent (number) VALUES (1)
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `exec_params'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `block (2 levels) in exec_no_cache'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:610:in `block in exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:609:in `exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:596:in `execute_and_clear'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:81:in `exec_query'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:117:in `exec_insert'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:50:in `test_exec_insert_with_returning_disabled'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:48

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_pk_and_sequence_for_with_non_standard_primary_key [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:112]:
Expected: "code"
  Actual: nil

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:109

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_bad_connection [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:19]:
[ActiveRecord::NoDatabaseError] exception expected, not
Class: <ActiveRecord::StatementInvalid>
Message: <"PG::InvalidCatalogName: ERROR:  database \"should_not_exist-cinco-dog-db\" does not exist\n:             SELECT t.oid, t.typname\n            FROM pg_type as t\n            WHERE t.typname IN ('int2', 'int4', 'int8', 'oid', 'float4', 'float8', 'bool')\n">
---Backtrace---
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `exec_params'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `block (2 levels) in exec_no_cache'
/Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
/Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:610:in `block in exec_no_cache'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
/Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
/Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:609:in `exec_no_cache'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:596:in `execute_and_clear'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:826:in `add_pg_decoders'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:232:in `initialize'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:48:in `new'
/Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:48:in `postgresql_connection'
/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:21:in `block in test_bad_connection'
---------------

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:18

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_exec_insert_default_values_with_returning_disabled_and_no_sequence_name_given:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation "postgresql_partitioned_table_parent" does not exist
: insert into postgresql_partitioned_table_parent DEFAULT VALUES
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `exec_params'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `block (2 levels) in exec_no_cache'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:610:in `block in exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:609:in `exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:596:in `execute_and_clear'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:81:in `exec_query'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:117:in `exec_insert'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:64:in `test_exec_insert_default_values_with_returning_disabled_and_no_sequence_name_given'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:62

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_default_sequence_name [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:86]:
Expected: "public.accounts_id_seq"
  Actual: nil

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:85

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_index_with_opclass:
ActiveRecord::StatementInvalid: PG::SyntaxError: ERROR:  at or near "varchar_pattern_ops": syntax error
DETAIL:  source SQL:
CREATE  INDEX  "index_ex_on_data" ON "ex"  ("data" varchar_pattern_ops)
                                                   ^
HINT:  try \h CREATE INDEX
: CREATE  INDEX  "index_ex_on_data" ON "ex"  ("data" varchar_pattern_ops)
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:75:in `exec'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:75:in `block (2 levels) in execute'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:74:in `block in execute'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:73:in `execute'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb:466:in `add_index'
    /Users/alimi/repos/activerecord-cockroachdb-adapter/lib/active_record/connection_adapters/cockroachdb/schema_statements.rb:8:in `add_index'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:253:in `block in test_index_with_opclass'
    /Users/alimi/repos/rails/activerecord/test/support/ddl_helper.rb:6:in `with_example_table'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:384:in `with_example_table'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:252:in `test_index_with_opclass'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:251

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_partial_index [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:237]:
Expected: "(number > 100)"
  Actual: nil

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:233

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_expression_index:
NoMethodError: undefined method `columns' for nil:NilClass
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:246:in `block in test_expression_index'
    /Users/alimi/repos/rails/activerecord/test/support/ddl_helper.rb:6:in `with_example_table'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:384:in `with_example_table'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:242:in `test_expression_index'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:241

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_pk_and_sequence_for [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:104]:
Expected: "id"
  Actual: nil

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:101

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_exec_insert_default_values_quoted_schema_with_returning_disabled_and_no_sequence_name_given:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation "public.postgresql_partitioned_table_parent" does not exist
: insert into "public"."postgresql_partitioned_table_parent" DEFAULT VALUES
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `exec_params'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `block (2 levels) in exec_no_cache'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:610:in `block in exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:609:in `exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:596:in `execute_and_clear'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:81:in `exec_query'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:117:in `exec_insert'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:71:in `test_exec_insert_default_values_quoted_schema_with_returning_disabled_and_no_sequence_name_given'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:69

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_unparsed_defaults_are_at_least_set_when_saving [/Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:370]:
Expected "4" to be nil.

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:364

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_serial_sequence:
ActiveRecord::StatementInvalid: PG::UndefinedFunction: ERROR:  unknown function: pg_get_serial_sequence()
: SELECT pg_get_serial_sequence('accounts', 'id')
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:63:in `exec'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:63:in `block (2 levels) in query'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:62:in `block in query'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:61:in `query'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:98:in `query_value'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb:255:in `serial_sequence'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:78:in `test_serial_sequence'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:76

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_pk_and_sequence_for_with_collision_pg_class_oid:
ActiveRecord::StatementInvalid: PG::InsufficientPrivilege: ERROR:  user root does not have DELETE privilege on relation pg_depend
: DELETE FROM pg_depend WHERE objid = 'ex_id_seq'::regclass AND refobjid = 'ex'::regclass AND deptype = 'a'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `exec_params'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:611:in `block (2 levels) in exec_no_cache'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:610:in `block in exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:609:in `exec_no_cache'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:596:in `execute_and_clear'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:81:in `exec_query'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:157:in `test_pk_and_sequence_for_with_collision_pg_class_oid'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:133

Error:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_reload_type_map_for_newly_defined_types:
ActiveRecord::StatementInvalid: PG::FeatureNotSupported: ERROR:  at or near "if": syntax error: unimplemented: this syntax
DETAIL:  source SQL:
DROP TYPE IF EXISTS feeling
          ^
HINT:  You have attempted to use a feature that is not yet implemented.
See: https://github.com/cockroachdb/cockroach/issues/27793
: DROP TYPE IF EXISTS feeling
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:75:in `exec'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:75:in `block (2 levels) in execute'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
    /Users/alimi/repos/rails/activesupport/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
    /Users/alimi/repos/rails/activesupport/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:74:in `block in execute'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:581:in `block (2 levels) in log'
    /Users/alimi/.rvm/rubies/ruby-2.5.3/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:580:in `block in log'
    /Users/alimi/repos/rails/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:571:in `log'
    /Users/alimi/repos/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:73:in `execute'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:327:in `ensure in test_reload_type_map_for_newly_defined_types'
    /Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:328:in `test_reload_type_map_for_newly_defined_types'

bin/rails test Users/alimi/repos/rails/activerecord/test/cases/adapters/postgresql/postgresql_adapter_test.rb:321

See the Contributing Guide for instructions on running tests.

If the test isn't valid against CockroachDB

  1. Add a ruby file to test/excludes that matches the name of the test class if one doesn't already exist. For example to exclude a test from ActiveRecord::AdapterTest, create test/excludes/ActiveRecord/AdapterTest.rb.
  2. Add an exclude statement to the file with the name of the test to exclude and a description. For example to exclude test_indexes from ActiveRecord::AdapterTest: https://github.com/cockroachdb/activerecord-cockroachdb-adapter/blob/c3cb637bd855b36bbf9e76b7947162054b95022e/test/excludes/ActiveRecord/AdapterTest.rb#L1
  3. Finally, if the test can run against CockroachDB with a few changes, add it to test/cases. Everything from the ActiveRecord test suite will be available, so a lot of the excluded test can be copied over. Namespace the test under the CockroachDB module to avoid name collisions. See test/cases/adapter_test.rb for an example.

See https://github.com/cockroachdb/activerecord-cockroachdb-adapter/issues/48.

alimi avatar Apr 17 '20 17:04 alimi