I took a brief look at the code - it's looking very reasonable. You can replace any construct like

try {
  Thread.sleep(1000);
} catch (InterruptedException e) {
  throw new RuntimeException(e);
}

which is quite verbose, just with Uninterruptibles.sleepUninterruptably(1000, TimeUnit.MILLISECONDS); (and of course static imports help too)

I think for this concept to take off, you'd need a website and to recruit someone to help you market it. Pool operators won't reach out to you.

I still find it perhaps more elegant to just boost the connectivity of the existing network with bitcoind changes, but this can help for now.



On Thu, Nov 7, 2013 at 12:35 AM, Matt Corallo <bitcoin-list@bluematt.me> wrote:
No, the transactions relayed are piped through a bitcoind first (ie
fully verified by a bitcoind). For blocks, for which the timing needs to
be tighter, bitcoinj does SPV-validation. Though it is possible to
create a block which passes SPV validation but causes a DoS score, doing
so would cost a miner a full block's worth of profits, which they are
fairly unlikely to do. In any case, if it every becomes a problem, its
not hard to adapt addnode to allow higher DoS scores for individual nodes.

Matt

On 11/06/13 07:25, Tier Nolan wrote:
>
>
>
> On Wed, Nov 6, 2013 at 5:50 AM, Matt Corallo <bitcoin-list@bluematt.me
> <mailto:bitcoin-list@bluematt.me>> wrote:
>
>     Relay node details:
>      * The relay nodes do some data verification to prevent DoS, but in
>     order to keep relay fast, they do not fully verify the data they are
>     relaying, thus YOU SHOULD NEVER mine a block building on top of a
>     relayed block without fully checking it with your own bitcoin validator
>     (as you would any other block relayed from the P2P network).
>
>
> Wouldn't this cause disconnects due to misbehavior?
>
> A standard node connecting to a relay node would receive
> blocks/transactions that are not valid in some way and then disconnect.
>
> Have you looked though the official client to find what things are
> considered signs that a peer is hostile?  I assume things like double
> spending checks count as misbehavior and can't be quickly checked by a
> relay node.
>
> Maybe another bit could be assigned in the services field as "relay".
> This means that the node doesn't do any checking.
>
> Connects to relay nodes could be command line/config file only.  Peers
> wouldn't connect to them.

------------------------------------------------------------------------------
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk
_______________________________________________
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development