You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ca...@codespot.com on 2012/01/10 23:37:04 UTC
[cassandra-node] 14 new revisions pushed by gdusbabek@gmail.com on
2012-01-10 22:36 GMT
14 new revisions:
Revision: 540c9eef63fd
Author: Christoph Tavan <de...@tavan.de>
Date: Mon Jan 9 03:12:55 2012
Log: Apply and cleanup patch from issue 11 for improved marshelling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=540c9eef63fd
Revision: 7bf16ed0a880
Author: Christoph Tavan <de...@tavan.de>
Date: Mon Jan 9 03:12:55 2012
Log: Apply and cleanup patch from issue 11 for improved marshelling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=7bf16ed0a880
Revision: 48e13848c2f6
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:26:32 2012
Log: Merge branch 'marshelling' of
github.com:ctavan/node-cassandra-client ...
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=48e13848c2f6
Revision: ef5ffe67216e
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:33:54 2012
Log: Add Int32Type to decoder
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=ef5ffe67216e
Revision: d470ea4982bd
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:46:51 2012
Log: Complete the list of available datatypes
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=d470ea4982bd
Revision: 447cf8bff0b1
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:59:51 2012
Log: Handle date/timestamp type correctly
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=447cf8bff0b1
Revision: 89dbbe58375f
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 09:12:50 2012
Log: Handle date/timestamp type correctly (still ugly type
conversions...)
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=89dbbe58375f
Revision: 8d0a5e4fdea5
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 09:59:53 2012
Log: Also detect and handle UUIDType
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=8d0a5e4fdea5
Revision: ee486c982a03
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 10:22:31 2012
Log: Write the decoder converters more elegantly and add support for
Lexica...
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=ee486c982a03
Revision: 1d82cdfc0f59
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 10:23:42 2012
Log: Remove unnecessary else statement
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=1d82cdfc0f59
Revision: a01d417c5dbc
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 10:46:55 2012
Log: Pass arguments explicitly to fallback converters
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=a01d417c5dbc
Revision: 4dd16e77972d
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 11:15:10 2012
Log: Fix BigInterger converters
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=4dd16e77972d
Revision: 96e1e1caff10
Author: gdusbabek <gd...@gmail.com>
Date: Tue Jan 10 14:22:57 2012
Log: add Christoph to contributors.
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=96e1e1caff10
Revision: 608373a73168
Author: Gary Dusbabek <gd...@gmail.com>
Date: Tue Jan 10 14:35:19 2012
Log: update CHANGES re marshalling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=608373a73168
==============================================================================
Revision: 540c9eef63fd
Author: Christoph Tavan <de...@tavan.de>
Date: Mon Jan 9 03:12:55 2012
Log: Apply and cleanup patch from issue 11 for improved marshelling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=540c9eef63fd
Modified:
/lib/decoder.js
/lib/driver.js
=======================================
--- /lib/decoder.js Mon Jan 9 11:56:16 2012
+++ /lib/decoder.js Mon Jan 9 03:12:55 2012
@@ -123,8 +123,12 @@
} else {
return bytesToNum(bytes);
}
- } else if (className == AbstractTypes.AsciiType || className ==
AbstractTypes.UTF8Type) {
- return bytes; // already as a string!
+ } else if (className == AbstractTypes.AsciiType){
+ // decoding buffer to ascii
+ return bytes.toString('ascii');
+ } else if (className == AbstractTypes.UTF8Type) {
+ // decoding buffer to utf8
+ return bytes.toString('utf8');
} else if (className == AbstractTypes.BytesType) {
return bytes;
} else if (className == AbstractTypes.IntegerType) {
@@ -134,6 +138,7 @@
return bytesToNum(bytes);
}
} else if (className == AbstractTypes.TimeUUIDType) {
+ // A uuid object. Use .toString() to stringify
return UUID.fromBytes(bytes);
} else {
return bytes;
=======================================
--- /lib/driver.js Mon Jan 9 10:46:41 2012
+++ /lib/driver.js Mon Jan 9 03:12:55 2012
@@ -157,7 +157,8 @@
var count = 0;
for (var i = 0; i < row.columns.length; i++) {
- if (row.columns[i].value) {
+ if (row.columns[i].value && row.columns[i].name != 'KEY') {
+ // avoid 'KEY' in column[name:value] as it is neat. Also it breaks
specificValidators.
var decodedName = decoder.decode(row.columns[i].name, 'comparator');
var decodedValue = decoder.decode(row.columns[i].value, 'validator',
row.columns[i].name);
this.cols[count] = {
==============================================================================
Revision: 7bf16ed0a880
Author: Christoph Tavan <de...@tavan.de>
Date: Mon Jan 9 03:12:55 2012
Log: Apply and cleanup patch from issue 11 for improved marshelling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=7bf16ed0a880
Modified:
/lib/decoder.js
/lib/driver.js
=======================================
--- /lib/decoder.js Fri Nov 11 07:49:04 2011
+++ /lib/decoder.js Mon Jan 9 03:12:55 2012
@@ -124,8 +124,12 @@
} else {
return bytesToNum(bytes);
}
- } else if (className == AbstractTypes.AsciiType || className ==
AbstractTypes.UTF8Type) {
- return bytes; // already as a string!
+ } else if (className == AbstractTypes.AsciiType){
+ // decoding buffer to ascii
+ return bytes.toString('ascii');
+ } else if (className == AbstractTypes.UTF8Type) {
+ // decoding buffer to utf8
+ return bytes.toString('utf8');
} else if (className == AbstractTypes.BytesType) {
return bytes;
} else if (className == AbstractTypes.IntegerType) {
@@ -135,6 +139,7 @@
return bytesToNum(bytes);
}
} else if (className == AbstractTypes.TimeUUIDType) {
+ // A uuid object. Use .toString() to stringify
return UUID.fromBytes(bytes);
} else {
return bytes;
=======================================
--- /lib/driver.js Sun Dec 25 16:31:45 2011
+++ /lib/driver.js Mon Jan 9 03:12:55 2012
@@ -157,7 +157,8 @@
var count = 0;
for (var i = 0; i < row.columns.length; i++) {
- if (row.columns[i].value) {
+ if (row.columns[i].value && row.columns[i].name != 'KEY') {
+ // avoid 'KEY' in column[name:value] as it is neat. Also it breaks
specificValidators.
var decodedName = decoder.decode(row.columns[i].name, 'comparator');
var decodedValue = decoder.decode(row.columns[i].value, 'validator',
row.columns[i].name);
this.cols[count] = {
==============================================================================
Revision: 48e13848c2f6
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:26:32 2012
Log: Merge branch 'marshelling' of
github.com:ctavan/node-cassandra-client into marshelling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=48e13848c2f6
==============================================================================
Revision: ef5ffe67216e
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:33:54 2012
Log: Add Int32Type to decoder
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=ef5ffe67216e
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Mon Jan 9 03:12:55 2012
+++ /lib/decoder.js Tue Jan 10 08:33:54 2012
@@ -72,6 +72,7 @@
AsciiType: 'org.apache.cassandra.db.marshal.AsciiType',
UTF8Type: 'org.apache.cassandra.db.marshal.UTF8Type',
IntegerType: 'org.apache.cassandra.db.marshal.IntegerType',
+ Int32Type: 'org.apache.cassandra.db.marshal.Int32Type',
TimeUUIDType: 'org.apache.cassandra.db.marshal.TimeUUIDType',
CounterColumnType: 'org.apache.cassandra.db.marshal.CounterColumnType'
};
@@ -131,6 +132,8 @@
return bytes.toString('utf8');
} else if (className == AbstractTypes.BytesType) {
return bytes;
+ } else if (className == AbstractTypes.Int32Type) {
+ return bytesToNum(bytes);
} else if (className == AbstractTypes.IntegerType) {
if (this.options.use_bigints) {
return bytesToBigInt(bytes);
==============================================================================
Revision: d470ea4982bd
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:46:51 2012
Log: Complete the list of available datatypes
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=d470ea4982bd
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 08:33:54 2012
+++ /lib/decoder.js Tue Jan 10 08:46:51 2012
@@ -65,16 +65,28 @@
};
-// These are the cassandra types I'm currently dealing with.
+// Cassandra datatypes according to
+// http://www.datastax.com/docs/1.0/ddl/column_family
+// Those commented out are not correctly dealt with yet and will appear as
+// Buffer's in resultsets.
var AbstractTypes = {
- LongType: 'org.apache.cassandra.db.marshal.LongType',
- BytesType: 'org.apache.cassandra.db.marshal.BytesType',
- AsciiType: 'org.apache.cassandra.db.marshal.AsciiType',
- UTF8Type: 'org.apache.cassandra.db.marshal.UTF8Type',
- IntegerType: 'org.apache.cassandra.db.marshal.IntegerType',
- Int32Type: 'org.apache.cassandra.db.marshal.Int32Type',
+ BytesType: 'org.apache.cassandra.db.marshal.BytesType',
+ AsciiType: 'org.apache.cassandra.db.marshal.AsciiType',
+ UTF8Type: 'org.apache.cassandra.db.marshal.UTF8Type',
+ IntegerType: 'org.apache.cassandra.db.marshal.IntegerType',
+ LongType: 'org.apache.cassandra.db.marshal.LongType',
+ Int32Type: 'org.apache.cassandra.db.marshal.Int32Type',
+ //UUIDType: 'org.apache.cassandra.db.marshal.UUIDType',
+ //LexicalUUIDType: 'org.apache.cassandra.db.marshal.LexicalUUIDType',
TimeUUIDType: 'org.apache.cassandra.db.marshal.TimeUUIDType',
- CounterColumnType: 'org.apache.cassandra.db.marshal.CounterColumnType'
+ //DateType: 'org.apache.cassandra.db.marshal.DateType',
+ //BooleanType: 'org.apache.cassandra.db.marshal.BooleanType',
+ //FloatType: 'org.apache.cassandra.db.marshal.FloatType',
+ //DoubleType: 'org.apache.cassandra.db.marshal.DoubleType',
+ //DecimalType: 'org.apache.cassandra.db.marshal.DecimalType',
+ CounterColumnType: 'org.apache.cassandra.db.marshal.CounterColumnType',
+ //CompositeType: 'org.apache.cassandra.db.marshal.CompositeType',
+
//DynamicCompositeType: 'org.apache.cassandra.db.marshal.DynamicCompositeType',
};
/**
==============================================================================
Revision: 447cf8bff0b1
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 08:59:51 2012
Log: Handle date/timestamp type correctly
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=447cf8bff0b1
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 08:46:51 2012
+++ /lib/decoder.js Tue Jan 10 08:59:51 2012
@@ -79,7 +79,7 @@
//UUIDType: 'org.apache.cassandra.db.marshal.UUIDType',
//LexicalUUIDType: 'org.apache.cassandra.db.marshal.LexicalUUIDType',
TimeUUIDType: 'org.apache.cassandra.db.marshal.TimeUUIDType',
- //DateType: 'org.apache.cassandra.db.marshal.DateType',
+ DateType: 'org.apache.cassandra.db.marshal.DateType',
//BooleanType: 'org.apache.cassandra.db.marshal.BooleanType',
//FloatType: 'org.apache.cassandra.db.marshal.FloatType',
//DoubleType: 'org.apache.cassandra.db.marshal.DoubleType',
@@ -144,6 +144,8 @@
return bytes.toString('utf8');
} else if (className == AbstractTypes.BytesType) {
return bytes;
+ } else if (className == AbstractTypes.DateType) {
+ return new Date(parseInt(bytes.toString('hex'), 16));
} else if (className == AbstractTypes.Int32Type) {
return bytesToNum(bytes);
} else if (className == AbstractTypes.IntegerType) {
==============================================================================
Revision: 89dbbe58375f
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 09:12:50 2012
Log: Handle date/timestamp type correctly (still ugly type
conversions...)
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=89dbbe58375f
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 08:59:51 2012
+++ /lib/decoder.js Tue Jan 10 09:12:50 2012
@@ -145,7 +145,7 @@
} else if (className == AbstractTypes.BytesType) {
return bytes;
} else if (className == AbstractTypes.DateType) {
- return new Date(parseInt(bytes.toString('hex'), 16));
+ return new Date(+bytesToBigInt(bytes).toString());
} else if (className == AbstractTypes.Int32Type) {
return bytesToNum(bytes);
} else if (className == AbstractTypes.IntegerType) {
==============================================================================
Revision: 8d0a5e4fdea5
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 09:59:53 2012
Log: Also detect and handle UUIDType
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=8d0a5e4fdea5
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 09:12:50 2012
+++ /lib/decoder.js Tue Jan 10 09:59:53 2012
@@ -76,7 +76,7 @@
IntegerType: 'org.apache.cassandra.db.marshal.IntegerType',
LongType: 'org.apache.cassandra.db.marshal.LongType',
Int32Type: 'org.apache.cassandra.db.marshal.Int32Type',
- //UUIDType: 'org.apache.cassandra.db.marshal.UUIDType',
+ UUIDType: 'org.apache.cassandra.db.marshal.UUIDType',
//LexicalUUIDType: 'org.apache.cassandra.db.marshal.LexicalUUIDType',
TimeUUIDType: 'org.apache.cassandra.db.marshal.TimeUUIDType',
DateType: 'org.apache.cassandra.db.marshal.DateType',
@@ -154,7 +154,7 @@
} else {
return bytesToNum(bytes);
}
- } else if (className == AbstractTypes.TimeUUIDType) {
+ } else if (className == AbstractTypes.UUIDType || className ==
AbstractTypes.TimeUUIDType) {
// A uuid object. Use .toString() to stringify
return UUID.fromBytes(bytes);
} else {
==============================================================================
Revision: ee486c982a03
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 10:22:31 2012
Log: Write the decoder converters more elegantly and add support for
LexicalUUIDType as well
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=ee486c982a03
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 09:59:53 2012
+++ /lib/decoder.js Tue Jan 10 10:22:31 2012
@@ -77,7 +77,7 @@
LongType: 'org.apache.cassandra.db.marshal.LongType',
Int32Type: 'org.apache.cassandra.db.marshal.Int32Type',
UUIDType: 'org.apache.cassandra.db.marshal.UUIDType',
- //LexicalUUIDType: 'org.apache.cassandra.db.marshal.LexicalUUIDType',
+ LexicalUUIDType: 'org.apache.cassandra.db.marshal.LexicalUUIDType',
TimeUUIDType: 'org.apache.cassandra.db.marshal.TimeUUIDType',
DateType: 'org.apache.cassandra.db.marshal.DateType',
//BooleanType: 'org.apache.cassandra.db.marshal.BooleanType',
@@ -89,6 +89,51 @@
//DynamicCompositeType: 'org.apache.cassandra.db.marshal.DynamicCompositeType',
};
+// These functions convert the raw bytes that cassandra gives us to
meaningful
+// JS datat ypes.
+var converters = {
+ 'org.apache.cassandra.db.marshal.BytesType': function(bytes) {
+ return bytes;
+ },
+ 'org.apache.cassandra.db.marshal.AsciiType': function(bytes) {
+ return bytes.toString('ascii');
+ },
+ 'org.apache.cassandra.db.marshal.UTF8Type': function(bytes) {
+ return bytes.toString('utf8');
+ },
+ 'org.apache.cassandra.db.marshal.DateType': function(bytes) {
+ return new Date(+bytesToBigInt(bytes).toString());
+ },
+ 'org.apache.cassandra.db.marshal.Int32Type': function(bytes) {
+ return bytesToNum(bytes);
+ },
+ 'org.apache.cassandra.db.marshal.IntegerType': function(bytes, options) {
+ if (options.use_bigints) {
+ return bytesToBigInt(bytes);
+ }
+ return bytesToNum(bytes);
+ },
+ 'org.apache.cassandra.db.marshal.LongType': function(bytes, options) {
+ if (options.use_bigints) {
+ return bytesToBigLong(bytes);
+ }
+ bytesToNum(bytes);
+ },
+ 'org.apache.cassandra.db.marshal.CounterColumnType': function(bytes,
options) {
+ return this['org.apache.cassandra.db.marshal.LongType'].apply(this,
arguments);
+ },
+ 'org.apache.cassandra.db.marshal.UUIDType': function(bytes) {
+ // A uuid object. Use .toString() to stringify
+ return UUID.fromBytes(bytes);
+ },
+ 'org.apache.cassandra.db.marshal.TimeUUIDType': function(bytes) {
+ return this['org.apache.cassandra.db.marshal.UUIDType'].apply(this,
arguments);
+ },
+ 'org.apache.cassandra.db.marshal.LexicalUUIDType': function(bytes) {
+ return this['org.apache.cassandra.db.marshal.UUIDType'].apply(this,
arguments);
+ }
+};
+
/**
* validators are a hash currently created in the Connection constructor.
keys in the hash are: key, comparator,
* defaultValidator, specificValidator. They all map to a value in
AbstractTypes, except specificValidator which
@@ -129,36 +174,8 @@
className = AbstractTypes.BytesType;
}
- // perform the conversion.
- if (className == AbstractTypes.LongType || className ==
AbstractTypes.CounterColumnType) {
- if (this.options.use_bigints) {
- return bytesToBigLong(bytes);
- } else {
- return bytesToNum(bytes);
- }
- } else if (className == AbstractTypes.AsciiType){
- // decoding buffer to ascii
- return bytes.toString('ascii');
- } else if (className == AbstractTypes.UTF8Type) {
- // decoding buffer to utf8
- return bytes.toString('utf8');
- } else if (className == AbstractTypes.BytesType) {
- return bytes;
- } else if (className == AbstractTypes.DateType) {
- return new Date(+bytesToBigInt(bytes).toString());
- } else if (className == AbstractTypes.Int32Type) {
- return bytesToNum(bytes);
- } else if (className == AbstractTypes.IntegerType) {
- if (this.options.use_bigints) {
- return bytesToBigInt(bytes);
- } else {
- return bytesToNum(bytes);
- }
- } else if (className == AbstractTypes.UUIDType || className ==
AbstractTypes.TimeUUIDType) {
- // A uuid object. Use .toString() to stringify
- return UUID.fromBytes(bytes);
- } else {
- return bytes;
- }
-
+ if (!(className in converters)) {
+ return converters[className](bytes, this.options);
+ }
+ return bytes;
};
==============================================================================
Revision: 1d82cdfc0f59
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 10:23:42 2012
Log: Remove unnecessary else statement
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=1d82cdfc0f59
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 10:22:31 2012
+++ /lib/decoder.js Tue Jan 10 10:23:42 2012
@@ -59,10 +59,8 @@
// zero is a tricky bastard. new BigInteger([0]) != new BigInteger('0').
wtf?
if (bytes.length === 1 && bytes[0] === 0) {
return new BigInteger('0');
- } else {
- return bytesToBigInt(bytes);
- }
-
+ }
+ return bytesToBigInt(bytes);
};
// Cassandra datatypes according to
==============================================================================
Revision: a01d417c5dbc
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 10:46:55 2012
Log: Pass arguments explicitly to fallback converters
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=a01d417c5dbc
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 10:23:42 2012
+++ /lib/decoder.js Tue Jan 10 10:46:55 2012
@@ -118,17 +118,17 @@
bytesToNum(bytes);
},
'org.apache.cassandra.db.marshal.CounterColumnType': function(bytes,
options) {
- return this['org.apache.cassandra.db.marshal.LongType'].apply(this,
arguments);
+ return converters['org.apache.cassandra.db.marshal.LongType'](bytes,
options);
},
'org.apache.cassandra.db.marshal.UUIDType': function(bytes) {
// A uuid object. Use .toString() to stringify
return UUID.fromBytes(bytes);
},
'org.apache.cassandra.db.marshal.TimeUUIDType': function(bytes) {
- return this['org.apache.cassandra.db.marshal.UUIDType'].apply(this,
arguments);
+ return converters['org.apache.cassandra.db.marshal.UUIDType'](bytes);
},
'org.apache.cassandra.db.marshal.LexicalUUIDType': function(bytes) {
- return this['org.apache.cassandra.db.marshal.UUIDType'].apply(this,
arguments);
+ return converters['org.apache.cassandra.db.marshal.UUIDType'](bytes);
}
};
==============================================================================
Revision: 4dd16e77972d
Author: Christoph Tavan <de...@tavan.de>
Date: Tue Jan 10 11:15:10 2012
Log: Fix BigInterger converters
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=4dd16e77972d
Modified:
/lib/decoder.js
=======================================
--- /lib/decoder.js Tue Jan 10 10:46:55 2012
+++ /lib/decoder.js Tue Jan 10 11:15:10 2012
@@ -105,20 +105,20 @@
'org.apache.cassandra.db.marshal.Int32Type': function(bytes) {
return bytesToNum(bytes);
},
- 'org.apache.cassandra.db.marshal.IntegerType': function(bytes, options) {
- if (options.use_bigints) {
+ 'org.apache.cassandra.db.marshal.IntegerType': function(bytes,
useBigints) {
+ if (useBigints) {
return bytesToBigInt(bytes);
}
return bytesToNum(bytes);
},
- 'org.apache.cassandra.db.marshal.LongType': function(bytes, options) {
- if (options.use_bigints) {
+ 'org.apache.cassandra.db.marshal.LongType': function(bytes, useBigints) {
+ if (useBigints) {
return bytesToBigLong(bytes);
}
- bytesToNum(bytes);
+ return bytesToNum(bytes);
},
- 'org.apache.cassandra.db.marshal.CounterColumnType': function(bytes,
options) {
- return converters['org.apache.cassandra.db.marshal.LongType'](bytes,
options);
+ 'org.apache.cassandra.db.marshal.CounterColumnType': function(bytes,
useBigints) {
+ return converters['org.apache.cassandra.db.marshal.LongType'](bytes,
useBigints);
},
'org.apache.cassandra.db.marshal.UUIDType': function(bytes) {
// A uuid object. Use .toString() to stringify
@@ -172,8 +172,8 @@
className = AbstractTypes.BytesType;
}
- if (!(className in converters)) {
- return converters[className](bytes, this.options);
+ if (className in converters) {
+ return converters[className](bytes, this.options.use_bigints);
}
return bytes;
};
==============================================================================
Revision: 96e1e1caff10
Author: gdusbabek <gd...@gmail.com>
Date: Tue Jan 10 14:22:57 2012
Log: add Christoph to contributors.
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=96e1e1caff10
Modified:
/package.json
=======================================
--- /package.json Mon Jan 9 13:59:12 2012
+++ /package.json Tue Jan 10 14:22:57 2012
@@ -4,7 +4,8 @@
"Eric Evans <ee...@acunu.com>",
"Gary Dusbabek <gd...@gmail.com>",
"Tomaž Muraus <to...@tomaz.me>",
- "Patrick Negri <pa...@iugu.com.br>"
+ "Patrick Negri <pa...@iugu.com.br>",
+ "Christoph Tavan <de...@tavan.de>"
],
"name": "cassandra-client",
"description": "Node.js CQL driver for Apache Cassandra",
==============================================================================
Revision: 608373a73168
Author: Gary Dusbabek <gd...@gmail.com>
Date: Tue Jan 10 14:35:19 2012
Log: update CHANGES re marshalling
http://code.google.com/a/apache-extras.org/p/cassandra-node/source/detail?r=608373a73168
Modified:
/CHANGES
=======================================
--- /CHANGES Mon Jan 9 13:59:12 2012
+++ /CHANGES Tue Jan 10 14:35:19 2012
@@ -1,3 +1,5 @@
+- Add more cassandra types to the decoder [Christoph Tavan]
+
Changes with cassandra-client 0.6.2:
- Fix scope leaks.