Skip to main content

Pushdown


The Pushdown Rule serves as a failure identification mechanism. At its core, a Pushdown Check is a rule driven by SQL, where the actual test condition is written in a SQL query. The output of the query serves as the test result. Unlike other rule templates that operate on a row-by-row basis, a Pushdown can operate in batches or on the entire dataset, making it particularly well-suited for aggregate-level tests. The Pushdown Check is typically used for scenarios that require the examination of data in bulk or involve multiple records simultaneously. A typical SQL query test

Use Cases

The Pushdown Check rule is commonly used for the following scenarios:

  • Find Duplicates: Identifies duplicate records within a dataset based on specific criteria.
  • Verify Active Records in Type II Dimension Tables: Ensures that active records meet specific criteria (e.g., only the most recent record is marked as active).
  • Test Referential Integrity: Verifies that relationships between tables, such as foreign key relationships, are correctly enforced.

Components

There are five (5) different components in a Pushdown Rule:

  • Overview: To provide rule related metadata.
  • Source Dataset: To provide source connection details required to fetch the dataset.
  • Checks: To add FYI columns..
  • Exception Report: To provide customized configuration for the exception report generated.
  • Summary: To provide variables that are attached to rule execution instance event.

Pushdown Rule Component

Overview

This component allows users to define rules and configure advanced options for parameterization. Below are the details for the fields included in the rule definition:

FieldDescriptionPurpose
Rule Name (Mandatory)The unique name of the rule within a folder. It should be descriptive enough to help users quickly identify and understand the purpose of the rule.Serves as the primary identifier for the rule. Ensures clarity and uniqueness within the folder structure.
Rule Code (Optional)An alphanumeric shorthand or technical identifier for the rule. This field is optional but highly useful for efficient management and organization of rules.Helps users search, filter, or differentiate between similar rules. Provides a compact reference for integrations, automation, or workflows.
Description (Optional)A concise explanation of the rule. This field offers additional technical or business context to enhance understanding.Clarifies the rule's intent or scope for users. Assists in onboarding new team members or providing documentation for audits.
Purpose (Optional)A short summary describing the purpose or intended outcome of the rule. This field provides context for why the rule was created.Highlights the business or technical objective of the rule. Helps users understand its significance and expected impact.
Criticality (Mandatory)The Criticality field indicates the severity level of an issue. This is a mandatory field that helps categorize and prioritize errors based on their impact. The field provides the following options:

Warning (Default): The issue should be reviewed but does not require immediate action.
Critical: The issue needs to be resolved promptly; however, testing can continue despite its presence.
Blocker: The issue must be resolved before testing can proceed, as it prevents further progress.
Ensures a clear understanding of the issue's severity, enabling teams to prioritize effectively and maintain workflow efficiency.

Advance Settings

FieldDescriptionPurpose
Parameter (Optional)This field specifies the default parameter file associated with the rule.Enables parameterization of the rule by referencing keys in the parameter file in SQL, checks, etc.

Source Dataset

This section allows users to configure the source settings to extract data for processing. The following fields and options are available:

  1. Connection Type: This field allows users to select the type of data source (application, database, file ...) they want to connect to. Selecting the appropriate connection type ensures that only relevant connections are displayed for further selection.
  2. Connection: This field displays a list of connections available for the selected connection type. Once selected a user can:
    • Test the connection using the ✔️ Checkmark Icon.
    • Edit the connection details using the ✏️ Edit Icon.
    • Refresh the list of connections using the 🔄 Refresh Icon.
  3. Methods for reading data from the data source
    • Default: This option allows users to browse and select the required Schema and Table/View from the chosen connection. It is Ideal for users who prefer navigating schemas and tables visually without writing SQL.
    • SQL: This option allows users to manually input custom SQL queries to retrieve specific data from the selected connection.It provides flexibility for advanced users to query data directly, offering precise control over the data extraction process.
  4. Preview Data: Clicking the Preview Data button allows users to view a sample of the data retrieved based on the selected table (Default) or SQL query.

Checks

The Pushdown Rule is primarily used as a negative check to ensure data validity and integrity. Since any rows returned from the source dataset are considered failures, they are treated as the failure count for the dataset. The nature of the Pushdown Rule means that no other checks can be added in this section.

Exception Report

This component is for configuration of exception report display, storage and export formats. Below are the different properties available in this component.

PropertyDescriptionNote
Export File FormatUser can specify Excel or CSV to be the default export format
Store Failure & Errors OnlyEnable this property to store only failures in the reportThis property is enabled by default.
Store Exported File OnlyEnable this property to delete raw exception report and store only exported file
Show Download Exception URLEnable this option to recieve exception report download link in email subscription
Store Only # RowsUse this if you would like to store only specified number of records in the report

Summary

Users can configure result override as well as attach custom variables to the Rule execution event.


Exit Code

The number of rows returned by the source dataset is the exit code. If it returns 0 rows exit code is 0 and if it returns 10 rows then exit code is 10.

Exit CodeStatusNote
== 0SuccessNo data returned by the source dataset, Rule execution is successful.
> 0Failure (Warning/ Critical/ Blocker)More than 0 rows returned by the dataset which is captured as a failure.
< 0ErrorA system error was encountered when executing the Rule.
Note

The source count and exit code of a Pushdown Rule are always equal.


Scenarios

Following scenarios will help you understand how the Exit Code of a Pushdown Rule is calculated.

Scenario #1

In this case, the rule passes with an exit code of 0 because the source query returns no data.

Pushdown Rule Scenario #1

Scenario #2

In this case, the rule fails with an exit code of 10 because the source query returns 10 records.

Pushdown Rule Scenario #2


How To: Create a Pushdown Rule

This video shows you how to create a pushdown rule against customer data.


Other Actions

Field NameDescription
Discard RuleThis option is available throughout the process until the Publish option is hit. During the initial creation, if discard is pressed, the entire rule will be discarded. Once the rule is published and then any changes are made, discard will roll back only the changes made during the last edit.
PublishOnce the rule is configuration is complete, the publish option commits the rule created. Any changes made to the rule will come to effect only when the rule is published.
RunOnce the Rule is published, the Run option will activate. This option will actually execute the rule and show the result.
Recent RunsWill highlight the box that displays the recent runs.
DeleteDeletes the rule. This option is activated once the rule is published.
More >DuplicateDuplicates the rule
More>ShareYou can share the link to other users
More>Deactivate/ActivateThis option toggles between activation and deactivation of rules
SubscriptionsThis option is used to send the email notification to selects users on test Success, test Failures and Rule execution Errors

Consideration

  • User cannot add any out-of-box or custom checks in a Pushdown Rule.