From 9a1b1f0230727c061185f3c34f925a0633e0e0bf Mon Sep 17 00:00:00 2001 From: Adam Holmberg Date: Fri, 14 Nov 2014 12:04:52 -0600 Subject: [PATCH] Fix routing key encoding for compound primary keys - make component size big-endian - include component string size in format string --- cassandra/query.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cassandra/query.py b/cassandra/query.py index 11161afe..791b0069 100644 --- a/cassandra/query.py +++ b/cassandra/query.py @@ -507,7 +507,8 @@ class BoundStatement(Statement): components = [] for statement_index in routing_indexes: val = self.values[statement_index] - components.append(struct.pack("HsB", len(val), val, 0)) + l = len(val) + components.append(struct.pack(">H%dsB" % l, l, val, 0)) self._routing_key = b"".join(components)