<commit_before>module Dynflow
  module PersistenceAdapters
    class Abstract

      # The logger is set by the world when used inside it
      attr_accessor :logger

      def register_world(world)
        @worlds ||= Set.new
        @worlds << world
      end

      def log(level, message)
        (@worlds.first && @worlds.first.logger).send(level, message)
      end

      def pagination?
        false
      end

      def filtering_by
        []
      end

      def ordering_by
        []
      end

      # @option options [Integer] page index of the page (starting at 0)
      # @option options [Integer] per_page the number of the items on page
      # @option options [Symbol] order_by name of the column to use for ordering
      # @option options [true, false] desc set to true if order should be descending
      # @option options [Hash{ Symbol => Object,Array<object> }] filters hash represents
      #   set of allowed values for a given key representing column
      def find_execution_plans(options = {})
        raise NotImplementedError
      end

      def load_execution_plan(execution_plan_id)
        raise NotImplementedError
      end

      def save_execution_plan(execution_plan_id, value)
        raise NotImplementedError
      end

      def load_step(execution_plan_id, step_id)
        raise NotImplementedError
      end<commit_msg>Add missing abstract definition for delete_execution_plans<commit_after>module Dynflow
  module PersistenceAdapters
    class Abstract

      # The logger is set by the world when used inside it
      attr_accessor :logger

      def register_world(world)
        @worlds ||= Set.new
        @worlds << world
      end

      def log(level, message)
        (@worlds.first && @worlds.first.logger).send(level, message)
      end

      def pagination?
        false
      end

      def filtering_by
        []
      end

      def ordering_by
        []
      end

      # @option options [Integer] page index of the page (starting at 0)
      # @option options [Integer] per_page the number of the items on page
      # @option options [Symbol] order_by name of the column to use for ordering
      # @option options [true, false] desc set to true if order should be descending
      # @option options [Hash{ String => Object,Array<object> }] filters hash represents
      #   set of allowed values for a given key representing column
      def find_execution_plans(options = {})
        raise NotImplementedError
      end

      # @param filters [Hash{ String => Object }] filters to determine
      #   what to delete
      # @param batch_size the size of the chunks to iterate over when
      #   performing the deletion
      def delete_execution_plans(filters, batch_size = 1000)
        raise NotImplementedError
      end

      def load_execution_plan(execution_plan_id)
        raise NotImplementedError
      end

      def save_execution_plan(execution_plan_id, value)
        raise NotImplementedError
      end

      def load_step(execution_plan_id, step_id)
        raise NotImplementedError
      end
{'fraction_non_alphanumeric': 0.05701328150307742, 'fraction_numerical': 0.001943634596695821, 'mean_word_length': 2.42350332594235, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 8, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6977060', 'n_tokens_mistral': 858, 'n_tokens_neox': 807, 'n_words': 296}