Commit Graph

70 Commits

Author SHA1 Message Date
Will Browne
5694d6371e Plugins: Upgrade github.com/grafana/grafana-plugin-sdk-go v0.283.0 => v0.284.0 (#114400)
* upgraded github.com/grafana/grafana-plugin-sdk-go v0.283.0 => v0.284.0

* make update-workspace

* apply fixes

* nolint for FieldTypeNullableJSON instead

* fmt

* fix lint issues
2025-11-25 15:46:07 +00:00
Zoltán Bedi
8d75d79313 PostgreSQL: Remove feature toggle postgresDSUsePGX (#113675)
* PostgreSQL: Remove feature toggle `postgresDSUsePGX`

* Fix tests and linting

* Address review comments
2025-11-24 10:26:41 +01:00
Peter Štibraný
7604653fd8 Change testing.Short() check with SkipIntegrationTestInShortMode check. (#112442)
* Change testing.Short() check with SkipIntegrationTestInShortMode check.
2025-10-20 09:40:38 +02:00
Zoltán Bedi
5e8267fcf8 PostgreSQL: Read postgresDSUsePGX from config (#112170)
* PostgreSQL: Read `postgresDSUsePGX` from config

* Update plugins_test
2025-10-10 15:55:55 +02:00
Zoltán Bedi
510b86450c PostgreSQL: Refactor feature toggle handling for standalone mode (#112061) 2025-10-06 16:57:32 +02:00
Zoltán Bedi
7055a879ba PostgreSQL: Decouple plugin (#111620) 2025-10-02 14:12:47 +02:00
Zoltán Bedi
117e357cc9 PostgreSQL: Check for null in JSON columns (#111747) 2025-09-29 18:28:07 +02:00
Taras
e7f57446c1 PostgreSQL: Support PGPASSFILE by making password optional (#108856)
* datasource(postgresql): add support of pgpass file

* remove `required` label for password field

* set `runPostgresTests` back to false

* fix after merge conflict

* add pgx_test

* set `runPostgresTests` back to `false`

* Add `no password` test case to the `pgx_test.go` as well

* fix `postgres_pgx_test.go`

* Update datasource docs

* docs wording

* docs: `datasource` -> `data source`

* Update docs/sources/datasources/postgres/configure/_index.md

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

* run prettier - docs

---------

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2025-09-26 16:23:40 +02:00
Zoltán Bedi
bef45bccd8 Postgres: PGX fix error source (#111250)
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2025-09-18 14:17:39 +02:00
Zoltán Bedi
67c26c493e PostgreSQL: Fix error source in PGX (#110752) 2025-09-08 16:21:05 +02:00
Peter Štibraný
7fd9ab9481 Replace check for integration tests. (#110707)
* Replace check for integration tests.
* Revert changes in pkg/tsdb/mysql packages.
* Fix formatting of few tests.
2025-09-08 15:49:49 +02:00
Zoltán Bedi
d9f0d642cc PostgreSQL: PGX fix multiple results handling (#110452)
* PostgreSQL: FIx multiple results handling

- Added tests for handling multiple result sets, including compatible and incompatible structures, ensuring no panics occur.
- Improved `convertResultsToFrame` function to validate column compatibility and handle null values correctly.
- Introduced a new helper function `convertPostgresValue` for converting raw PostgreSQL values to appropriate Go types.
- Added comprehensive unit tests for `convertResultsToFrame` covering various scenarios including row limits and mixed result types.

* Add more test case
2025-09-08 10:37:54 +02:00
Zoltán Bedi
8e8c36203f Add support for PostgreSQL enum types in PGX datasource (#109863) 2025-09-05 20:24:54 +02:00
Diego Giagio
554cd6f198 Postgres: Fix JSON data type mapping with PGX driver (#110566) 2025-09-05 08:39:56 +02:00
Zoltán Bedi
1e0587001d PostgreSQL: PGX default to time series format when no format is specified in queries (#110028)
* PostgreSQL: PGX default to table format when no format is specified in queries

* Change to default to time series
2025-08-25 13:31:57 +02:00
Zoltán Bedi
3ff4c6a2d2 Postgres: Switch the datasource plugin from lib/pq to pgx (#108443)
* Postgres: Switch the datasource plugin from lib/pq to pgx

* Fix lint
2025-07-30 14:47:25 +02:00
Serge Zaitsev
a95fb3a37c Chore: Omit integration tests if short test flag is passed (#108777)
* omit integration tests if short test flag is passed

* Update pkg/services/ngalert/models/receivers_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/tests/api/alerting/api_ruler_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/tests/api/alerting/api_ruler_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/tests/api/alerting/api_ruler_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/tests/api/alerting/api_ruler_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/tests/api/alerting/api_ruler_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/services/ngalert/models/receivers_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/cmd/grafana-cli/commands/datamigrations/to_unified_storage_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* Update pkg/services/ngalert/models/receivers_test.go

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>

* fix the rest

* false positive

---------

Co-authored-by: Matheus Macabu <macabu@users.noreply.github.com>
2025-07-28 13:38:54 +02:00
beejeebus
6a0cf22b53 Revert "Postgres: Switch the datasource plugin from lib/pq to pgx (#103961)" (#106270)
This reverts commit 1e383b0c1e.
2025-06-03 08:45:07 -04:00
Zoltán Bedi
1e383b0c1e Postgres: Switch the datasource plugin from lib/pq to pgx (#103961)
* Create libpqToPGX feature toggle

* Refactor PostgreSQL datasource to support PGX with feature toggle

- Updated `ProvideService` to accept feature toggles for enabling PGX.
- Modified integration tests to use the new PGX connection method.
- Introduced new functions for handling PGX connections and queries.
- Enhanced TLS configuration handling for PostgreSQL connections.
- Updated existing tests to ensure compatibility with PGX and new connection methods.

* Update PostgreSQL datasource to enhance connection pooling and error handling

- Increased `MaxOpenConns` to 10 in integration tests for improved connection management.
- Refactored connection handling in `newPostgresPGX` to return a connection pool instead of a single connection.
- Updated health check error handling to utilize context and feature toggles for better error reporting.
- Adjusted `DisposePGX` method to close the connection pool properly.
- Enhanced query execution to acquire connections from the pool, ensuring efficient resource usage.

* Cleanup

* Revert postgres_test unnecessary changes

* Rename feature toggle from `libpqToPGX` to `postgresDSUsePGX`

* Add null check to dispose method

* Fix lint issues

* Refactor connection string generation

* Address comment in health check file

* Rename p to pool

* Refactor executeQueryPGX and split into multiple functions

* Fix lint issues

* The returning error message from PGX is enough no need to separate the error code.

* Move TLS handling to newPostgresPGX function

* Disable ssl for integration tests

* Use MaxIdleConns option

* Remove old feature toggle

* Rename`generateConnectionConfigPGX` to `generateConnectionStringPGX`

* Add back part of the error messages

* Don't show max idle connections option when PGX enabled

* Address comments from Sriram

* Add back Sriram's changes

* PostgreSQL: Rework tls manager to use temporary files instead (#105330)

* Rework tls manager to use temporary files instead

* Lint and test fixes

* Update pkg/tsdb/grafana-postgresql-datasource/postgres.go

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Update betterer

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2025-05-26 08:54:18 +02:00
Sriram
a8e87fc674 Postgres: Config diagnostics / logging update (#105666)
* config diagnostics update

* update tests

* fix typo
2025-05-22 08:27:36 +01:00
Sriram
fcb1e9c9e5 Postgres: Improve invalid port specifier error during health check (#105536)
normalize error message in postgres invalid port specifier error
2025-05-16 11:51:12 +01:00
Mariell Hoversholm
757be6365a CI: Bump golangci-lint to 2.0.2 (#103572) 2025-04-10 14:42:23 +02:00
Ivana Huckova
67d8610e31 SQL data sources: Use correct error source for sql processing errors (#100872)
* SQL data sources: Use correct error source for sql processing errors

* Fix lint

* Fix  cyclomatic complexity

* Nit rename variable to make it more clear what those errors are
2025-02-18 18:24:44 +01:00
jackyin
55ec66c416 Datasources: timeEnd not work (#98375)
* time end not work
2025-01-20 10:04:43 +00:00
Andreas Christou
54333473f7 SQL: Set errors as downstream based on underlying errorsource (#97192)
Set errors as downstream based on underlying errorsource
2024-12-20 17:42:58 +00:00
Sriram
d48e9afd5d Datasources: Improved network health check error messages (sql datasources) (#97783)
remove unique identifiers from common network error messages
2024-12-11 13:05:06 +00:00
Sriram
b4927ff1cd MS SQL: Datasource health check error message improvements (#97643)
improve mssql healthcheck error messages
2024-12-10 13:13:32 +00:00
Sriram
16c78f6a98 Postgres: Datasource health check error message improvements #96906 (#96990)
* updated postgres health check error messages

* addressed review comments / added tests
2024-11-27 13:14:44 +00:00
Gareth Dawson
768000febd Postgres: Add error source to postgresql (#97027)
* add error source to postgres

* i forgot to save the file with changes
2024-11-26 11:23:49 +00:00
Sriram
492e7d4a3d Datasources: health check logging improvements (#96403)
* basic healthcheck logging

* show detailed error for admins

* fix linting errors

* fix config summary keys

* passing context to logger

* tracking health check errors

* remove tracking
2024-11-20 11:42:05 +00:00
Gábor Farkas
abca0380a8 use count_bytes_reader from plugin-sdk-go (#92553)
* use count_bytes_reader from plugin-sdk-go

* run `make update-workspace`

* update postgres tests

* update mysql tests

* time back to utc

* make update-workspace done

---------

Co-authored-by: Kyle Brandt <kyle@grafana.com>
2024-08-28 16:44:13 +02:00
Dave Henderson
df3d8915ba Chore: Bump Go to 1.23.0 (#92105)
* chore: Bump Go to 1.23.0

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* update swagger files

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* chore: update .bingo/README.md formatting to satisfy prettier

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* chore(lint): Fix new lint errors found by golangci-lint 1.60.1 and Go 1.23

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* keep golden file

* update openapi

* add name to expected output

* chore(lint): rearrange imports to a sensible order

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

---------

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2024-08-21 11:40:42 -04:00
Gábor Farkas
3d80693456 postgres: simpler test (#86331) 2024-04-30 15:27:20 +02:00
Gábor Farkas
7ce7584151 postgres: decouple sqleng (#86055) 2024-04-15 14:28:03 +02:00
Gábor Farkas
8a15ed42ae PostgreSQL: Fix the verify-ca mode (#85530)
postgres: fix the verify-ca problem
2024-04-09 08:39:45 +02:00
Gábor Farkas
ccd13bf08e postgres: add tests to handle multiple statements in the same query (#85523)
* postgres: add tests to handle multiple statements in the same query

* better test explanation
2024-04-08 16:56:23 +02:00
Gábor Farkas
8159e1db3a Revert "Postgres: Switch the datasource plugin from lib/pq to pgx (#8… (#85509)
Revert "Postgres: Switch the datasource plugin from lib/pq to pgx (#83768)"

This reverts commit ecd6de826a.
2024-04-03 11:02:22 +02:00
Gábor Farkas
c835022861 postgres: improved tests (#84677)
* postgres: tests: better test aligning time-series results

* postgres: add snapshot test for a backward-compat code
2024-03-26 10:22:58 +01:00
Gábor Farkas
fba2b61408 postgres: removed unused code (#84736)
sql: removed unused code
2024-03-20 09:28:42 +01:00
Gábor Farkas
97521ef988 postgres: improve snapshot-tests for long/wide situations (#84387) 2024-03-14 12:37:04 +01:00
Gábor Farkas
eca1bba01e postgres: add more tests (to handle zero-rows queries) (#84384) 2024-03-13 16:23:50 +01:00
Gábor Farkas
ecd6de826a Postgres: Switch the datasource plugin from lib/pq to pgx (#83768)
postgres: switch from lib/pq to pgx
2024-03-13 09:52:39 +01:00
Gábor Farkas
142ac22023 Revert "Postgres: Switch the datasource plugin from lib/pq to pgx" (#83760)
Revert "Postgres: Switch the datasource plugin from lib/pq to pgx (#81353)"

This reverts commit 8c18d06386.
2024-03-01 12:20:47 +01:00
Gábor Farkas
8c18d06386 Postgres: Switch the datasource plugin from lib/pq to pgx (#81353)
* postgres: switch from lib/pq to pgx

* postgres: improved tls handling
2024-02-28 07:52:45 +01:00
Gábor Farkas
ae77fe3602 postgres: do not use unexported grafana-core config (#83241)
* postgres: do not use unexported grafana-core config

* fixed wrong value
2024-02-22 16:47:03 +01:00
Gábor Farkas
7f77be8f85 postgres: tls: only use non-empty certificates (#82182) 2024-02-19 11:58:42 +01:00
Gábor Farkas
4c221966e4 postgres: socks proxy: use plugin-sdk (#82376) 2024-02-14 13:05:31 +01:00
Gábor Farkas
67f006a91d sql: remove setting-import from sqleng (#82088) 2024-02-12 12:37:23 +01:00
Gábor Farkas
2250e358c7 postgres: updated snapshot test with better floating point values (#82168) 2024-02-08 15:52:20 +01:00
Gábor Farkas
8616f2e80a sql: removed unnecessary error-check (#81808)
* sql: removed unnecessary error-check

* updated tests
2024-02-07 08:41:49 +01:00