Skip to content

Commit

Permalink
Merge pull request #45237 from fatkodima/comments-query-regex
Browse files Browse the repository at this point in the history
Simplify regex detecting comments in sql query
  • Loading branch information
matthewd committed Jun 2, 2022
2 parents ec0c6c7 + a482239 commit 16c0026
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 1 deletion.
Expand Up @@ -36,7 +36,7 @@ class AbstractAdapter
include Savepoints

SIMPLE_INT = /\A\d+\z/
COMMENT_REGEX = %r{(?:--.*\n)|/\*(?:[^*]|\*[^/])*\*/}m
COMMENT_REGEX = %r{(?:--.*\n)|/\*(?:[^*]|\*[^/])*\*/}

attr_accessor :pool
attr_reader :visitor, :owner, :logger, :lock
Expand Down
10 changes: 10 additions & 0 deletions activerecord/test/cases/adapter_prevent_writes_test.rb
Expand Up @@ -127,6 +127,16 @@ def test_errors_when_an_insert_query_prefixed_by_a_double_dash_comment_is_called
end
end

def test_errors_when_an_insert_query_prefixed_by_a_multiline_double_dash_comment_is_called_while_preventing_writes
ActiveRecord::Base.while_preventing_writes do
assert_raises(ActiveRecord::ReadOnlyError) do
Timeout.timeout(0.1) do # should be fast to parse the query
@connection.insert("#{"-- comment\n" * 50}INSERT INTO subscribers(nick) VALUES ('138853948594')", nil, false)
end
end
end
end

def test_errors_when_an_insert_query_prefixed_by_a_slash_star_comment_containing_read_command_is_called_while_preventing_writes
ActiveRecord::Base.while_preventing_writes do
assert_raises(ActiveRecord::ReadOnlyError) do
Expand Down

0 comments on commit 16c0026

Please sign in to comment.