[ 
https://issues.apache.org/jira/browse/CASSANDRA-486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis updated CASSANDRA-486:
-------------------------------------

    Attachment: 486.patch

patch that prevents empty keys from being inserted, which is the root cause of 
the problem

> StringTokenizer throws NoSuchElementException
> ---------------------------------------------
>
>                 Key: CASSANDRA-486
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-486
>             Project: Cassandra
>          Issue Type: Bug
>         Environment: [r...@db5 ~]# java -version
> java version "1.6.0"
> OpenJDK  Runtime Environment (build 1.6.0-b09)
> OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)
> [r...@db5 ~]# uname -a
> Linux db5.shermanstravelmedia.com 2.6.18-92.1.18.el5 #1 SMP Wed Nov 12 
> 09:19:49 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
>            Reporter: Eric Lubow
>            Priority: Minor
>             Fix For: 0.4
>
>         Attachments: 486.patch, master.txt, part_cas_load.pl
>
>
> ---- cf format ----
> <ColumnFamily CompareWith="UTF8Type" Name="Users" />
>     '[email protected]': {
>         email: '[email protected]',
>         person_id: '789',
>         send_dates_2009-09-30: '2245',
>         send_dates_2009-10-01: '2246',
>     },
> ---- Relevant log lines ----
> DEBUG - insertBlocking writing key [email protected] to 
> 3489...@[127.0.0.1:7000]
> DEBUG - Applying RowMutation(table='Mailings', 
> key='[email protected]', modifications=[ColumnFamily(Users 
> [email,person_id,send_dates_2009-09-30,])])
> DEBUG - RowMutation(table='Mailings', key='[email protected]', 
> modifications=[ColumnFamily(User/Users-46-Data.db   : 914432
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-48-Data.db   : 
> 949632
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-50-Data.db   : 
> 984832
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-52-Data.db   : 
> 1020032
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-54-Data.db   : 
> 1055232
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-56-Data.db   : 
> 1090432
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-58-Data.db   : 
> 1125632
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-60-Data.db   : 
> 1160832
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-62-Data.db   : 
> 1196032
> DEBUG - index size for bloom filter calc for file  : 
> /nfsassets/mailings/db_tests/cassandra/data/Mailings/Users-64-Data.db   : 
> 1231232
> DEBUG - Expected bloom filter size : 1231232
> ERROR - Error in executor futuretask
> java.util.concurrent.ExecutionException: java.util.NoSuchElementException
>         at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
>         at java.util.concurrent.FutureTask.get(FutureTask.java:111)
>         at 
> org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.logFutureExceptions(DebuggableThreadPoolExecutor.java:95)
>         at 
> org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor.afterExecute(DebuggableScheduledThreadPoolExecutor.java:50)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>         at java.lang.Thread.run(Thread.java:636)
> Caused by: java.util.NoSuchElementException
>         at java.util.StringTokenizer.nextToken(StringTokenizer.java:349)
>         at 
> org.apache.cassandra.dht.RandomPartitioner$1.compare(RandomPartitioner.java:56)
>         at 
> org.apache.cassandra.dht.RandomPartitioner$1.compare(RandomPartitioner.java:40)
>         at org.apache.cassandra.io.FileStruct.compareTo(FileStruct.java:80)
>         at org.apache.cassandra.io.FileStruct.compareTo(FileStruct.java:33)
>         at java.util.PriorityQueue.siftUpComparable(PriorityQueue.java:599)
>         at java.util.PriorityQueue.siftUp(PriorityQueue.java:591)
>         at java.util.PriorityQueue.offer(PriorityQueue.java:291)
>         at java.util.PriorityQueue.add(PriorityQueue.java:268)
>         at 
> org.apache.cassandra.db.ColumnFamilyStore.doFileCompaction(ColumnFamilyStore.java:1113)
>         at 
> org.apache.cassandra.db.ColumnFamilyStore.doCompaction(ColumnFamilyStore.java:689)
>         at 
> org.apache.cassandra.db.MinorCompactionManager$1.call(MinorCompactionManager.java:165)
>         at 
> org.apache.cassandra.db.MinorCompactionManager$1.call(MinorCompactionManager.java:162)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165)
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>         ... 2 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to