Skip to content
Snippets Groups Projects
Commit c6b890a7 authored by Deucе's avatar Deucе :ok_hand_tone4:
Browse files

Revert back to using vbuf for write buffering.

While it would be nice to serialize it and do a single write, there's
no native functions to create binary values from numbers in the
Synchronet JS object model at this time.
parent 225cab9c
No related branches found
No related tags found
No related merge requests found
......@@ -70,9 +70,7 @@ function RecordFile(filename, definition)
this.fields=definition;
this.RecordLength=getRecordLength(this.fields);
// A vbuf of a record length prevents more than one record from being in the buffer.
// Nope, it doesn't... use zero an force unbuffered.
// This will be super-slow until/unless some serialization is added.
if(!this.file.open(file_exists(this.file.name)?"rb+":"wb+",true,0)) {
if(!this.file.open(file_exists(this.file.name)?"rb+":"wb+",true,this.RecordLength)) {
return(null);
}
Object.defineProperty(this, 'length', {
......@@ -99,8 +97,6 @@ RecordFileRecord.prototype.flushRead = function(keeplocked)
var flushed = false;
var tmp;
// With buffer size of zero, this isn't needed
return;
locked = (this.parent.locks.indexOf(this.Record) !== -1);
if (keeplocked === undefined) {
if (locked) {
......@@ -119,7 +115,7 @@ RecordFileRecord.prototype.flushRead = function(keeplocked)
this.unLock();
}
this.parent.file.close();
if (!this.parent.file.open('rb+', true, 0)) {
if (!this.parent.file.open('rb+', true, this.parent.RecordLength)) {
throw new Error('Unable to re-open '+this.parent.file.name);
}
if (locked) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment