I'm also stuck at pushpool configuration. I read through the whole thread and the only solution to get rid of the error messages when connecting a miner is to have the rpc port (pushpool) pointing to the rpcport configured in bitcoin.conf.
However when i connect my miner I get error 500.
root@bully:/home/pushpool/sbin# ./pushpoold -E -F
[2011-08-29 22:03:43.948838] Listening on host :: port 8342
[2011-08-29 22:03:43.949297] Listening on host :: port 8341
[2011-08-29 22:03:43.949385] Listening on host :: port 8334
[2011-08-29 22:03:43.949513] Listening on host 127.0.0.1 port 8338
[2011-08-29 22:03:43.976058] initialized
[2011-08-29 22:03:46.627102] HTTP request failed: The requested URL returned error: 500
[2011-08-29 22:03:47.673728] HTTP request failed: The requested URL returned error: 500
[2011-08-29 22:03:48.752518] HTTP request failed: The requested URL returned error: 500
[2011-08-29 22:03:49.827042] HTTP request failed: The requested URL returned error: 500
[2011-08-29 22:03:50.948836] HTTP request failed: The requested URL returned error: 500
When I connect to port 8333 I get "empty reply from server":
* Empty reply from server
* Connection #0 to host 127.0.0.1 left intact
[2011-08-31 13:04:1.015652] HTTP request failed: Empty reply from server
JSON protocol request:
{"method": "getwork", "params": [], "id":2}
* Connection #0 seems to be dead!
* Closing connection #0
* About to connect() to 127.0.0.1 port 8333 (#0)
* Trying 127.0.0.1... * TCP_NODELAY set
* connected
* Connected to 127.0.0.1 (127.0.0.1) port 8333 (#0)
* Server auth using Basic with user 'hidden'
> POST / HTTP/1.1
Authorization: Basic Zm9jazphbG90dA==
Host: 127.0.0.1:8333
Accept: */*
Accept-Encoding: deflate, gzip
Content-type: application/json
Content-Length: 45
these are my config files:
bitcoin.confserver=1
rpcuser=hidden
rpcpassword=morehidden
rpcallowip=127.0.0.1
rpcport=8332
gen=0
server.json{
# network ports
"listen" : [
# binary protocol (default), port 8342
{ "port" : 8342 },
# HTTP JSON-RPC protocol, port 8341
#{ "port" : 8341, "protocol" : "http-json" },
{ "port" : 8341, "protocol" : "http-json" },
# HTTP JSON-RPC protocol, port 8344,
# with trusted proxy appserver.example.com forwarding
# requests to us
{ "port" : 8334, "protocol" : "http-json",
"proxy" : "my.external.ip.addr" },
# binary protocol, localhost-only port 8338
{ "host" : "127.0.0.1", "port" : 8338, "protocol" : "binary" }
],
# database settings
"database" : {
"engine" : "mysql",
"host" : "localhost",
"port" : 3306,
"name" : "bitcoin",
"username" : "blablablasabsa",
"password" : "blablablasabsa",
"sharelog" : true,
"stmt.pwdb":"SELECT `password` FROM `pool_worker` WHERE `username` = ?",
"stmt.sharelog":"INSERT INTO shares (rem_host, username, our_result, upstream_result, reason, sol$
},
# cache settings
#"memcached" : {
# "servers" : [
# { "host" : "127.0.0.1", "port" : 11211 }
# ]
#},
"pid" : "/tmp/pushpoold.pid",
# overrides local hostname detection
"forcehost" : "localhost.localdomain",
"log.requests" : "/tmp/request.log",
"log.shares" : "/tmp/shares.log",
# the server assumes longpolling (w/ SIGUSR1 called for each blk)
"longpoll.disable" : false,
# length of time to cache username/password credentials, in seconds
"auth.cred_cache.expire" : 75,
# RPC settings | Notice how this ISN'T port number 8332 this is becuase the same port number should not b$
"rpc.url" : "
http://127.0.0.1:8333/",
"rpc.user" : "hidden",
"rpc.pass" : "morehidden",
# rewrite returned 'target' to difficulty-1?
"rpc.target.rewrite" : true
}
some lines are cut by "$" because i copied/paste it from a text editor, but those shouldn't be interesting...
bitcoind runs as normal user, and I'm able to connect my miner directly to bitcoind (using rpcuser and rpcpass).
pushpool and bitcoind run on the same machine.
some more debug output:
root@bully:~# lsof -i :8332
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bitcoind 3248 user 14u IPv4 27381 0t0 TCP *:8332 (LISTEN)
root@bully:~# lsof -i :8333
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bitcoind 3248 user 6u IPv4 27375 0t0 TCP *:8333 (LISTEN)
mysql> show tables;
+-------------------+
| Tables_in_bitcoin |
+-------------------+
| pool_worker |
| shares |
+-------------------+
2 rows in set (0.00 sec)
mysql> describe pool_worker;
+------------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------------+-------------+------+-----+---------+----------------+
| id | int(25) | NO | PRI | NULL | auto_increment |
| associatedUserId | int(25) | NO | | NULL | |
| username | varchar(50) | YES | UNI | NULL | |
| password | varchar(60) | YES | | NULL | |
+------------------+-------------+------+-----+---------+----------------+
4 rows in set (0.25 sec)
mysql> select * from pool_worker;
+--------+------------------+----------+-------------+
| id | associatedUserId | username | password |
+--------+------------------+----------+-------------+
| 100000 | 100 | bully | mypassword |
+--------+------------------+----------+-------------+
1 row in set (0.02 sec)
the password is stored unencrypted in the table.
any help is appreciated :-/