{"data":{"exception":"InvalidOperationException","path":"/api/customer/source","message":"An exception has been raised that is likely due to a transient failure.","helpLink":null,"data":{},"source":"Npgsql.EntityFrameworkCore.PostgreSQL","stackTrace":" at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)\n at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.MoveNextAsync()\n at Microsoft.EntityFrameworkCore.Query.ShapedQueryCompilingExpressionVisitor.SingleOrDefaultAsync[TSource](IAsyncEnumerable`1 asyncEnumerable, CancellationToken cancellationToken)\n at Microsoft.EntityFrameworkCore.Query.ShapedQueryCompilingExpressionVisitor.SingleOrDefaultAsync[TSource](IAsyncEnumerable`1 asyncEnumerable, CancellationToken cancellationToken)\n at Redsand.Site.RsCapAuthorizationHandler.<>c__DisplayClass7_0.<<HandleRequirementAsync>b__10>d.MoveNext() in E:\\redsand\\BaseV2-Net6\\Services\\Auth\\AuthorizationHandler.cs:line 71\n--- End of stack trace from previous location ---\n at Redsand.Site.Services.CacheService.GetOrCreateAsync[T](String key, Func`2 factory, Boolean setCache) in E:\\redsand\\BaseV2-Net6\\Services\\CacheService.cs:line 89\n at Redsand.Site.RsCapAuthorizationHandler.HandleRequirementAsync(AuthorizationHandlerContext context, RsCapAuthorizationRequirement requirement) in E:\\redsand\\BaseV2-Net6\\Services\\Auth\\AuthorizationHandler.cs:line 68\n at Microsoft.AspNetCore.Authorization.AuthorizationHandler`1.HandleAsync(AuthorizationHandlerContext context)\n at Microsoft.AspNetCore.Authorization.DefaultAuthorizationService.AuthorizeAsync(ClaimsPrincipal user, Object resource, IEnumerable`1 requirements)\n at Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthorizeAsync(AuthorizationPolicy policy, AuthenticateResult authenticationResult, HttpContext context, Object resource)\n at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)\n at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)\n at Redsand.Site.Services.SignalRAuthorizationMiddleware.Invoke(HttpContext httpContext) in E:\\redsand\\BaseV2-Net6\\Services\\Auth\\AuthorizationMiddleware.cs:line 60\n at Redsand.Site.RequestCultureMiddleware.InvokeAsync(HttpContext context, IOptionsSnapshot`1 appsettings) in E:\\redsand\\BaseV2-Net6\\Services\\Translate\\RequestCultureMiddleware.cs:line 56\n at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.<Invoke>g__Awaited|6_0(ExceptionHandlerMiddleware middleware, HttpContext context, Task task)","inner":{"exception":"NpgsqlException","path":null,"message":"Failed to connect to 127.0.0.1:5432","helpLink":null,"data":{},"source":"Npgsql","stackTrace":" at Npgsql.Internal.NpgsqlConnector.ConnectAsync(NpgsqlTimeout timeout, CancellationToken cancellationToken)\n at Npgsql.Internal.NpgsqlConnector.RawOpen(SslMode sslMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken, Boolean isFirstAttempt)\n at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|203_1(NpgsqlConnector conn, SslMode sslMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken, Boolean isFirstAttempt)\n at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)\n at Npgsql.ConnectorPool.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)\n at Npgsql.ConnectorPool.<Get>g__RentAsync|28_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)\n at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|45_0(Boolean async, CancellationToken cancellationToken)\n at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)\n at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)\n at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenAsync(CancellationToken cancellationToken, Boolean errorsExpected)\n at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken)\n at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.InitializeReaderAsync(AsyncEnumerator enumerator, CancellationToken cancellationToken)\n at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)","inner":{"exception":"TimeoutException","path":null,"message":"Timeout during connection attempt","helpLink":null,"data":{},"source":null,"stackTrace":null,"inner":null}}},"status":400,"statusText":"","headers":{"cache-control":"no-cache,no-store","content-length":"5045","content-type":"application/json; charset=utf-8","date":"Sat, 07 Feb 2026 17:20:43 GMT","expires":"-1","pragma":"no-cache","server":"nginx/1.28.0"},"config":{"transitional":{"silentJSONParsing":true,"forcedJSONParsing":true,"clarifyTimeoutError":false},"adapter":["xhr","http","fetch"],"transformRequest":[null],"transformResponse":[null],"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"maxBodyLength":-1,"env":{},"headers":{"Accept":"application/json","Authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6IjExIiwiaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvd3MvMjAwNS8wNS9pZGVudGl0eS9jbGFpbXMvbmFtZSI6IjAzODQxNzc3NDEiLCJBc3BOZXQuSWRlbnRpdHkuU2VjdXJpdHlTdGFtcCI6IlRIR1pPSjVURTNKWEcyR05aUkVEVkE3S1VDRU9XU1BSIiwic3ViIjoiMDM4NDE3Nzc0MSIsImp0aSI6Ijg0Yzg3ODI0LTYzMTYtNDFlYy05ZTc2LTgwYTc0YjU0ODI2MyIsImlhdCI6MTc2OTkyNzI4MiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkFkbWluaXN0cmF0b3JzIiwiMy10ZWxlc2FsZSJdLCJuYmYiOjE3Njk5MjcyODIsImV4cCI6MTc3MTIyMzI4MiwiaXNzIjoiUlMiLCJhdWQiOiJSUyJ9.QWqdFX-ug9y0_tmm0pSnp1NgjPk7QO-VZLNuN-eX7yg","ContentType":"application/json","x-hour-offset":"7","BranchId":"1","Locale":"vi"},"baseURL":"https://lunova.nobi.pro","paramsSerializer":{},"params":{"page":1,"search":null,"pagesize":50},"signal":{},"method":"get","url":"/api/customer/source"},"request":{}}