Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 09ECE181F4 for ; Thu, 6 Aug 2015 14:25:07 +0000 (UTC) Received: (qmail 26908 invoked by uid 500); 6 Aug 2015 14:25:06 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 26869 invoked by uid 500); 6 Aug 2015 14:25:06 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 26857 invoked by uid 99); 6 Aug 2015 14:25:06 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Aug 2015 14:25:06 +0000 Date: Thu, 6 Aug 2015 14:25:06 +0000 (UTC) From: "T Jake Luciani (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (CASSANDRA-10001) Bug in encoding of sstables MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 T Jake Luciani created CASSANDRA-10001: ------------------------------------------ Summary: Bug in encoding of sstables Key: CASSANDRA-10001 URL: https://issues.apache.org/jira/browse/CASSANDRA-10001 Project: Cassandra Issue Type: Bug Reporter: T Jake Luciani Priority: Blocker Fix For: 3.0 beta 1 Fixing the compaction dtest I noticed we aren't encoding map data correctly in sstables. The following code fails from newly committed {{ compaction_test.py:TestCompaction_with_SizeTieredCompactionStrategy.large_compaction_warning_test}} {code} session.execute("CREATE TABLE large(userid text PRIMARY KEY, properties map) with compression = {}") for i in range(200): # ensures partition size larger than compaction_large_partition_warning_threshold_mb session.execute("UPDATE ks.large SET properties[%i] = '%s' WHERE userid = 'user'" % (i, get_random_word(strlen))) ret = session.execute("SELECT properties from ks.large where userid = 'user'") assert len(ret) == 1 self.assertEqual(200, len(ret[0][0].keys())) {code} The last assert is failing with only 91 keys. The large values are causing flushes vs staying in the memtable so the issue is somewhere in the serialization of collections in sstables. -- This message was sent by Atlassian JIRA (v6.3.4#6332)