# Safe Mode

The *Safe Mode* option in Astera allows you to study and debug your dataflows in cases when access to source files or databases is not available. You can open a dataflow/subflow and then proceed to debug or understand it after activating *Safe Mode*.

In this article, we will be looking at how you can activate and use the *Safe Mode* option in Astera.

## **Activating Safe Mode**

To activate *Safe Mode*, press the *Safe Mode* icon placed in the toolbar at the top of the dataflow designer.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FjgTJRJ4s2hKg6YqgREEf%2F0.png?alt=media)

Once *Safe Mode* is activated, the icon will have an outlining box around it.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FWJqIozE7q14Hn8A4d46R%2F1.png?alt=media)

## **Use Case**

Here, we have a sample dataflow that was created by another user.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FYYZLmltO3eMV55UWu9NG%2F2.png?alt=media)

This dataflow contains a *Database Table Source*, as assigned by the previous user. In this use case, we will be using the *Safe Mode* option to access the properties of the *Database Table Source* object named *Invoices*, in order to understand the layout of the data and other conditions.

## **When Safe Mode is Inactive**

As the dataflow is not our own, we do not have access to the source database tables and cannot see the data’s layout ourselves.

To access the *Properties* for the *Database Table Source* object, right-click on its header and select *Properties* from the context menu.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FGKV1luqAyL271EN71but%2F3.png?alt=media)

Click *Next* on the bottom of the *Database Connection* screen of the configuration window to access the *Pick Source Table and Reading Option* section.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2F0qXCZasyZYtznNefHdaj%2F4.png?alt=media)

When trying to access the *Pick Source Table and Reading Option* and further sections, we come across an error and it does not let us proceed, bringing us to a halt in the process.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FMsKEJBw7zSIwysBXO9fR%2F5.png?alt=media)

This error is expected as we do not have access to the source database being used.

Press *OK* and then *Cancel* to exit the configuration window.

## **When Safe Mode is Active**

In order to proceed, we will now activate *Safe Mode*.

1. Once *Safe Mode* is activated, proceed to access the *Properties* and then the *Pick Source Table and Reading Option* section of the configuration window for the *Database Table Source* object.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FxGsPp2sqeixo3Xp1OClx%2F6.png?alt=media)

2. This time, with *Safe Mode* activated, Astera allows us to proceed to the *Pick Source Table and Reading Option* screen. Here, we can see all the options utilized by the previous user to read a specific database table.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FTUUMEmKkeAvCavSG38Ua%2F7.png?alt=media)

3. Press *Next* again on the *Pick Source Table and Reading Option* screen to proceed to the *Layout Builder* screen, which shows the fields, their data types, and other properties.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2F8MV91T14jBwgct0BLQH1%2F8.png?alt=media)

4. Press *Next* on this section to proceed to the *Where Clause* screen in order to understand the clause used, if any, by the previous user.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FU0vOYGlbb6Z6vmg563F1%2F9.png?alt=media)

Here, we can see that a where clause has been used to identify records that specifically cater to the *Country* field being ‘France’.

5. Press *Next* to proceed to the *Config Parameters* screen to see if any parameters have been set.

![](https://750977703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqHxyVNGb7tSdIWecl6Ru%2Fuploads%2FdN0uUMGnmG5HBgDiI6Z2%2F10.png?alt=media)

6. Lastly, press *OK* to close the properties window for the *Database Table Source* object.

To learn more about the *Database Table Source* object, click [here](https://documentation.astera.com/v/astera-data-stack-v8/dataflows/sources/database-table-source).

You can now configure the object as required and/or load your own database tables.

*Safe Mode* can be used to access properties for any object that has been configured with source files/tables/queries etc. that a user does not have access to, thus facilitating debugging and dataflow sharing.

This concludes our discussion on the *Safe Mode* option.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.astera.com/astera-data-stack-v8/miscellaneous/safe-mode.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
