Skip to content
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

DCHECK failed: !src.IsKeySaved() #686

Closed
securityguru opened this issue Apr 29, 2014 · 4 comments
Closed

DCHECK failed: !src.IsKeySaved() #686

securityguru opened this issue Apr 29, 2014 · 4 comments

Comments

@securityguru
Copy link

@securityguru securityguru commented Apr 29, 2014

uname -a:
Linux HOST 3.2.0-4-amd64 #1 SMP Debian 3.2.54-2 x86_64 GNU/Linux
nginx version: nginx/1.4.7
built by gcc 4.7.2 (Debian 4.7.2-5)
TLS SNI support enabled
configure arguments: --prefix=/usr --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-log-path=/var/log/nginx/access.log --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-pcre-jit --with-debug --with-http_addition_module --with-http_dav_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_realip_module --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-ipv6 --with-sha1=/usr/include/openssl --with-md5=/usr/include/openssl --with-mail --with-mail_ssl_module --add-module=/root/ngx_pagespeed-release-1.7.30.4-beta
[alert] 29626#0: [ngx_pagespeed 1.7.30.4-3847] [0428/115223:FATAL:string_multi_map.h(243)] Check failed: !src.IsKeySaved().
Backtrace:
        nginx: worker process() [0x4ad627]
        nginx: worker process() [0x4aa7c7]
        nginx: worker process() [0x52fd51]
        nginx: worker process() [0x52fead]
        nginx: worker process() [0x5304bd]
        nginx: worker process() [0x53059f]
        nginx: worker process() [0x530704]
        nginx: worker process() [0x53082d]
        nginx: worker process() [0x5315c6]
        nginx: worker process() [0x52d9d2]
        nginx: worker process() [0x592dd8]
        nginx: worker process() [0x49c541]
        nginx: worker process() [0x49ef06]
        nginx: worker process() [0x49f001]
        nginx: worker process() [0x43af93]
        nginx: worker process() [0x43b0a2]
        nginx: worker process() [0x4465f1]
        nginx: worker process() [0x446c2e]
        nginx: worker process() [0x4471a3]
        nginx: worker process() [0x44776c]
        nginx: worker process() [0x4292d8]
        nginx: worker process() [0x428e4a]
        nginx: worker process() [0x430140]
        nginx: worker process() [0x42e88b]
        nginx: worker process() [0x42f588]
        nginx: worker process() [0x4309f5]
        nginx: worker process() [0x411da6]
        /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd) [0x7fa4bb95eead]
        nginx: worker process() [0x410a89]
@oschaaf
Copy link
Member

@oschaaf oschaaf commented Apr 29, 2014

@securityguru
Was this a one-time failure? Or can you reproduce it? If so, would you be able to configure nginx --with-debug and post a backtrace using an nginx build with that?

@securityguru
Copy link
Author

@securityguru securityguru commented Apr 29, 2014

It was 14 times per day. I don't know how can I reproduce it, but I build nginx --with-debug and if it fails again I'll post backtrace

@oschaaf
Copy link
Member

@oschaaf oschaaf commented Apr 29, 2014

That would be great! Thanks!

@jeffkaufman
Copy link
Contributor

@jeffkaufman jeffkaufman commented Apr 29, 2014

This is actually fixed on PSOL trunk with r3671, and will be in the 1.8 release.

The problem is that:

bool IsKeySaved() const {
     return key_storage_.data() == key_.data();
}

Is not guaranteed to work if the key is empty.

This was a DCHECK only problem, which means building without --with-debug should avoid it. (Strangely enough.)

@jeffkaufman jeffkaufman changed the title FATAL:string_multi_map.h(243)] Check failed: !src.IsKeySaved() DCHECK failed: !src.IsKeySaved() Apr 29, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants