microsoft / microsoft/PowerBI-visuals-TextFilter

The visual tries to read data from the data source - Negative impact on large data sources in Direct Query

Open
#21 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
29
Forks
36
PR merge metrics
No merged PRs in 30d

Description

I tried this filter using direct query. I haven't used it for in memory models, but for direct queries I see no point in reading data from the data source, this just put to much load on the data source.

My suggestion is to implement a settings property where developers can choose to not read data from the data source.

I get this error message while using this visual on data sources that has large amount of data in the text column

-->
Couldn't load the data for this visual
Couldn't retrieve the data for this visual. Please try again later.
Please try again later or contact support. If you contact support, please provide these details.
Activity ID: 5309b3b7-9142-473e-93ff-8b4dbb7abcd0
Request ID: c79958ce-841f-4b21-0792-502916286a85
Correlation ID: dd4f7fe6-468b-64e4-e280-dfa66d3c8e4f
Time: Thu Nov 12 2020 08:36:27 GMT+0100 (Central European Standard Time)
Service version: 13.0.14696.63
Client version: 2011.1.03669-train
Cluster URI: https://wabi-north-europe-redirect.analysis.windows.net/
<--

The error message is not due to a large number of rows, since using this visual on other columns in the same table doesn't generate this error. This error messages comes out of that this column has a large amount of data.

Yes I know that Full Text Index is not supported and using this filter on large text fields and tables will be slow, but the customers/users are willing to accept this being slow, but not that an error message/varning is generated.

By some reason, I see this error more frequently in my P5 Premium tenant than in my Power BI Desktop

Checking the generated DAX-code, there is a limit in the number of rows retrieved:
-->
DEFINE
VAR __DS0Core =
DISTINCT('Test Tickets'[Description])

VAR __DS0BodyLimited =
TOPN(30002, __DS0Core, 'Test Tickets'[Description], 1)

EVALUATE
__DS0BodyLimited

ORDER BY
'Test Tickets'[Description]
<--

But I guess that the combination of 30002 rows of NVARCHAR(4000)) in some situations is just to much for Power BI to handle, see the SQL code below:
-->
SELECT
TOP (30002) [t10].[Description]
FROM
(

SELECT
CAST([Description] AS NVARCHAR(4000))
...
<--

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the visual's Direct Query data-fetch path and compare it with the generated DAX shown in the issue, especially the DISTINCT and TOPN(30002) query. Identify where a developer setting could prevent reading text values from the data source. Done means the setting is available for Direct Query users and avoids the reported large-text query failure while preserving existing behavior when enabled.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.