Supplies are limited. Contact info@espc.tech right away to save your spot before the conference sells out.
Get your discountScore big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount
I'm using the PowerBI API (v2.0) to get parameters from a specific report using http://powerbiURL/reports/api/v2.0/Reports(REPORT_ID)/ParameterDefinitions.
If the report don't use shared dataset I don't know why when I try to get the parameters the report is "locked" and I need to wait some minutes to try get the parameters again. It also lock the report on report server. Is it a bug on Power BI API?
I receive the the following json after wait the parameters result:
{ "error": { "code": "0", "message": "" } }
Report server stack trace
2018-10-04 14:26:54.8720|INFO|102|Received request GET /api/v2.0/Reports%9528ba85c2-a99c-8d23-a125-9af6c73a97ba%29/ParameterDefinitions| RequestID = s_e86106d7-a1a2-4415-afe4-e90bed07d65a 2018-10-04 14:26:57.9659|ERROR|102|OData exception occurred: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Net.WebException: The request failed with HTTP status 503: Server Too Busy. at Microsoft.SqlServer.ReportingServices2010.RSConnection2010.SetConnectionProtocol() at Microsoft.SqlServer.ReportingServices2010.RSConnection2010.SoapMethodWrapper`1.ExecuteMethod(Boolean setConnectionProtocol) at Microsoft.SqlServer.ReportingServices2010.RSConnection2010.GetItemParameters(String itemPath, String historyId, Boolean forRendering, ParameterValue[] values, DataSourceCredentials[] credentials) at Microsoft.ReportingServices.Portal.Services.SoapProxy.SoapRS2010Proxy.<>c__DisplayClassa.<GetItemParameters>b__9() at Microsoft.ReportingServices.Portal.Services.SoapProxy.SoapAuthenticationHelper.ExecuteWithWindowsAuth[TReturn](SoapHttpClientProtocol soapClient, IPrincipal userPrincipal, Func`1 func) at Microsoft.ReportingServices.Portal.Services.SoapProxy.SoapRS2010Proxy.GetParameterTypes(IPrincipal userPrincipal, String reportpath) at Microsoft.ReportingServices.Portal.Repositories.CatalogItemRepository.GetReportParameterDefinitionsWithQueryAndCurrentValues(IPrincipal userPrincipal, String reportpath, IEnumerable`1 parameterValues) at Microsoft.ReportingServices.Portal.Repositories.CatalogItemRepository.GetReportParameterDefinitionsWithQuery(IPrincipal userPrincipal, String reportpath) at Model.Report.get_ParameterDefinitions() --- End of inner exception stack trace --- at Microsoft.ReportingServices.Portal.ODataWebApi.Controllers.SegmentHandlers.PropertySegmentHandler.Handle(Object source, ODataPathSegment segment) at Microsoft.ReportingServices.Portal.ODataWebApi.Controllers.Reflection.ReflectionODataController`1.Get(ODataPath oDataPath) at lambda_method(Closure , Object , Object[] ) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ExceptionFilterResult.<ExecuteAsync>d__0.MoveNext().| RequestID = s_e86106d7-a1a2-4415-afe4-e90bed07d65a
The statement has been terminated. ---> System.ComponentModel.Win32Exception: The wait operation timed out --- End of inner exception stack trace --- at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery() --- End of inner exception stack trace --- at Microsoft.ReportingServices.Library.Storage.WrapAndThrowKnownExceptionTypes(Exception e) at Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery() at Microsoft.ReportingServices.Library.SchedulingDBInterface.CheckNextRunTime(Guid scheduleID, DateTime nextRunTime) at Microsoft.ReportingServices.Library.DBInterface.AddReportToExecutionCache(Guid reportId, ReportSnapshot snapshotData, DateTime executionDateTime, Boolean useEditSessionTimeout, DateTime& expirationDateTime) at Microsoft.ReportingServices.Library.SharedDataExecutionInstance.UpdateCacheSnapshot(Boolean storeCache) at Microsoft.ReportingServices.Library.SharedDataExecutionInstance.Execute(DataSetInfo dataSet, String targetChunkNameInReportSnapshot, ParameterInfoCollection dat processing!ReportServer_0-24!1924!10/04/2018-14:22:27:: e ERROR: An exception has occurred in data set 'MY_DATASET'. Details: Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. ---> System.Data.SqlClient.SqlException: Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. The statement has been terminated. ---> System.ComponentModel.Win32Exception: The wait operation timed out