Hello Roberto.

I'm catching a segfault at startup:

2012-09-03 11:40:00.096881500 ENVIRON: 
VIRTUAL_ENV=/servers/python-environments/discosite
ENVIRON: 
PATH=/servers/python-environments/discosite/bin:/servers/daemontools/bin:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
ENVIRON: PWD=/servers/supervise/uwsgi-discosite
ENVIRON: PS1=(discosite)
ENVIRON: SHLVL=0
ENVIRON: UWSGI_RELOADS=0
max space for custom process name = 309
[uwsgi-logger] registered "python"
[uwsgi-logger] registered "syslog"
[uwsgi-logger] registered "rsyslog"
[uwsgi-logger] registered "socket"
[uwsgi-logger] registered "redislog"
executable name: /home/andre.cruz/uwsgi/uwsgi
tmp = /
[uWSGI] getting YAML configuration from 
/servers/disco/sites/discoapi/discoapi/uwsgi.yaml
optind:3 argc:3
[uwsgi-cheaper-algo] registered "spare"
[uwsgi-cheaper-algo] registered "backlog"
*** Starting uWSGI 1.3-rc2 (64bit) on [Mon Sep  3 11:40:00 2012] ***
***
*** You are running a DEBUG version of uWSGI, please disable debug in your 
build profile and recompile it ***
***
compiled with version: 4.4.7 on 03 September 2012 11:39:07
os: Linux-2.6.32-5-amd64 #1 SMP Sun May 6 04:00:17 UTC 2012
nodename: vmdev-disco01
machine: x86_64
clock source: unix
detected number of CPU cores: 4
current working directory: /servers/supervise/uwsgi-discosite
detected binary path: /home/andre.cruz/uwsgi/uwsgi
uwsgi shared socket 0 bound to TCP address :443 fd 3
uwsgi shared socket 1 bound to TCP address :80 fd 4
setgid() to 33
setuid() to 33
your memory page size is 4096 bytes
detected max file descriptor number: 20480
async fd table size: 20480
cores allocated...
allocated 11040000 bytes (10781 KB) for 10000 cores per worker.
lock engine: pthread robust mutexes
uWSGI http bound on :443 fd 3
uWSGI http bound on :80 fd 4
uwsgi socket 0 bound to TCP address 127.0.0.1:34046 (port auto-assigned) fd 5
Python version: 2.7.3 (default, Jul 13 2012, 18:25:27)  [GCC 4.7.1]
Set PythonHome to /servers/python-environments/discosite
Python main interpreter initialized at 0x6f4820
python threads support enabled
[uWSGI DEBUG] uwsgi socket 256 SO_RCVBUF size: 87380
[uWSGI DEBUG] uwsgi socket 256 SO_SNDBUF size: 16384
your server socket listen backlog is limited to 4096 connections
!!! uWSGI process 23514 got Segmentation Fault !!!
*** backtrace of 23514 ***
/home/andre.cruz/uwsgi/uwsgi(uwsgi_backtrace+0x25) [0x43f945]
/home/andre.cruz/uwsgi/uwsgi(uwsgi_segfault+0x21) [0x43fa21]
/lib/x86_64-linux-gnu/libc.so.6(+0x324f0) [0x7faf10f054f0]
/lib/x86_64-linux-gnu/libc.so.6(+0x82810) [0x7faf10f55810]
/home/andre.cruz/uwsgi/uwsgi(uwsgi_calloc_shared+0x26) [0x4198b6]
/home/andre.cruz/uwsgi/uwsgi(uwsgi_setup_workers+0xda) [0x4347ca]
/home/andre.cruz/uwsgi/uwsgi(uwsgi_start+0x83c) [0x43e4ec]
/home/andre.cruz/uwsgi/uwsgi(main+0xe14) [0x4421f4]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd) [0x7faf10ef1ead]
/home/andre.cruz/uwsgi/uwsgi() [0x417839]
*** end of backtrace ***

Here is my config:

uwsgi:
    uid: www-data
    gid: www-data
    module: discoapi.wsgi
    pythonpath: /servers/disco/sites/discoapi
    pythonpath: /servers/disco/discolib
    chdir: /servers/disco/sites/discoapi
    env: DJANGO_SETTINGS_MODULE=discoapi.settings
    processes: 4
    harakiri-verbose: 1
    auto-procname: 1
    no-orphans: 1
    vacuum: 1
    procname-prefix-spaced: discoapi
    master: 1
    listen: 4096
    virtualenv: /servers/python-environments/discosite
    limit-post: 153600000
    http-timeout: 60
    async: 10000
    enable-threads: 1
    loop: gevent
    shared-socket: 0.0.0.0:443
    shared-socket: 0.0.0.0:80
    https: 
=0,/home/andre.cruz/uwsgi/foobar.crt,/home/andre.cruz/uwsgi/foobar.key
    http: =1

It worked perfectly with rc1.

Best regards,
André


On Sep 1, 2012, at 11:25 AM, Roberto De Ioris <[email protected]> wrote:

> 
> Hi everyone, the second release candidate of uWSGI 1.3 is available.
> 
> This release contains a lot of optimizations and an infinite series of
> code refactoring (we had functions with more than 400 lines written 3
> years ago...).
> 
> A couple of plugins and features have been added, see below.
> 
> Changelog 1.3-rc2 (20120901)
> 
> * the mongrel2 response generator now uses the new uwsgi_buffer structure
> for storing headers. This will generate a single zeromq message for all of
> the headers.
> 
> * uwsgi.cache_get on remote server for non-existent keys no more spit out
> useless errors
> 
> * NEW PLUGIN: router_http (compiled-in by default)
> 
> works in the same way of the uwsgi one but forward requests to an http
> server. The uwsgi original request is translated to an http proxy request
> (adding specific headers like X-Forwarded-For)
> 
> * NEW OPTIONS for config logic : --if-opt --if-not-opt
> 
> works like --if-env but check for a previously defined uWSGI option
> 
> * NEW FEATURE: --if-env (and --if-opt) can compare values:
> 
> Example:
> 
> if-env = USER=root
>    http-socket = :80
> endif =
> 
> * NEW OPTION/FEATURE: --spooler-external <path>
> 
> You can map spooler tasks to the directory managed by an external spooler.
> 
> You could abuse that feature for building a centralized (per-server) spooler
> where multiple apps can write.
> 
> As the --spooler option, you can have all of the --spooler-external
> options, and you can mix them with --spooler one.
> 
> An example of mixing them would be having a 'local spooler' for
> app-specific tasks and a series of 'external spoolers' for services
> supplied by your ISP (A company may want to serve predefined spoolers for
> things like image processing or video encoding)
> 
> * removed (broken) option --regexp-mount. If you want to map specific
> request to specific apps, use the internal routing subsystem.
> 
> * NEW FEATURE: added cpu affinity to FreeBSD systems
> 
> works like the Linux one, if you have 4 processors and want to map each of
> them to one of your 4 workers, use --cpu-affinity 1, while if you want to
> map 2 core for 2 processes use --cpu-affinity 2
> 
> * various solaris/illumos/openindiana fixes
> 
> * INTERNAL CHANGE: fully-shared requests structures
> 
> From now on, the master has access to the whole memory used for storing
> requests in each worker. That means (in the future) a whole new series of
> real-time statistics (no work has been done in that area as it requires
> dealing with tons of race conditions, and currently i have no idea on how
> to manage them)
> 
> * NEW INFRASTRUCTURE: modular clocks
> 
> uWSGI 1.3 can now use multiple clock sources (you can create new clock
> sources using plugins).
> 
> Currently there are 3 plugins available:
> 
> unix (uses time() and gettimeofday())
> realtime (uses clock_gettime with CLOCK_REALTIME)
> monotonic (uses clock_gettime with CLOCK_MONOTONIC)
> 
> the 'unix' one is the default.
> 
> Embedded-system developers can easily create new clocks optimized for
> their platforms. Check the simplicity of the monotonic plugin:
> 
> http://projects.unbit.it/uwsgi/browser/plugins/clock_monotonic/clock_monotonic.c
> 
> * added support for Lua tables in the lua plugin (by Aaron B.)
> 
> * fixed fastcgi support for chunks bigger than 64k
> 
> * improvements in the gevent graceful reload subsystem
> 
> * NEW PLUGIN: router_rewrite
> 
> A stripped-down version of Apache mod_rewrite, its main purpose is dealing
> with php apps requiring rewrite rules (commonly placed in .htaccess files)
> 
> * NEW PLUGIN: cheaper_busyness (by Łukasz Mierzwa)
> 
> This is an extremely advanced cheaper algorithm (cheaper algorithms are
> used for adaptive process spawning) targeted at big deployments where you
> want always the maximum possibile performances while having the minimum
> amount of required workers.
> 
> We are lucky, as Łukasz wrote documentation for it:
> 
> http://projects.unbit.it/uwsgi/wiki/CheaperBusyness
> 
> * NEW OPTIONS: --list-*
> 
> You can list features loaded in your instance using --list-XXX options,
> use --help to get the full list of them.
> 
> For example --list-plugins will print al of the available/loaded plugins
> as well --list-routers will print all of the available routers.
> 
> * json output in stats is now human readable
> 
> * improved weighted round robin in fastrouter
> 
> * errors on request body (like the client not seding the whole body) now
> reports the amount of datas received and the amount of expected datas.
> 
> * fixed linux sendfile() for files bigger than 2GB
> 
> 
> You can download it from:
> 
> http://projects.unbit.it/downloads/uwsgi-1.3-rc2.tar.gz
> 
> Thanks for testing it
> 
> -- 
> Roberto De Ioris
> http://unbit.it
> _______________________________________________
> uWSGI mailing list
> [email protected]
> http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

Reply via email to