- ABP Framework version: v8.2.2
- UI Type: MVC
- Database System: EF Core (MySQL)
- Tiered (for MVC) or Auth Server Separated (for Angular): yes
- Exception message and full stack trace:
- Steps to reproduce the issue:
I created a app-pro template project, and add FileManagement Module. It works fine.
Now i need use minio, i readed the https://abp.io/docs/latest/framework/infrastructure/blob-storing/minio
, add minio use abp add-package Volo.Abp.BlobStoring.Minio
in my HttpApi.Host project.
HttpApi.Host.csproj
...
<PackageReference Include="Volo.Abp.BlobStoring.Minio" Version="8.2.2" />
...
appsettings.json
{
...
"Minio": {
"EndPoint": "127.0.0.1",
"AccessKey": "minioadmin",
"SecretKey": "minioadmin",
"BucketName": "my",
"WithSSL": false,
"CreateContainerIfNotExists": true
},
...
}
MyHttpApiHostModule.js
[DependsOn(
...
typeof(AbpBlobStoringMinioModule),
...
)]
public class MyHttpApiHostModule : AbpModule {
...
public override void ConfigureServices(ServiceConfigurationContext context) {
...
Configure<AbpBlobStoringOptions>(options =>
{
System.Console.WriteLine("## - 1");
options.Containers.Configure<FileManagementContainer>(c =>
{
System.Console.WriteLine("## - 2");
c.UseMinio(minio =>
{
System.Console.WriteLine("## - 3");
minio.EndPoint = configuration["Minio:EndPoint"]!;
minio.AccessKey = configuration["Minio:AccessKey"]!;
minio.SecretKey = configuration["Minio:SecretKey"]!;
minio.BucketName = configuration["Minio:BucketName"];
minio.WithSSL = configuration.GetValue<bool>("Minio:WithSSL");
minio.CreateBucketIfNotExists = configuration.GetValue<bool>("Minio:CreateBucketIfNotExists");
});
});
});
}
...
I added a breakpoint in line System.Console.WriteLine("## - 1");
, But where i run the HttpApi.Host,
There is no output ## - 1
from the log, and no breakpoints are triggered.
Am I missing some steps?
19 Answer(s)
-
0
Hi,
Your code looks like no problem, will it work if you upload a file?
-
0
Upload small file success, but nothing in the minio. I think configure AbpBlobStoringOptions is not triggered.
Configure<AbpBlobStoringOptions>(options => { // Can't enter here ..... }
-
0
Hi,
I can't reproduce the problem,
could you please share a minimal project with me? i will check it. shiwei.liang@volosoft.com
-
0
-
0
-
0
Ok, I sended it .
-
0
Hi,
It works for me:
My steps:
create a minio docker
docker run -d -p 9000:9000 --name minio\ -e "MINIO_ACCESS_KEY=admin" \ -e "MINIO_SECRET_KEY=admin@123456" \ minio/minio:RELEASE.2021-06-17T00-10-46Z server /data
update
EndPoint
tolocalhost:9000
update configure code:
minio.CreateBucketIfNotExists = configuration.GetValue<bool>("Minio:CreateContainerIfNotExists");
-
0
-
0
Fine, could you share the project with me? I want to test it at my machine.
-
0
And at my machine, Console can't print the "## - 1", so configure for minio is skiped. Is this message printed at your machine?
Configure<AbpBlobStoringOptions>(options => { System.Console.WriteLine("## - 1"); });
-
0
Hi,
shared, please check it
And at my machine, Console can't print the "## - 1", so configure for minio is skiped. Is this message printed at your machine?
yes
-
0
It works right now.
I mistakenly thought that it would be configured after the program started running, but it would only be configured when I actually accessed FileManagement :(
A new issue happened when i upload a large file.
[23:00:19 WRN] ---------- RemoteServiceErrorInfo ---------- { "code": null, "message": "文件太大,最大文件大小限制为 2 GB。", "details": null, "data": {}, "validationErrors": null } [23:00:19 WRN] 文件太大,最大文件大小限制为 2 GB。 Volo.Abp.UserFriendlyException: 文件太大,最大文件大小限制为 2 GB。 at Volo.FileManagement.Files.FileDescriptorAppService.CheckSizeAsync(Int64 contentLength) at Volo.FileManagement.Files.FileDescriptorAppService.GetPreInfoAsync(List`1 input) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.Authorization.AuthorizationInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.GlobalFeatures.GlobalFeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.Auditing.AuditingInterceptor.ProceedByLoggingAsync(IAbpMethodInvocation invocation, AbpAuditingOptions options, IAuditingHelper auditingHelper, IAuditLogScope auditLogScope) at Volo.Abp.Auditing.AuditingInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.Features.FeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.Validation.ValidationInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Volo.FileManagement.Files.FileDescriptorController.GetPreInfoAsync(List`1 input) at lambda_method3119(Closure, Object) at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
I already added follow code.
public override void ConfigureServices(ServiceConfigurationContext context) { var hostingEnvironment = context.Services.GetHostingEnvironment(); var configuration = context.Services.GetConfiguration(); Configure<FormOptions>(x => { x.MultipartBodyLengthLimit = 1024L * 1024 * 1024 * 10; //10G x.ValueLengthLimit = int.MaxValue; }); Configure<KestrelServerOptions>(options => { options.Limits.MaxRequestBodySize = 1024L * 1024 * 1024 * 10; //10G }); ... }
Could tell me how to resolve it ?
-
0
-
0
Fine, thanks! I have some questions:
- I created a
MyFileDescriptorAppService
at Application layer and override theCheckSizeAsync
method, then how to inject it and replace the originFileDescriptorAppService
? - Could you share me the fully code of
CheckSizeAsync
method, your image just a part of it, i don't know whether has other important logic. - And why the MaxSizeLength isn't a
long
type?
public static class FileDescriptorConsts { public static int MaxSizeLength = int.MaxValue; }
- I created a
-
0
HI,
This is the full method code
protected virtual async Task CheckSizeAsync(long contentLength) { if (contentLength > FileDescriptorConsts.MaxSizeLength) { throw new UserFriendlyException(L["FileTooBig", BeautifySize(FileDescriptorConsts.MaxSizeLength)]); ; } var maxSizeDescription = await FeatureChecker.GetOrNullAsync(FileManagementFeatures.StorageSize); if (maxSizeDescription == null || maxSizeDescription == "0") { return; } var maxSize = long.Parse(maxSizeDescription); var totalStorage = await FileDescriptorRepository.GetTotalSizeAsync(); if ((totalStorage + contentLength) < maxSize) { return; } var remainedSize = (maxSize - totalStorage); throw new NotEnoughStorageSizeException(BeautifySize(maxSize), BeautifySize(remainedSize)); }
-
0
Thanks~
New issue happend when i upload a large file (7GB).
the WebHost thrown:
[19:31:43 INF] Sending HTTP request POST https://localhost:44301/api/file-management/file-descriptor/upload?Name=sd-webui-aki-v4.9.7z&OverrideExisting=True&ExtraProperties=Volo.Abp.Data.ExtraPropertyDictionary&api-version=1.0 [19:33:23 ERR] ---------- RemoteServiceErrorInfo ---------- { "code": null, "message": "An error occurred during the ABP remote HTTP request. (The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.) See the inner exception for details.", "details": null, "data": {}, "validationErrors": null } [19:33:23 ERR] An error occurred during the ABP remote HTTP request. (The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.) See the inner exception for details. Volo.Abp.Http.Client.AbpRemoteCallException: An error occurred during the ABP remote HTTP request. (The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.) See the inner exception for details. ---> System.Threading.Tasks.TaskCanceledException: The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing. ---> System.TimeoutException: The operation was canceled. ---> System.Threading.Tasks.TaskCanceledException: The operation was canceled. ---> System.IO.IOException: Unable to read data from the transport connection: 由于线程退出或 应用程序请求,已中止 I/O 操作。. ---> System.Net.Sockets.SocketException (995): 由于线程退出或应用程序请求,已中止 I/O 操作。 --- End of inner exception stack trace --- at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token) at System.Net.Security.SslStream.EnsureFullTlsFrameAsync[TIOAdapter](CancellationToken cancellationToken, Int32 estimatedSize) at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) at System.Net.Security.SslStream.ReadAsyncInternal[TIOAdapter](Memory`1 buffer, CancellationToken cancellationToken) at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) at System.Net.Http.HttpConnection.InitialFillAsync(Boolean async) at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken) at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken) at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) --- End of inner exception stack trace --- --- End of inner exception stack trace --- at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync(ClientProxyRequestContext requestContext) --- End of inner exception stack trace --- at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync(ClientProxyRequestContext requestContext) at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](ClientProxyRequestContext requestContext) at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](String methodName, ClientProxyRequestTypeValue arguments) at Volo.FileManagement.Files.FileDescriptorClientProxy.CreateAsync(Nullable`1 directoryId, CreateFileInputWithStream inputWithStream) at lambda_method3403(Closure, Object) at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) [19:33:23 ERR] Code: [19:33:23 ERR] Details: [19:33:23 INF] Executing ObjectResult, writing value of type 'Volo.Abp.Http.RemoteServiceErrorResponse'. [19:33:23 INF] Executed action Volo.FileManagement.Files.FileDescriptorController.CreateAsync (Volo.FileManagement.HttpApi) in 159170.0881ms [19:33:23 INF] Executed endpoint 'Volo.FileManagement.Files.FileDescriptorController.CreateAsync (Volo.FileManagement.HttpApi)' [19:33:23 INF] Request starting HTTP/2 POST https://localhost:44302/api/file-management/file-descriptor/upload - multipart/form-data; boundary=----WebKitFormBoundaryWHh4hagNOJiN39KI 7538690034 [19:33:23 INF] Check the access_token is active every 60 seconds. [19:33:23 INF] The access_token is active. [19:33:23 INF] Start processing HTTP request GET https://localhost:44301/api/abp/application-configuration?IncludeLocalizationResources=False&api-version=1.0 [19:33:23 INF] Sending HTTP request GET https://localhost:44301/api/abp/application-configuration?IncludeLocalizationResources=False&api-version=1.0 [19:33:23 INF] Received HTTP response headers after 47.5971ms - 200 [19:33:23 INF] End processing HTTP request after 47.7461ms - 200 [19:33:23 INF] Start processing HTTP request GET https://localhost:44301/api/abp/application-localization?CultureName=zh-Hans&OnlyDynamics=True&api-version=1.0 [19:33:23 INF] Sending HTTP request GET https://localhost:44301/api/abp/application-localization?CultureName=zh-Hans&OnlyDynamics=True&api-version=1.0 [19:33:23 INF] Received HTTP response headers after 38.3634ms - 200 [19:33:23 INF] End processing HTTP request after 38.5779ms - 200 [19:33:23 INF] Executing endpoint 'Volo.FileManagement.Files.FileDescriptorController.CreateAsync (Volo.FileManagement.HttpApi)' [19:33:23 INF] Route matched with {controller = "FileDescriptors", area = "fileManagement", action = "Create", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.FileManagement.Files.FileDescriptorDto] CreateAsync(System.Nullable`1[System.Guid], Volo.FileManagement.Files.CreateFileInputWithStream) on controller Volo.FileManagement.Files.FileDescriptorController (Volo.FileManagement.HttpApi). [19:33:23 INF] Request finished HTTP/2 POST https://localhost:44302/api/file-management/file-descriptor/upload - 500 null application/json; charset=utf-8 159524.6782ms
the ApiHost thrown:
[19:33:23 INF] Request finished HTTP/1.1 GET https://localhost:44301/api/abp/application-localization?CultureName=zh-Hans&OnlyDynamics=True&api-version=1.0 - 200 null application/json; charset=utf-8 38.1603ms [19:33:27 ERR] An error occurred using a transaction. [19:33:27 ERR] ---------- RemoteServiceErrorInfo ---------- { "code": null, "message": "对不起,在处理您的请求期间产生了一个服务器内部错误!!", "details": null, "data": {}, "validationErrors": null } [19:33:27 ERR] The operation was canceled. System.OperationCanceledException: The operation was canceled. at System.Threading.CancellationToken.ThrowOperationCanceledException() at MySqlConnector.Core.CommandExecutor.ExecuteReaderAsync(CommandListPosition commandListPosition, ICommandPayloadCreator payloadCreator, CommandBehavior behavior, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/CommandExecutor.cs:line 15 at MySqlConnector.MySqlCommand.ExecuteReaderAsync(CommandBehavior behavior, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/MySqlCommand.cs:line 357 at MySqlConnector.MySqlCommand.ExecuteDbDataReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/MySqlCommand.cs:line 350 at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.InitializeReaderAsync(AsyncEnumerator enumerator, CancellationToken cancellationToken) at Pomelo.EntityFrameworkCore.MySql.Storage.Internal.MySqlExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.MoveNextAsync() at Microsoft.EntityFrameworkCore.Query.ShapedQueryCompilingExpressionVisitor.SingleOrDefaultAsync[TSource](IAsyncEnumerable`1 asyncEnumerable, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Query.ShapedQueryCompilingExpressionVisitor.SingleOrDefaultAsync[TSource](IAsyncEnumerable`1 asyncEnumerable, CancellationToken cancellationToken) at Volo.Abp.Domain.Repositories.EntityFrameworkCore.EfCoreRepository`3.FindAsync(TKey id, Boolean includeDetails, CancellationToken cancellationToken) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync() at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed) at Volo.FileManagement.Files.FileDescriptorAppService.CreateAsync(Nullable`1 directoryId, CreateFileInputWithStream inputWithStream) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo) ... <InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) [19:33:27 INF] Executing ObjectResult, writing value of type 'Volo.Abp.Http.RemoteServiceErrorResponse'. [19:33:27 INF] Executed action Volo.FileManagement.Files.FileDescriptorController.CreateAsync (Volo.FileManagement.HttpApi) in 104660.6893ms [19:33:27 INF] Executed endpoint 'Volo.FileManagement.Files.FileDescriptorController.CreateAsync (Volo.FileManagement.HttpApi)' [19:33:28 INF] Request finished HTTP/1.1 POST https://localhost:44301/api/file-management/file-descriptor/upload?Name=sd-webui-aki-v4.9.7z&OverrideExisting=True&ExtraProperties=Volo.Abp.Data.ExtraPropertyDictionary&api-version=1.0 - 499 null application/json; charset=utf-8 105391.5284ms [19:34:19 INF] Request starting HTTP/1.1 POST https://localhost:44301/api/file-management/file-descriptor/upload?Name=sd-webui-aki-v4.9.7z&OverrideExisting=True&ExtraProperties=Volo.Abp.Data.ExtraPropertyDictionary&api-version=1.0 - multipart/form-data; boundary="2a9f04a1-b972-4f0b-8ee8-2778ca3086fe" 7538689764 [19:34:19 INF] Executing endpoint 'Volo.FileManagement.Files.FileDescriptorController.CreateAsync (Volo.FileManagement.HttpApi)' [19:34:19 INF] Route matched with {controller = "FileDescriptors", area = "fileManagement", action = "Create", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.FileManagement.Files.FileDescriptorDto] CreateAsync(System.Nullable`1[System.Guid], Volo.FileManagement.Files.CreateFileInputWithStream) on controller Volo.FileManagement.Files.FileDescriptorController (Volo.FileManagement.HttpApi).
This large file saved at minio success, but nothing at FileManagement.
-
0
You can set the HTTP Request timeout.
BWT, I don't remember uploading a very large file like this.
-
0
Thanks, resolved it !
But the Size is
int
type, it overflow now, how to fix this issue?public class FileDescriptor : AuditedAggregateRoot<Guid>, IMultiTenant { public int Size { get; protected internal set; } } public class FileDescriptorDto : ExtensibleAuditedEntityDto<Guid>, IHasConcurrencyStamp { public int Size { get; set; } }
-
0
Hi,
we will consider use long type in the next version