-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
upload_progress: tracking already registered even if its not-registered and unique #32
Comments
@khizarsonu we're running in a similar issue. have you solved this somehow? |
If you can send me a full debug log I can check what is wrong (you need to build nginx with --with-debug). Most of the time the issue is that the same id is used for a subsequent upload. |
@masterzen i've already turned on debug logging. What i see in the logs is I am very sure that the problem is not caused by duplicate progress ids, as we are generating an unique ID for each client. Furthermore, we can reproduce this behavior which is restricted to one specific server (ubuntu 12.04, nginx-extras 1.6.0). The really weird issue is the following:
There are no other log messages on the server. Also, we made sure that there's only one single upload happening on the server when we test it (it's our development machine). Here's what happens on the client:
The original ajax Here's our Are there any more debug infos i could provide? |
@pulse00, please send me privately the full debug.log (you can anonymize it) so that I can have a look. Restart nginx before starting the upload, then stop the experiment at the moment you get the error. The usual difference between wifi and ethernet is the speed and latency. It might be possible this triggers a bug somewhere. |
do you need the log at |
@pulse00 debug please (it might be too large to send it by e-mail, in which case if you can upload this to an http server somewhere that'd be great). |
@masterzen here's the gzipped log file - it's ~ 230 MB unzipped. However, after activating Please let me know if there's anything else you need. |
@pulse00 I thrown an eye on the log file and something struck me:
As you can see above, nginx http module says there's still 224229458 KiB of upload to be uploaded , and as you can see that's what is stored in the upload-progress. I think you're seeing the issue #37, which I haven't found the solution for yet. Can you try to disable TLS/SSL in your experiment and upload again to see if that's the same issue? |
@pulse00 I've found the issue now. A change in nginx 1.3.9 made that the number of bytes that rest to be uploaded is not updated anymore by nginx unless nginx recycles the buffer where it stores the incoming body. This buffer is sized with the If you reduce this to let's say 128k or even 1M and upload a large file, you'll see the upload progress working. I will fix this issue on the side of the upload progress module later this week-end (I need to find a way to capture the missing information), but I'd appreciate if you could test with a reduced |
hello,
my problem is than when i upload file on nginx.. and getting upload_progress using its module i'm getting error in nginx_error.log
error is "upload_progress: tracking already registered"
i verified that upload_progress id is uniq for every form that are populated on web pages
then why i'm getting this error.
here is my virtual host configuration
server
{
listen 80;
server_name localhost;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/mobisfy;
include other.conf;
location ~ .*.(php|php5)?$
{
fastcgi_pass 127.0.0.1:90;
fastcgi_index index.php;
include fcgi.conf;
track_uploads proxied 30s;
}
location ^~ /progress {
report uploads tracked in the 'proxied' zone
report_uploads proxied;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
rewrite ^/uploads/files/(.+?)/(.+?)/(.+?)/(.+?)$ /uploads/files/$1?st=$2&e=$3 last;
location ^~ /uploads/files/
{
secure_link $arg_st,$arg_e;
secure_link_md5 sonu$uri$arg_e;
if ($secure_link = 0) {
return 403;
}
if ($secure_link = "")
{
return 500;
}
if ($secure_link != 1)
{
return 500;
}
if everything is ok secure_link is 1
}
location ~ /. {
deny all;
access_log off;
log_not_found off;
}
location ~ /(protected|framework|nbproject|make) {
deny all;
access_log off;
log_not_found off;
}
location ~ /themes/\w+/views {
deny all;
access_log off;
log_not_found off;
}
location /images/r
{
location ~* .jpg$
{
try_files $uri $uri/ /index.php$is_args$args;
return 500;
}
}
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~* .(js|css|png|jpg|jpeg|gif|ico)$ {
expires 24h;
log_not_found off;
}
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*.(js|css)?$
{
expires 12h;
}
access_log off;
}
The text was updated successfully, but these errors were encountered: