On Fri, 12 Oct 2012 03:59:11 +0200
"Chang Long" changlon@gmail.com wrote:

On Thu, 11 Oct 2012 16:50:40 +0200, Sönke Ludwig wrote:

Am 10/11/2012 5:09 AM, schrieb Chang Long:

still use vibe.core.tcp, after I change it to vibe.core.net, and
fix a ref error, it throw this when I run it:

object.Exception@/opt/installs/d/vibe.d/source/vibe/core/drivers/libevent2_tcp.d(482):
Socket error: 32 ---------------- 5 app 0x0000000106b19404

Thanks for the hint, I've pushed a version with the compile errors
fixed and also improved the error message (fix is in vibe.d
master). The error message should be similar to "Failed to connect
to host xx on port yy".

I am sure I use the correct username and password, but it still throw
this:

object.Exception@/opt/installs/d/vibe.d/source/vibe/core/drivers/libevent2.d(210):
Failed to connect to host 127.0.0.1 on port 3306: 33 ----------------
5 app 0x000000010e8f0018 vibe.core.net.TcpConnection
vibe.core.net.connectTcp(immutable(char)[], ushort) + 68 6 app
0x000000010e90fe2f void mysql.connection.Connection.init_connection()

  • 111 7 app 0x000000010e91076d mysql.connection.Connection

mysql.connection.Connection.__ctor(immutable(char)[],
immutable(char)[], immutable(char)[], immutable(char)[], ushort,
uint) + 137 8 app 0x000000010e85d5c2 mysql.connection.Connection
mysql.db.MysqlDB.createConnection() + 82 9 app 0x000000010e85d7f8
vibe.core.connectionpool.LockedConnection!(mysql.connection.Connection).LockedConnection
vibe.core.connectionpool.ConnectionPool!(mysql.connection.Connection).ConnectionPool.lockConnection()

  • 512 10 app 0x000000010e85d55a

vibe.core.connectionpool.LockedConnection!(mysql.connection.Connection).LockedConnection
mysql.db.MysqlDB.lockConnection() + 110 11 app 0x000000010e8ef927
void index.showHome(vibe.http.server.HttpServerRequest,
vibe.http.server.HttpServerResponse) + 183 12 app 0x000000010e864978
void std.functional.DelegateFaker!(void
function(vibe.http.server.HttpServerRequest,
vibe.http.server.HttpServerResponse)).DelegateFaker.doIt(vibe.http.server.HttpServerRequest,
vibe.http.server.HttpServerResponse) + 104 13 app 0x000000010e921c0a
void
vibe.http.router.UrlRouter.handleRequest(vibe.http.server.HttpServerRequest,
vibe.http.server.HttpServerResponse) + 386 14 app 0x000000010e863373
bool vibe.http.server.handleRequest(vibe.stream.stream.Stream,
immutable(char)[], vibe.http.server.HTTPServerListener, ref
vibe.http.server.HttpServerSettings) + 4775 15 app 0x000000010e86200c
void
vibe.http.server.handleHttpConnection(vibe.core.net.TcpConnection,
vibe.http.server.HTTPServerListener) + 488 16 app 0x000000010e85f1a2
void
vibe.http.server.listenHttpPlain(vibe.http.server.HttpServerSettings,
void delegate(vibe.http.server.HttpServerRequest,
vibe.http.server.HttpServerResponse)).void
doListen(vibe.http.server.HttpServerSettings,
vibe.http.server.HTTPServerListener, immutable(char)[]).void
__lambda1(vibe.core.net.TcpConnection) + 54 17 app 0x000000010e8c9870
extern (C) nothrow void
vibe.core.drivers.libevent2_tcp.onConnect(int, short, void
).void
ClientTask.execute() + 668 18 app 0x000000010e93fe5d void
vibe.core.core.CoreTask.run() + 129 19 app 0x000000010e954c79 void
core.thread.Fiber.run() + 49 20 app 0x000000010e954821
fiber_entryPoint + 97 21 ??? 0x0000000000000000 0x0 + 0

my server is: ./mysqld Ver 5.5.27 for osx10.8 on i386 (Source
distribution)

Just a shot in the dark, but is it possible that your database could be
using an old-style MySQL password? If you're not sure, try re-setting
your password in the DB.

Somewhere around 4.0-ish MySQL introduced a new, longer, more secure
password hash system, but kept supporting the old for compatibility.
The mysqln library only supports the new style. I ran into that problem
once.