Skip to content

[Feature Request] Add Option to Bypass StackTrace.current on Statement Execution #431

Open
@gmpassos

Description

@gmpassos

First of all, thank you for the great work on this package — it's been very helpful in our projects!

I'm using postgres: ^3.5.6 on Dart 3.8.1, and noticed that every statement execution, even when successful, calls StackTrace.current. While this is useful for error reporting, it's not a cheap operation in the Dart VM.

In my benchmarks, this call alone is responsible for about 3% of total CPU usage, which adds up significantly in high-throughput scenarios.

Would it be possible to:

  • Add an option to disable stack trace capturing, or
  • Use a constant/dummy trace (e.g., StackTrace.empty) when needed?

This would help reduce unnecessary overhead in production environments where the stack trace isn’t needed on every successful execution.

In my case, the default backend StackTrace already provides the necessary information when an execution error occurs.

Thanks again!
Best regards.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions