Permalink
Browse files

Merge branch 'master' of github.com:chaoslawful/drizzle-nginx-module

  • Loading branch information...
2 parents d5980ca + dde8020 commit a962297b891f479f8762cfb43e0d02c465d3e47c @agentzh agentzh committed Jul 14, 2011
Showing with 47 additions and 8 deletions.
  1. +25 −0 Changes
  2. +14 −2 README
  3. +3 −3 config
  4. +1 −1 src/ngx_http_drizzle_processor.c
  5. +3 −1 src/ngx_http_drizzle_upstream.c
  6. +1 −1 util/build.sh
View
25 Changes
@@ -0,0 +1,25 @@
+v0.1.0 - 5 July 2011
+* now we require at least libdrizzle 1.0, which supports official mysql 5.5+ and is much more stable under load. thanks Taylor Weibley for pushing this. We no longer require patching libdrizzle any more.
+
+* fixed a compilation issue on Mac OS X: we should include drizzle.h prior to nginx headers, or we will not get the "bool" type properly installed on Mac OS X.
+
+* fixed the spots that trigger -Wunused-but-set-variable by gcc 4.6.
+
+* fixed the duplicate last chunk issue: we should not set the last_buf flag ourselves in drizzle_output.c because ngx_http_upstream already sends a last buf for us.
+
+* ported over Maxim Dounin's patch for ngx_http_upstream_keepalive connection pool fixes: we should have discarded stale read events for cached tcp connections in the pool.
+
+* implemented the new drizzle_status directive to provide connection pool status monitoring capability.
+
+* fixed a minor bug in the connection pool: we should resume the "name", "sockaddr", and "socklen" fields for the connection from the pool such that we can get more detailed error log messages with the "upstream: drizzle://ip.add.re.ss:port" bit.
+
+* implemented the $drizzle_thread_id variable which is automatically set when mysql/drizzle times out.
+
+* now we use the 2-clause bsd license.
+
+* report an error message when upstream name not found for drizzle_pass.
+
+* now we implemented the charset option for the "drizzle_server" diredctive which causes ngx_drizzle send "set names xxx" automatcially for every connection to that drizzle server.
+
+* added a lot of more documentation.
+
View
16 README
@@ -372,9 +372,21 @@ Installation
make libdrizzle-1.0
make install-libdrizzle-1.0
+ Ensure that you have the "python" command point to a python2 interpreter.
+ It's known that on recent Arch Linux distribution, "python" is linked to "python3"
+ by default, and while running "make libdrizzle-1.0" will yield
+
+ File "config/pandora-plugin", line 185
+ print "Dependency loop detected with %s" % plugin['name']
+ ^
+ SyntaxError: invalid syntax
+ make: *** [.plugin.scan] Error 1
+
+ You can fix this by pointing "python" to "python2".
+
* Download the latest version of the release tarball of this module from
- drizzle-nginx-module file list
- (<http://github.com/agentzh/drizzle-nginx-module/downloads>).
+ drizzle-nginx-module file list
+ (<http://github.com/agentzh/drizzle-nginx-module/downloads>).
* Grab the nginx source code from nginx.net (<http://nginx.net/>), for
example, the version 1.0.4 (see nginx compatibility), and then build
View
6 config
@@ -23,7 +23,7 @@ else
if [ $ngx_found = no ]; then
# FreeBSD, OpenBSD
ngx_feature="libdrizzle library in /usr/local/"
- ngx_feature_path="/usr/local/include"
+ ngx_feature_path="/usr/local/include/libdrizzle-1.0"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -ldrizzle"
else
@@ -35,7 +35,7 @@ else
if [ $ngx_found = no ]; then
# NetBSD
ngx_feature="libdrizzle library in /usr/pkg/"
- ngx_feature_path="/usr/pkg/include/"
+ ngx_feature_path="/usr/pkg/include/libdrizzle-1.0"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -ldrizzle"
else
@@ -47,7 +47,7 @@ else
if [ $ngx_found = no ]; then
# MacPorts
ngx_feature="libdrizzle library in /opt/local/"
- ngx_feature_path="/opt/local/include"
+ ngx_feature_path="/opt/local/include/libdrizzle-1.0"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -ldrizzle"
else
@@ -121,7 +121,7 @@ ngx_http_upstream_drizzle_connect(ngx_http_request_t *r,
{
drizzle_return_t ret;
- dd("drizzle connect");
+ dd("drizzle connect: user %s, password %s", dc->user, dc->password);
ret = drizzle_con_connect(dc);
@@ -666,6 +666,8 @@ ngx_http_upstream_drizzle_get_peer(ngx_peer_connection_t *pc, void *data)
ngx_memcpy(dc->password, peer->password.data, peer->password.len);
dc->password[peer->password.len] = '\0';
+ dd("user %s, password %s", dc->user, dc->password);
+
/* TODO add support for uds (unix domain socket) */
/* set host and port for the drizzle connection */
@@ -864,7 +866,7 @@ ngx_http_drizzle_output_filter(void *data, ngx_chain_t *in)
* upstream_next */
r->upstream->request_sent = 1;
- dd("process events returns %d", (int) ngx_http_drizzle_process_events(r));
+ ngx_http_drizzle_process_events(r);
/* discard the ret val from process events because
* we can only return NGX_AGAIN here to prevent
View
@@ -36,7 +36,6 @@ cd nginx-$version/ || exit 1
if [[ "$BUILD_CLEAN" -eq 1 || ! -f Makefile || "$root/config" -nt Makefile || "$root/util/build.sh" -nt Makefile ]]; then
#--with-cc-opt='-fast' \
./configure --prefix=$target \
- --with-ld-opt="-Wl,-rpath,/opt/drizzle/lib" \
--without-mail_pop3_module \
--without-mail_imap_module \
--without-mail_smtp_module \
@@ -53,6 +52,7 @@ if [[ "$BUILD_CLEAN" -eq 1 || ! -f Makefile || "$root/config" -nt Makefile || "$
--add-module=$root $opts \
--add-module=$root/../ndk-nginx-module \
--add-module=$root/../set-misc-nginx-module \
+ --add-module=$home/work/nginx_eval_module-1.0.1 \
--with-debug
#--with-cc-opt="-g3 -O0"
#--add-module=$root/../echo-nginx-module \

0 comments on commit a962297

Please sign in to comment.