diff --git a/datasource.go b/datasource.go index e54d5e7..55849ff 100644 --- a/datasource.go +++ b/datasource.go @@ -153,6 +153,9 @@ func (ds *SQLDatasource) handleQuery(ctx context.Context, req backend.DataQuery, // Apply supported macros to the query q.RawSQL, err = Interpolate(ds.driver(), q) if err != nil { + if errors.Is(err, sqlutil.ErrorBadArgumentCount) { + err = backend.DownstreamError(err) + } return sqlutil.ErrorFrameFromQuery(q), fmt.Errorf("%s: %w", "Could not apply macros", err) } diff --git a/errors.go b/errors.go index 281b4e7..e021b90 100644 --- a/errors.go +++ b/errors.go @@ -29,9 +29,8 @@ func DownstreamError(err error, override ...bool) error { } func ErrorSource(err error) backend.ErrorSource { - var se es.Error - if errors.As(err, &se) { - return se.Source() + if backend.IsDownstreamError(err) { + return backend.ErrorSourceDownstream } return backend.ErrorSourcePlugin }