aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts')
-rw-r--r--client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts15
1 files changed, 8 insertions, 7 deletions
diff --git a/client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts b/client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts
index 81378c277..74ae17704 100644
--- a/client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts
+++ b/client/src/assets/player/shared/webtorrent/peertube-chunk-store.ts
@@ -2,8 +2,9 @@
2// We use temporary IndexDB (all data are removed on destroy) to avoid RAM issues 2// We use temporary IndexDB (all data are removed on destroy) to avoid RAM issues
3// Thanks @santiagogil and @Feross 3// Thanks @santiagogil and @Feross
4 4
5import { EventEmitter } from 'events'
6import Dexie from 'dexie' 5import Dexie from 'dexie'
6import { EventEmitter } from 'events'
7import { logger } from '@root-helpers/logger'
7 8
8class ChunkDatabase extends Dexie { 9class ChunkDatabase extends Dexie {
9 chunks: Dexie.Table<{ id: number, buf: Buffer }, number> 10 chunks: Dexie.Table<{ id: number, buf: Buffer }, number>
@@ -104,7 +105,7 @@ export class PeertubeChunkStore extends EventEmitter {
104 return this.db.chunks.bulkPut(processing.map(p => ({ id: p.id, buf: p.buf }))) 105 return this.db.chunks.bulkPut(processing.map(p => ({ id: p.id, buf: p.buf })))
105 }) 106 })
106 } catch (err) { 107 } catch (err) {
107 console.log('Cannot bulk insert chunks. Store them in memory.', { err }) 108 logger.info('Cannot bulk insert chunks. Store them in memory.', err)
108 109
109 processing.forEach(p => { 110 processing.forEach(p => {
110 this.memoryChunks[p.id] = p.buf 111 this.memoryChunks[p.id] = p.buf
@@ -143,7 +144,7 @@ export class PeertubeChunkStore extends EventEmitter {
143 return cb(null, buf.slice(offset, len + offset)) 144 return cb(null, buf.slice(offset, len + offset))
144 }) 145 })
145 .catch(err => { 146 .catch(err => {
146 console.error(err) 147 logger.error(err)
147 return cb(err) 148 return cb(err)
148 }) 149 })
149 } 150 }
@@ -176,7 +177,7 @@ export class PeertubeChunkStore extends EventEmitter {
176 177
177 return cb() 178 return cb()
178 } catch (err) { 179 } catch (err) {
179 console.error('Cannot destroy peertube chunk store.', err) 180 logger.error('Cannot destroy peertube chunk store.', err)
180 return cb(err) 181 return cb(err)
181 } 182 }
182 } 183 }
@@ -204,7 +205,7 @@ export class PeertubeChunkStore extends EventEmitter {
204 databasesToDeleteInfo = await this.expirationDB.databases.where('expiration').below(now).toArray() 205 databasesToDeleteInfo = await this.expirationDB.databases.where('expiration').below(now).toArray()
205 }) 206 })
206 } catch (err) { 207 } catch (err) {
207 console.error('Cannot update expiration of fetch expired databases.', err) 208 logger.error('Cannot update expiration of fetch expired databases.', err)
208 } 209 }
209 210
210 for (const databaseToDeleteInfo of databasesToDeleteInfo) { 211 for (const databaseToDeleteInfo of databasesToDeleteInfo) {
@@ -214,7 +215,7 @@ export class PeertubeChunkStore extends EventEmitter {
214 215
215 private async dropDatabase (databaseName: string) { 216 private async dropDatabase (databaseName: string) {
216 const dbToDelete = new ChunkDatabase(databaseName) 217 const dbToDelete = new ChunkDatabase(databaseName)
217 console.log('Destroying IndexDB database %s.', databaseName) 218 logger.info(`Destroying IndexDB database ${databaseName}`)
218 219
219 try { 220 try {
220 await dbToDelete.delete() 221 await dbToDelete.delete()
@@ -223,7 +224,7 @@ export class PeertubeChunkStore extends EventEmitter {
223 return this.expirationDB.databases.where({ name: databaseName }).delete() 224 return this.expirationDB.databases.where({ name: databaseName }).delete()
224 }) 225 })
225 } catch (err) { 226 } catch (err) {
226 console.error('Cannot delete %s.', databaseName, err) 227 logger.error(`Cannot delete ${databaseName}.`, err)
227 } 228 }
228 } 229 }
229 230