@@ -4,8 +4,8 @@ const debug = require('debug')
4
4
const _ = require ( 'highland' )
5
5
const async = require ( 'async' )
6
6
7
- const log = debug ( 'engine' )
8
- log . error = debug ( 'engine:error' )
7
+ const log = debug ( 'bitswap: engine' )
8
+ log . error = debug ( 'bitswap: engine:error' )
9
9
10
10
const Message = require ( '../message' )
11
11
const Wantlist = require ( '../wantlist' )
@@ -29,7 +29,7 @@ module.exports = class Engine {
29
29
const msg = new Message ( false )
30
30
msg . addBlock ( env . block )
31
31
32
- log ( 'Sending block %s to %s' , env . peer . toHexString ( ) , env . block )
32
+ log ( 'Sending block to %s' , env . peer . toB58String ( ) , env . block . data . toString ( ) )
33
33
34
34
this . network . sendMessage ( env . peer , msg , ( err ) => {
35
35
if ( err ) {
@@ -55,6 +55,7 @@ module.exports = class Engine {
55
55
if ( ! nextTask ) return push ( null , _ . nil )
56
56
57
57
this . datastore . get ( nextTask . entry . key , ( err , block ) => {
58
+ log ( 'fetched: %s' , block . key . toString ( 'hex' ) , block . data . toString ( ) )
58
59
if ( err || ! block ) {
59
60
nextTask . done ( )
60
61
} else {
@@ -78,11 +79,11 @@ module.exports = class Engine {
78
79
}
79
80
80
81
wantlistForPeer ( peerId ) {
81
- if ( ! this . ledgerMap . has ( peerId ) ) {
82
+ if ( ! this . ledgerMap . has ( peerId . toB58String ( ) ) ) {
82
83
return new Map ( )
83
84
}
84
85
85
- return this . ledgerMap . get ( peerId ) . wantlist . sortedEntries ( )
86
+ return this . ledgerMap . get ( peerId . toB58String ( ) ) . wantlist . sortedEntries ( )
86
87
}
87
88
88
89
peers ( ) {
@@ -92,7 +93,7 @@ module.exports = class Engine {
92
93
// Handle incoming messages
93
94
messageReceived ( peerId , msg , cb ) {
94
95
if ( msg . empty ) {
95
- log ( 'received empty message from %s' , peerId )
96
+ log ( 'received empty message from %s' , peerId . toB58String ( ) )
96
97
}
97
98
98
99
const ledger = this . _findOrCreate ( peerId )
@@ -103,7 +104,7 @@ module.exports = class Engine {
103
104
}
104
105
105
106
this . _processBlocks ( msg . blocks , ledger )
106
-
107
+ log ( 'wantlist' , Array . from ( msg . wantlist . values ( ) ) )
107
108
async . eachSeries (
108
109
msg . wantlist . values ( ) ,
109
110
this . _processWantlist . bind ( this , ledger , peerId ) ,
@@ -133,19 +134,20 @@ module.exports = class Engine {
133
134
134
135
_processWantlist ( ledger , peerId , entry , cb ) {
135
136
if ( entry . cancel ) {
136
- log ( 'cancel %s' , entry . key )
137
+ log ( 'cancel %s' , entry . key . toString ( 'hex' ) )
137
138
ledger . cancelWant ( entry . key )
138
139
this . peerRequestQueue . remove ( entry . key , peerId )
139
140
async . setImmediate ( ( ) => cb ( ) )
140
141
} else {
141
- log ( 'wants %s - %s' , entry . key , entry . priority )
142
+ log ( 'wants %s - %s' , entry . key . toString ( 'hex' ) , entry . priority )
142
143
ledger . wants ( entry . key , entry . priority )
143
144
144
145
// If we already have the block, serve it
145
146
this . datastore . has ( entry . key , ( err , exists ) => {
146
147
if ( err ) {
147
- log ( 'failed existence check %s' , entry . key )
148
- } else {
148
+ log ( 'failed existence check %s' , entry . key . toString ( 'hex' ) )
149
+ } else if ( exists ) {
150
+ log ( 'has want %s' , entry . key . toString ( 'hex' ) )
149
151
this . peerRequestQueue . push ( entry . entry , peerId )
150
152
}
151
153
cb ( )
@@ -155,7 +157,7 @@ module.exports = class Engine {
155
157
156
158
_processBlocks ( blocks , ledger ) {
157
159
for ( let block of blocks . values ( ) ) {
158
- log ( 'got block %s %s bytes' , block . key , block . data . length )
160
+ log ( 'got block %s %s bytes' , block . key . toString ( 'hex' ) , block . data . length )
159
161
ledger . receivedBytes ( block . data . length )
160
162
161
163
this . receivedBlock ( block )
@@ -181,21 +183,21 @@ module.exports = class Engine {
181
183
}
182
184
183
185
peerDisconnected ( peerId ) {
184
- // if (this.ledgerMap.has(peerId)) {
185
- // this.ledgerMap.delete(peerId)
186
+ // if (this.ledgerMap.has(peerId.toB58String() )) {
187
+ // this.ledgerMap.delete(peerId.toB58String() )
186
188
// }
187
189
//
188
190
// TODO: figure out how to remove all other references
189
191
// in the peerrequestqueue
190
192
}
191
193
192
194
_findOrCreate ( peerId ) {
193
- if ( this . ledgerMap . has ( peerId ) ) {
194
- return this . ledgerMap . get ( peerId )
195
+ if ( this . ledgerMap . has ( peerId . toB58String ( ) ) ) {
196
+ return this . ledgerMap . get ( peerId . toB58String ( ) )
195
197
}
196
198
197
199
const l = new Ledger ( peerId )
198
- this . ledgerMap . set ( peerId , l )
200
+ this . ledgerMap . set ( peerId . toB58String ( ) , l )
199
201
200
202
return l
201
203
}
0 commit comments