Skip to content

Conversation

@Ma77Ball
Copy link
Contributor

@Ma77Ball Ma77Ball commented Nov 26, 2025

What changes were proposed in this PR?

This PR adds a feature that enables Texera to efficiently handle tables with vast numbers of columns in the result panel.

This PR adds UI features that enable Texera to efficiently handle tables with large numbers of columns in the result viewer and related data preview components.

Specifically, this PR introduces:

  1. Horizontal Column Pagination
    1. "Next Columns" and "Previous Columns" buttons have been added.
    2. Columns are now loaded in column windows (configurable size, default 25).
    3. Prevents UI freezing or overflow when dealing with tables containing hundreds or thousands of columns.
  2. Column Search Bar
    1. A new search box allows users to filter or jump directly to column names.
    2. When a column is found, that column window is automatically loaded and highlighted.
    3. Useful for wide schemas such as:
      1. large scientific datasets
      2. logs with hundreds of attributes
      3. denormalized tables or wide joins
  3. Improvements to rendering performance
    1. The frontend now only renders the visible subset of columns.
    2. Reduces DOM load and improves React change detection speed.

Any related issues, documentation, or discussions?

Fixes: #3825

How was this PR tested?

  1. Ran a couple of CSV scan operators that produced a wide output table
  2. Clicked through column windows in both directions
  3. Using search to jump to:
    • first column
    • random middle column
    • last column

Was this PR authored or co-authored using generative AI tooling?

No

New Layout:

image

@github-actions github-actions bot added engine frontend Changes related to the frontend GUI common labels Nov 26, 2025
@chenlica chenlica requested a review from kunwp1 November 26, 2025 16:56
@chenlica
Copy link
Contributor

@kunwp1 Please review this PR. Check if test cases are needed. I will also review it.

@kunwp1
Copy link
Contributor

kunwp1 commented Dec 1, 2025

I suggest to add @aglinxinyuan to review the UI change.

@chenlica chenlica requested a review from aglinxinyuan December 1, 2025 19:44
Copy link
Contributor

@kunwp1 kunwp1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left a few comments. Also, please add a video or screenshot of the UI change on the PR description.

@Ma77Ball Ma77Ball requested a review from kunwp1 December 18, 2025 17:41
@Ma77Ball
Copy link
Contributor Author

@chenlica @kunwp1, I addressed all the comments. Please review.

@chenlica
Copy link
Contributor

Thanks, @Ma77Ball .

@kunwp1 Please review it.

Copy link
Contributor

@kunwp1 kunwp1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! I added some minor comments. Once you address them, @aglinxinyuan can have a second pass to review the UI.

…param in getRange(...) and made the column limit displayed on the result panel a configurable parameter
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

common engine frontend Changes related to the frontend GUI service

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support CSV files with more than 512 columns

3 participants