Sha256: b24c79872c4958bf15c9d51a7f8bbafa00f5b452b99a96a00673a40565de049f

Contents?: true

Size: 843 Bytes

Versions: 9

Compression:

Stored size: 843 Bytes

Contents

require 'flydata/fluent-plugins/mysql/ddl_query_handler'

module Mysql
  class DropDatabaseQueryHandler < DatabaseDdlQueryHandler
    # For MySQL, database and schema are exchangable
    PATTERN = /^DROP (DATABASE|SCHEMA)/i

    def initialize(context)
      super
    end

    def pattern
      PATTERN
    end

    def process(record)
      #Issuing warning message only for the current database.
      if acceptable_db?(record)   #record["db_name"] == @context.database
        $log.error("DROP DATABASE detected. A full re-sync is required to provide sync consistency. - db_name:'#{record["db_name"]}' query:'#{record["query"]}' normalized query:'#{record['normalized_query']}' binlog_pos:'#{binlog_pos(record)}'")
      end
      #NOTE: No emit_record here because this record should not be sent to data servers for now
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
flydata-0.6.11 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.10 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.9 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.8 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.7 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.6 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.5 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.4 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb
flydata-0.6.3 lib/flydata/fluent-plugins/mysql/drop_database_query_handler.rb