This is a migrated thread and some comments may be shown as answers.

Upload repeating multiple times

3 Answers 162 Views
Upload
This is a migrated thread and some comments may be shown as answers.
Lutfi
Top achievements
Rank 1
Lutfi asked on 02 Feb 2015, 09:10 PM
Hi.

I've noticed that when uploading multiple files in async mode the progress bar reaches 100% and then starts over again. This goes for about 3 times. It happens specially when uploading big files (over 100 Mb). I've register a handler to the progress event and log to the console. In the extract below from chrome browser you may see how the file.004 reaches 100% and then starts a 1% again.

    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.002: 65%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.004: 97%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.005: 39%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.006: 42%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.002: 68%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.003: 27%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.004: 99%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.001: 27%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.002: 71%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.004: 100%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.005: 40%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.006: 43%"
    [16024:12948:0202/210719:VERBOSE1:http_auth_controller.cc(256)] The server http://localhost:89/ requested auth
      Has header WWW-Authenticate: NTLM
      Has header WWW-Authenticate: Basic realm="localhost"
    [16024:12948:0202/210719:VERBOSE1:http_auth_sspi_win.cc(24)] AcquireCredentialsHandle returned 0x0
    [16024:12948:0202/210719:VERBOSE1:http_auth_sspi_win.cc(108)] InitializeSecurityContext returned 0x90312
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.002: 74%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.003: 27%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.004: 1%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.001: 28%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.002: 76%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.004: 2%"
    [16024:10352:0202/210719:INFO:CONSOLE(598)] "file.005: 41%"

I'm using NTLM for authentication and I've noticed the has header WWW-Authenticate: NTLM message everytime that the progress bar goes from 100% to 1%. I think that the file payload is sent 3 times for every http request of the NTLM handshake which is really bad.

Is there a way to solve this?

I've also noticed that the upload component starts the upload of all the files at the same time. In our case the user may salect to upload thousands of files so I would be better to have the control to send only 4-6 files simultaneously, or even being able how many.

Attached is the full log for an upload of 6 big files. Because of implementation issues I can only test the upload in Chrome.

Thanks

3 Answers, 1 is accepted

Sort by
0
Dimiter Madjarov
Telerik team
answered on 04 Feb 2015, 12:31 PM
Hi Lutfi,


I covered the question in the support thread on the same topic.

Regards,
Dimiter Madjarov
Telerik
 
Join us on our journey to create the world's most complete HTML 5 UI Framework - download Kendo UI now!
 
0
David Yardy
Top achievements
Rank 1
answered on 26 Feb 2015, 10:04 PM
What was the resolution?
0
Lutfi
Top achievements
Rank 1
answered on 02 Mar 2015, 09:28 AM
Hi David I'm still working on the issue. I suspect that when sending multiple POST request at the same time to ISS it decides to get a new authentication token. The implementation of the async upload is poor because it launches all the files ate the same time instead of queue them of sending just a few in parallel, which in addition to overwhelm the server with so many requests may cause the re-autentication. I've taken the upload component code and sequentialise the upload. I've done some few test and it seems to have solved the issue, But I need to test it much more. I'll also suggest to to swap to Negotiate/Kerberos which will require to configure the SPNs. I'll commit the code to Telerik so that they integrate into the next release.
Tags
Upload
Asked by
Lutfi
Top achievements
Rank 1
Answers by
Dimiter Madjarov
Telerik team
David Yardy
Top achievements
Rank 1
Lutfi
Top achievements
Rank 1
Share this question
or