Skip to content

[Bug] Fallback branch read silently swallows exceptions with no fail-fast option #7761

@Aitozi

Description

@Aitozi

Search before asking

  • I searched in the issues and found nothing similar.

Paimon version

master

Compute Engine

all

Minimal reproduce step

.

What doesn't meet your expectations?

Description

When reading from a fallback branch in FallbackReadFileStoreTable, if the read operation fails, the exception is silently swallowed:

} catch (Exception ignored) {
    LOG.error(
            "Reading from supplemental branch has problems: {}",
            fallbackSplit.wrapped());
}

This has two problems:

  1. No fail-fast option: There is no way to let the read operation fail fast when the fallback branch is unavailable. The reader always silently falls back to the current branch, which can lead to incorrect or incomplete query results without any warning to the user.

  2. Loss of exception stack trace: The LOG.error call does not include the exception object as a parameter, so the log only contains the split description but not the actual cause of the failure, making it very difficult to diagnose issues.

Expected Behavior

  • Add a config option scan.fallback-branch.read-fail-fast (default false) to allow users to opt into failing fast when the fallback branch read fails.
  • When fail-fast=false (default, preserving backward compatibility), log the full exception stack trace so that failures are observable.
  • When fail-fast=true, propagate the exception to the caller so the read operation fails immediately.

Anything else?

No response

Are you willing to submit a PR?

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions