mariadb-corporation / mariadb-powerbi

Power BI DirectQuery Connector
https://mariadb.com
3 stars 1 forks source link

PowerBI ODBC Error #31

Closed sarabjeetsinghlenskart closed 1 year ago

sarabjeetsinghlenskart commented 1 year ago

we are facing issue in our Power BI refreshes from Power BI Service using the MariaDB ODBC Connector (3.1.18).

We are intermittently getting the below error message in our Power BI reports. Could you please help us understand and fix this issue?.

{ "error": { "code": "DM_GWPipeline_Gateway_MashupDataAccessError", "pbi.error": { "code": "DM_GWPipeline_Gateway_MashupDataAccessError", "parameters": {

  },
  "details": [
    {
      "code": "DM_ErrorDetailNameCode_UnderlyingErrorCode",
      "detail": {
        "type": 1,
        "value": "-2147467259"
      }
    },
    {
      "code": "DM_ErrorDetailNameCode_UnderlyingErrorMessage",
      "detail": {
        "type": 1,
        "value": "ODBC: ERROR [HY000] [ma-3.1.18][10.2.24-MariaDB-log]"
      }
    },
    {
      "code": "DM_ErrorDetailNameCode_UnderlyingHResult",
      "detail": {
        "type": 1,
        "value": "-2147467259"
      }
    },
    {
      "code": "Microsoft.Data.Mashup.ValueError.DataSourceKind",
      "detail": {
        "type": 1,
        "value": "Odbc"
      }
    },
    {
      "code": "Microsoft.Data.Mashup.ValueError.DataSourcePath",
      "detail": {
        "type": 1,
        "value": "dsn=MariaDB_194"
      }
    },
    {
      "code": "Microsoft.Data.Mashup.ValueError.OdbcErrors",
      "detail": {
        "type": 1,
        "value": "error \"Microsoft.Mashup.Engine1.Runtime.ValueException: [Expression.Error] Value was not specified.#(cr)#(lf) at Microsoft.Mashup.Engine1.Language.ValueCreator.CreateValueForNotImplemented(INotImplementedExpression expression)#(cr)#(lf) at Microsoft.Mashup.Engine1.Runtime.ListValue.DemandArrayListValue.get_Item(Int32 index)#(cr)#(lf) at Microsoft.Mashup.Engine1.Runtime.BufferedListValue.BufferedValueReference.get_Value()#(cr)#(lf) at Microsoft.Mashup.Engine1.Runtime.TableTypeValue.FromValue(ListValue columns, TypeValue defaultColumnType)#(cr)#(lf) at Microsoft.Mashup.Engine1.Library.Table.TableModule.Table.FromRowsFunctionValue.TypedInvoke(ListValue rows, Value columns)#(cr)#(lf) at Microsoft.Mashup.Engine1.Runtime.NativeFunctionValue2`3.Invoke(Value arg0, Value arg1)#(cr)#(lf) at Microsoft.Mashup.Engine1.Language.ValueCreator.<>c__DisplayClass23_0.<CreateValueForRecord>b__0(Int32 index)#(cr)#(lf) at Microsoft.Mashup.Engine1.Runtime.RecordValue.DemandRecordValue.get_Item(Int32 index)#(cr)#(lf) at Microsoft.Data.Mashup.ProviderCommon.MashupResource.TryGetValue(Func`1 getValue, IValue& value, String& errorMessage)#(cr)#(lf)Record\""
      }
    },
    {
      "code": "Microsoft.Data.Mashup.ValueError.Reason",
      "detail": {
        "type": 1,
        "value": "DataSource.Error"
      }
    }
  ],
  "exceptionCulprit": 1
}

} }

sarabjeetsinghlenskart commented 1 year ago

Team, please help

sarabjeetsinghlenskart commented 1 year ago

Hi Team, please let us know if there is any update

sarabjeetsinghlenskart commented 1 year ago

@toddstoffel

ilyagithub1 commented 1 year ago

@sarabjeetsinghlenskart

The stack trace points to your data as the source of the error.

By the look of the stack trace, it can be concluded that there is a gap in your data.

Carry out a comprehensive local test of your Power Query-based data manipulations in Power BI Desktop using the same data source:

  1. Reproduce the error in Power BI Desktop.
  2. Collect detailed logs with Diagnostic Tracing.
  3. Analyze the logs.

Kindly note that you are using MariaDB ODBC Connector but not MariaDB Power BI Connector which is indicated by the DataSourcePath value of dsn=MariaDB_194:

...
{
      "code": "Microsoft.Data.Mashup.ValueError.DataSourcePath",
      "detail": {
        "type": 1,
        "value": "dsn=MariaDB_194"
      }
    },
...

MariaDB Power BI Connector uses a different format for DataSourcePath.

You are welcome to switch to MariaDB Power BI Connector that has some extra features, like DirectQuery support, on top of the standard ODBC functionality.

sarabjeetsinghlenskart commented 1 year ago

Yes, we are using the ODBC driver because the PowerBI connector doesn’t support custom SQL and it was earlier suggested to move to the ODBC. Regarding the error, this error comes intermittently. Is there a way I can enable odbc logs and I can refer those once this error comes again. ?

ilyagithub1 commented 1 year ago

https://learn.microsoft.com/en-us/data-integration/gateway/service-gateway-tshoot#troubleshooting-tools