Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cli: periodically flush csv/tsv output #28688

Merged
merged 1 commit into from
Aug 31, 2018

Commits on Aug 31, 2018

  1. cli: periodically flush csv/tsv output

    The "sinkless" version of changefeeds continuously streams back
    results to the user over pgwire. Prior to this patch, this data could
    not be consumed effectively with `cockroach sql` using the tsv/csv
    output, because the tsv/csv formatter buffers rows internally.
    
    This patch makes tsv/csv output in `cockroach sql` an effective way to
    consume changefeeds by ensuring an upper bound on the time rows stays
    buffered inside the formatter. The flush period is fixed to 5 seconds.
    
    For context, all the other formatters except for `table` are
    line-buffered and thus flush on every row. `table` is a world of its
    own which buffers *all* the rows until the query is complete, and that
    is unlikely to change any time soon, so this patch doesn't touch that
    either.
    
    Release note (cli change): The `csv` and `tsv` formats for `cockroach`
    commands that output result rows now buffer data for a maximum of 5
    seconds. This makes it possible to e.g. view SQL changefeeds
    interactively with `cockroach sql` and `cockroach demo`.
    knz committed Aug 31, 2018
    Configuration menu
    Copy the full SHA
    1dc7788 View commit details
    Browse the repository at this point in the history