Commit Graph

16 Commits

Author SHA1 Message Date
Nathan Wallace
992653937d WrapResult nil input handling closes #4804 (#4875)
* Unskip test demonstrating bug #4804: WrapResult nil input

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Fix #4804: WrapResult returns nil for nil input

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-11-15 11:19:00 -05:00
Nathan Wallace
1a1b380918 Concurrent read and close synchronization closes #4805 (#4874)
* Unskip test demonstrating bug #4805: Concurrent read and close may race

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Fix #4805: Add synchronization for concurrent StreamRow and Close

The sync.Once in Close() only prevents multiple Close() calls, but
doesn't coordinate with StreamRow() operations. Added a mutex and
closed flag to prevent race conditions when one goroutine streams
rows while another closes the result.

The fix:
- Added mutex (mu) and closed flag to Result struct
- StreamRow checks closed flag before streaming (with RLock)
- Close sets closed flag (with Lock) before closing channel

This prevents "send on closed channel" panics and data races.

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-11-15 10:51:37 -05:00
Nathan Wallace
7996d3c878 Fix #4712: Make Result.Close() idempotent (#4741) 2025-11-11 18:53:18 +08:00
Puskar Basu
da2f3ecc03 Upgrade to pipe-fittings v2, go-kit v1 (#4485) 2025-03-06 16:34:18 +05:30
kai
9c89b4447a timing streaming 2024-09-27 18:14:28 +05:30
kai
b679a42ec1 acc 2024-09-27 18:14:28 +05:30
kai
1aff2b4f97 remove unused display options 2024-09-27 18:14:28 +05:30
kai
973939e4a2 steampipe timing working 2024-09-27 18:14:28 +05:30
kai
5fd5ae0740 timing broken 2024-09-27 18:14:28 +05:30
Puskar Basu
c6b8c835ab Update query JSON output to be consistent across pipelings - also handle duplicate column names. Closes #4317 2024-09-02 12:14:53 +01:00
kaidaguerre
07782a2b13 Adds support for verbose timing information. Closes #4237. Closes #4244
- JSON output format has changed to move the rows to under a `rows` property, with timing information under the `metadata` property
- Update timing display to show rows returned and rows fetched, as well as adding verbose mode which lists all scans
- Use enums for output mode and timing mode - timing is now either `on`, `off` or `verbose`
- Bugfix: ensure error is returned from ExecuteSystemClientCall. Closes #4246
2024-04-17 10:12:17 +01:00
Binaek Sarkar
18a1c51597 Upgrades 'pgx' to v5. Closes #2776 2022-11-23 17:34:21 +00:00
kai
6739674989 Remove ScanType from Snapshot panel data. 2022-11-08 14:24:28 +00:00
kaidaguerre
1dc28f4681 Add --source-snapshot option to dashboard command. Closes #2503. (#2491) 2022-10-11 23:36:27 +01:00
kaidaguerre
404dd35e21 Update database code to use pgx interface so we can leverage the connection pool hook functions to pre-warm connections. Closes #2422 (#2438)
* Provide feedback for failed prepared statements
* Move error functions to error_helpers
* Make maintenance client retriable
2022-10-05 12:38:57 +01:00
kaidaguerre
5193c70395 Restructure steampipe repo to use pkg folder. Closes #2204 2022-06-27 11:36:03 +01:00