bitcoinjs / indexd

An external bitcoind index management service module
ISC License
53 stars 23 forks source link

Problem with blockIdByTransactionId? #41

Closed asoltys closed 6 years ago

asoltys commented 6 years ago

Just hitting some of the API endpoints in private-bitcoin to see what happens and ran into this when I visited /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block:

  express:router dispatching GET /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +1m                                                                                                   
  express:router query  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                                         
  express:router expressInit  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                                   
  express:router corsMiddleware  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                                
  express:router router  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +1ms                                                                                                        
  express:router dispatching GET /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                                  
  express:router <anonymous>  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                                   
  express:router <anonymous>  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                                   
  express:router trim prefix (/1) from url /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms                                                                                        
  express:router router /1 : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms              
  express:router dispatching GET /t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms            
  express:router <anonymous>  : /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block +0ms
  api Error: Expected Object, got String "eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489"                
  api     at typeforce (/home/adam/indexd/node_modules/typeforce/index.js:198:11)                                                                                                                                  
  api     at LevelDOWN.get (/home/adam/indexd/dbwrapper.js:25:3)                                                           
  api     at TxIndex.heightBy (/home/adam/indexd/indexes/tx.js:65:6)                                     
  api     at Indexd.blockIdByTransactionId (/home/adam/indexd/index.js:260:19)                                             
  api     at router.get (/home/adam/private-bitcoin/routes/1.js:122:14)                                                    
  api     at Layer.handle [as handle_request] (/home/adam/private-bitcoin/node_modules/express/lib/router/layer.js:95:5)
  api     at next (/home/adam/private-bitcoin/node_modules/express/lib/router/route.js:137:13)                             
  api     at hexWare (/home/adam/private-bitcoin/routes/1.js:106:5)                                                                                                                                                
  api     at Layer.handle [as handle_request] (/home/adam/private-bitcoin/node_modules/express/lib/router/layer.js:95:5)   
  api     at next (/home/adam/private-bitcoin/node_modules/express/lib/router/route.js:137:13) +0ms      
  api GET /1/t/eb160e6c981d266a5174151dee96feed60b58e69a6b49167820f32e741a24489/block 400 Bad Request 3ms 0->98B +3ms  
dcousens commented 6 years ago

Fixed in https://github.com/bitcoinjs/indexd/commit/d4557e91b9f30bc21de86eabd82db6f4378edaeb

I will [eventually] make time to unit test this library, it is simply a matter of time allocation @asoltys :+1: