---
title: "Breaking: #63406 - Respect rootLevel configuration in extbase queries"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-63406"
source: "Changelog/7.6/Breaking-63406-RespectRootlevelConfigurationinExtbaseQueries.rst"
typo3-version: "7.6"
typo3-major: 7
type: "breaking"
issue: 63406
forge: "https://forge.typo3.org/issues/63406"
tags: ["TCA", "TypoScript", "ext:extbase"]
rendered: "2026-09-17T12:41:04+00:00"
---

# Breaking: #63406 - Respect rootLevel configuration in extbase queries {#breaking-63406-respect-rootlevel-configuration-in-extbase-queries}

See [forge#63406](https://forge.typo3.org/issues/63406)

## Description {#description}

The rootLevel of a table can be configured to 0, 1 or -1 in TCA, to define where records of a table can be found in the system:

-   0: In the page tree only
-   1: Only on the root page (pid 0)
-   -1: Both, on the root page and in the page tree

Currently only 0 and 1 are respected by the `Typo3DbQueryParser` when building the pageId statement. This means that a rootLevel of -1
does not get any pageId statement at all and therefore ignores any `storagePid` configuration for extbase plugins.

## Impact {#impact}

Custom records that have a configuration like this `$GLOBALS['TCA']['tx_myext_domain_model_record']['ctrl']['rootLevel'] = -1` and
are used in extbase plugins might have trouble finding the records if `plugin.tx_myext.persistence.storagePid` is not configured properly.

## Affected Installations {#affected-installations}

Third party code using `$GLOBALS['TCA']['tx_myext_domain_model_record']['ctrl']['rootLevel'] = -1` with records within the
page tree and without a proper `storagePid` configuration.

## Migration {#migration}

Set `plugin.tx_myext.persistence.storagePid` to the page ids you want to find records from. 0 does not need to be included as
it is added to the statement automatically.
