forked from apache/cassandra
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES.txt
5689 lines (5428 loc) · 321 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
3.10
* Tune compaction thread count via nodetool (CASSANDRA-12248)
* Add +=/-= shortcut syntax for update queries (CASSANDRA-12232)
* Include repair session IDs in repair start message (CASSANDRA-12532)
* Add a blocking task to Index, run before joining the ring (CASSANDRA-12039)
* Fix NPE when using CQLSSTableWriter (CASSANDRA-12667)
* Support optional backpressure strategies at the coordinator (CASSANDRA-9318)
* Make randompartitioner work with new vnode allocation (CASSANDRA-12647)
* Fix cassandra-stress graphing (CASSANDRA-12237)
* Allow filtering on partition key columns for queries without secondary indexes (CASSANDRA-11031)
* Fix Cassandra Stress reporting thread model and precision (CASSANDRA-12585)
* Add JMH benchmarks.jar (CASSANDRA-12586)
* Add row offset support to SASI (CASSANDRA-11990)
* Cleanup uses of AlterTableStatementColumn (CASSANDRA-12567)
* Add keep-alive to streaming (CASSANDRA-11841)
* Tracing payload is passed through newSession(..) (CASSANDRA-11706)
* avoid deleting non existing sstable files and improve related log messages (CASSANDRA-12261)
* json/yaml output format for nodetool compactionhistory (CASSANDRA-12486)
* Retry all internode messages once after a connection is
closed and reopened (CASSANDRA-12192)
* Add support to rebuild from targeted replica (CASSANDRA-9875)
* Add sequence distribution type to cassandra stress (CASSANDRA-12490)
* "SELECT * FROM foo LIMIT ;" does not error out (CASSANDRA-12154)
* Define executeLocally() at the ReadQuery Level (CASSANDRA-12474)
* Extend read/write failure messages with a map of replica addresses
to error codes in the v5 native protocol (CASSANDRA-12311)
* Fix rebuild of SASI indexes with existing index files (CASSANDRA-12374)
* Let DatabaseDescriptor not implicitly startup services (CASSANDRA-9054, 12550)
* Fix clustering indexes in presence of static columns in SASI (CASSANDRA-12378)
* Fix queries on columns with reversed type on SASI indexes (CASSANDRA-12223)
* Added slow query log (CASSANDRA-12403)
* Count full coordinated request against timeout (CASSANDRA-12256)
* Allow TTL with null value on insert and update (CASSANDRA-12216)
* Make decommission operation resumable (CASSANDRA-12008)
* Add support to one-way targeted repair (CASSANDRA-9876)
* Remove clientutil jar (CASSANDRA-11635)
* Fix compaction throughput throttle (CASSANDRA-12366)
* Delay releasing Memtable memory on flush until PostFlush has finished running (CASSANDRA-12358)
* Cassandra stress should dump all setting on startup (CASSANDRA-11914)
* Make it possible to compact a given token range (CASSANDRA-10643)
* Allow updating DynamicEndpointSnitch properties via JMX (CASSANDRA-12179)
* Collect metrics on queries by consistency level (CASSANDRA-7384)
* Add support for GROUP BY to SELECT statement (CASSANDRA-10707)
* Deprecate memtable_cleanup_threshold and update default for memtable_flush_writers (CASSANDRA-12228)
* Upgrade to OHC 0.4.4 (CASSANDRA-12133)
* Add version command to cassandra-stress (CASSANDRA-12258)
* Create compaction-stress tool (CASSANDRA-11844)
* Garbage-collecting compaction operation and schema option (CASSANDRA-7019)
* Add beta protocol flag for v5 native protocol (CASSANDRA-12142)
* Support filtering on non-PRIMARY KEY columns in the CREATE
MATERIALIZED VIEW statement's WHERE clause (CASSANDRA-10368)
* Unify STDOUT and SYSTEMLOG logback format (CASSANDRA-12004)
* COPY FROM should raise error for non-existing input files (CASSANDRA-12174)
* Faster write path (CASSANDRA-12269)
* Option to leave omitted columns in INSERT JSON unset (CASSANDRA-11424)
* Support json/yaml output in nodetool tpstats (CASSANDRA-12035)
* Expose metrics for successful/failed authentication attempts (CASSANDRA-10635)
* Prepend snapshot name with "truncated" or "dropped" when a snapshot
is taken before truncating or dropping a table (CASSANDRA-12178)
* Optimize RestrictionSet (CASSANDRA-12153)
* cqlsh does not automatically downgrade CQL version (CASSANDRA-12150)
* Omit (de)serialization of state variable in UDAs (CASSANDRA-9613)
* Create a system table to expose prepared statements (CASSANDRA-8831)
* Reuse DataOutputBuffer from ColumnIndex (CASSANDRA-11970)
* Remove DatabaseDescriptor dependency from SegmentedFile (CASSANDRA-11580)
* Add supplied username to authentication error messages (CASSANDRA-12076)
* Remove pre-startup check for open JMX port (CASSANDRA-12074)
* Remove compaction Severity from DynamicEndpointSnitch (CASSANDRA-11738)
* Restore resumable hints delivery (CASSANDRA-11960)
Merged from 3.0:
* Fix potentially incomplete non-frozen UDT values when querying with the
full primary key specified (CASSANDRA-12605)
* Make sure repaired tombstones are dropped when only_purge_repaired_tombstones is enabled (CASSANDRA-12703)
* Skip writing MV mutations to commitlog on mutation.applyUnsafe() (CASSANDRA-11670)
* Establish consistent distinction between non-existing partition and NULL value for LWTs on static columns (CASSANDRA-12060)
* Extend ColumnIdentifier.internedInstances key to include the type that generated the byte buffer (CASSANDRA-12516)
* Handle composite prefixes with final EOC=0 as in 2.x and refactor LegacyLayout.decodeBound (CASSANDRA-12423)
* select_distinct_with_deletions_test failing on non-vnode environments (CASSANDRA-11126)
* Stack Overflow returned to queries while upgrading (CASSANDRA-12527)
* Fix legacy regex for temporary files from 2.2 (CASSANDRA-12565)
* Add option to state current gc_grace_seconds to tools/bin/sstablemetadata (CASSANDRA-12208)
* Fix file system race condition that may cause LogAwareFileLister to fail to classify files (CASSANDRA-11889)
* Fix file handle leaks due to simultaneous compaction/repair and
listing snapshots, calculating snapshot sizes, or making schema
changes (CASSANDRA-11594)
* Fix nodetool repair exits with 0 for some errors (CASSANDRA-12508)
* Do not shut down BatchlogManager twice during drain (CASSANDRA-12504)
* Disk failure policy should not be invoked on out of space (CASSANDRA-12385)
* Calculate last compacted key on startup (CASSANDRA-6216)
* Add schema to snapshot manifest, add USING TIMESTAMP clause to ALTER TABLE statements (CASSANDRA-7190)
* If CF has no clustering columns, any row cache is full partition cache (CASSANDRA-12499)
Merged from 2.2:
* Make Collections deserialization more robust (CASSANDRA-12618)
* Fix exceptions when enabling gossip on nodes that haven't joined the ring (CASSANDRA-12253)
* Fix authentication problem when invoking clqsh copy from a SOURCE command (CASSANDRA-12642)
* Decrement pending range calculator jobs counter in finally block
* cqlshlib tests: increase default execute timeout (CASSANDRA-12481)
* Forward writes to replacement node when replace_address != broadcast_address (CASSANDRA-8523)
* Fail repair on non-existing table (CASSANDRA-12279)
* Enable repair -pr and -local together (fix regression of CASSANDRA-7450) (CASSANDRA-12522)
3.8, 3.9
* Fix value skipping with counter columns (CASSANDRA-11726)
* Fix nodetool tablestats miss SSTable count (CASSANDRA-12205)
* Fixed flacky SSTablesIteratedTest (CASSANDRA-12282)
* Fixed flacky SSTableRewriterTest: check file counts before calling validateCFS (CASSANDRA-12348)
* cqlsh: Fix handling of $$-escaped strings (CASSANDRA-12189)
* Fix SSL JMX requiring truststore containing server cert (CASSANDRA-12109)
* RTE from new CDC column breaks in flight queries (CASSANDRA-12236)
* Fix hdr logging for single operation workloads (CASSANDRA-12145)
* Fix SASI PREFIX search in CONTAINS mode with partial terms (CASSANDRA-12073)
* Increase size of flushExecutor thread pool (CASSANDRA-12071)
* Partial revert of CASSANDRA-11971, cannot recycle buffer in SP.sendMessagesToNonlocalDC (CASSANDRA-11950)
* Upgrade netty to 4.0.39 (CASSANDRA-12032, CASSANDRA-12034)
* Improve details in compaction log message (CASSANDRA-12080)
* Allow unset values in CQLSSTableWriter (CASSANDRA-11911)
* Chunk cache to request compressor-compatible buffers if pool space is exhausted (CASSANDRA-11993)
* Remove DatabaseDescriptor dependencies from SequentialWriter (CASSANDRA-11579)
* Move skip_stop_words filter before stemming (CASSANDRA-12078)
* Support seek() in EncryptedFileSegmentInputStream (CASSANDRA-11957)
* SSTable tools mishandling LocalPartitioner (CASSANDRA-12002)
* When SEPWorker assigned work, set thread name to match pool (CASSANDRA-11966)
* Add cross-DC latency metrics (CASSANDRA-11596)
* Allow terms in selection clause (CASSANDRA-10783)
* Add bind variables to trace (CASSANDRA-11719)
* Switch counter shards' clock to timestamps (CASSANDRA-9811)
* Introduce HdrHistogram and response/service/wait separation to stress tool (CASSANDRA-11853)
* entry-weighers in QueryProcessor should respect partitionKeyBindIndexes field (CASSANDRA-11718)
* Support older ant versions (CASSANDRA-11807)
* Estimate compressed on disk size when deciding if sstable size limit reached (CASSANDRA-11623)
* cassandra-stress profiles should support case sensitive schemas (CASSANDRA-11546)
* Remove DatabaseDescriptor dependency from FileUtils (CASSANDRA-11578)
* Faster streaming (CASSANDRA-9766)
* Add prepared query parameter to trace for "Execute CQL3 prepared query" session (CASSANDRA-11425)
* Add repaired percentage metric (CASSANDRA-11503)
* Add Change-Data-Capture (CASSANDRA-8844)
Merged from 3.0:
* Fix paging for 2.x to 3.x upgrades (CASSANDRA-11195)
* Fix clean interval not sent to commit log for empty memtable flush (CASSANDRA-12436)
* Fix potential resource leak in RMIServerSocketFactoryImpl (CASSANDRA-12331)
* Make sure compaction stats are updated when compaction is interrupted (CASSANDRA-12100)
* Change commitlog and sstables to track dirty and clean intervals (CASSANDRA-11828)
* NullPointerException during compaction on table with static columns (CASSANDRA-12336)
* Fixed ConcurrentModificationException when reading metrics in GraphiteReporter (CASSANDRA-11823)
* Fix upgrade of super columns on thrift (CASSANDRA-12335)
* Fixed flacky BlacklistingCompactionsTest, switched to fixed size types and increased corruption size (CASSANDRA-12359)
* Rerun ReplicationAwareTokenAllocatorTest on failure to avoid flakiness (CASSANDRA-12277)
* Exception when computing read-repair for range tombstones (CASSANDRA-12263)
* Lost counter writes in compact table and static columns (CASSANDRA-12219)
* AssertionError with MVs on updating a row that isn't indexed due to a null value (CASSANDRA-12247)
* Disable RR and speculative retry with EACH_QUORUM reads (CASSANDRA-11980)
* Add option to override compaction space check (CASSANDRA-12180)
* Faster startup by only scanning each directory for temporary files once (CASSANDRA-12114)
* Respond with v1/v2 protocol header when responding to driver that attempts
to connect with too low of a protocol version (CASSANDRA-11464)
* NullPointerExpception when reading/compacting table (CASSANDRA-11988)
* Fix problem with undeleteable rows on upgrade to new sstable format (CASSANDRA-12144)
* Fix potential bad messaging service message for paged range reads
within mixed-version 3.x clusters (CASSANDRA-12249)
* Fix paging logic for deleted partitions with static columns (CASSANDRA-12107)
* Wait until the message is being send to decide which serializer must be used (CASSANDRA-11393)
* Fix migration of static thrift column names with non-text comparators (CASSANDRA-12147)
* Fix upgrading sparse tables that are incorrectly marked as dense (CASSANDRA-11315)
* Fix reverse queries ignoring range tombstones (CASSANDRA-11733)
* Avoid potential race when rebuilding CFMetaData (CASSANDRA-12098)
* Avoid missing sstables when getting the canonical sstables (CASSANDRA-11996)
* Always select the live sstables when getting sstables in bounds (CASSANDRA-11944)
* Fix column ordering of results with static columns for Thrift requests in
a mixed 2.x/3.x cluster, also fix potential non-resolved duplication of
those static columns in query results (CASSANDRA-12123)
* Avoid digest mismatch with empty but static rows (CASSANDRA-12090)
* Fix EOF exception when altering column type (CASSANDRA-11820)
* Fix potential race in schema during new table creation (CASSANDRA-12083)
* cqlsh: fix error handling in rare COPY FROM failure scenario (CASSANDRA-12070)
* Disable autocompaction during drain (CASSANDRA-11878)
* Add a metrics timer to MemtablePool and use it to track time spent blocked on memory in MemtableAllocator (CASSANDRA-11327)
* Fix upgrading schema with super columns with non-text subcomparators (CASSANDRA-12023)
* Add TimeWindowCompactionStrategy (CASSANDRA-9666)
* Fix JsonTransformer output of partition with deletion info (CASSANDRA-12418)
* Fix NPE in SSTableLoader when specifying partial directory path (CASSANDRA-12609)
Merged from 2.2:
* Add local address entry in PropertyFileSnitch (CASSANDRA-11332)
* cqlsh copy: fix missing counter values (CASSANDRA-12476)
* Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
* Add Sigar to classes included in clientutil.jar (CASSANDRA-11635)
* Add decay to histograms and timers used for metrics (CASSANDRA-11752)
* Fix hanging stream session (CASSANDRA-10992)
* Fix INSERT JSON, fromJson() support of smallint, tinyint types (CASSANDRA-12371)
* Restore JVM metric export for metric reporters (CASSANDRA-12312)
* Release sstables of failed stream sessions only when outgoing transfers are finished (CASSANDRA-11345)
* Wait for tracing events before returning response and query at same consistency level client side (CASSANDRA-11465)
* cqlsh copyutil should get host metadata by connected address (CASSANDRA-11979)
* Fixed cqlshlib.test.remove_test_db (CASSANDRA-12214)
* Synchronize ThriftServer::stop() (CASSANDRA-12105)
* Use dedicated thread for JMX notifications (CASSANDRA-12146)
* Improve streaming synchronization and fault tolerance (CASSANDRA-11414)
* MemoryUtil.getShort() should return an unsigned short also for architectures not supporting unaligned memory accesses (CASSANDRA-11973)
* Allow nodetool info to run with readonly JMX access (CASSANDRA-11755)
* Validate bloom_filter_fp_chance against lowest supported
value when the table is created (CASSANDRA-11920)
* Don't send erroneous NEW_NODE notifications on restart (CASSANDRA-11038)
* StorageService shutdown hook should use a volatile variable (CASSANDRA-11984)
Merged from 2.1:
* Add system property to set the max number of native transport requests in queue (CASSANDRA-11363)
* Fix queries with empty ByteBuffer values in clustering column restrictions (CASSANDRA-12127)
* Disable passing control to post-flush after flush failure to prevent data loss (CASSANDRA-11828)
* Allow STCS-in-L0 compactions to reduce scope with LCS (CASSANDRA-12040)
* cannot use cql since upgrading python to 2.7.11+ (CASSANDRA-11850)
* Fix filtering on clustering columns when 2i is used (CASSANDRA-11907)
* Avoid stalling paxos when the paxos state expires (CASSANDRA-12043)
* Remove finished incoming streaming connections from MessagingService (CASSANDRA-11854)
* Don't try to get sstables for non-repairing column families (CASSANDRA-12077)
* Avoid marking too many sstables as repaired (CASSANDRA-11696)
* Prevent select statements with clustering key > 64k (CASSANDRA-11882)
* Fix clock skew corrupting other nodes with paxos (CASSANDRA-11991)
* Remove distinction between non-existing static columns and existing but null in LWTs (CASSANDRA-9842)
* Cache local ranges when calculating repair neighbors (CASSANDRA-11934)
* Allow LWT operation on static column with only partition keys (CASSANDRA-10532)
* Create interval tree over canonical sstables to avoid missing sstables during streaming (CASSANDRA-11886)
* cqlsh COPY FROM: shutdown parent cluster after forking, to avoid corrupting SSL connections (CASSANDRA-11749)
3.7
* Support multiple folders for user defined compaction tasks (CASSANDRA-11765)
* Fix race in CompactionStrategyManager's pause/resume (CASSANDRA-11922)
Merged from 3.0:
* Fix legacy serialization of Thrift-generated non-compound range tombstones
when communicating with 2.x nodes (CASSANDRA-11930)
* Fix Directories instantiations where CFS.initialDirectories should be used (CASSANDRA-11849)
* Avoid referencing DatabaseDescriptor in AbstractType (CASSANDRA-11912)
* Don't use static dataDirectories field in Directories instances (CASSANDRA-11647)
* Fix sstables not being protected from removal during index build (CASSANDRA-11905)
* cqlsh: Suppress stack trace from Read/WriteFailures (CASSANDRA-11032)
* Remove unneeded code to repair index summaries that have
been improperly down-sampled (CASSANDRA-11127)
* Avoid WriteTimeoutExceptions during commit log replay due to materialized
view lock contention (CASSANDRA-11891)
* Prevent OOM failures on SSTable corruption, improve tests for corruption detection (CASSANDRA-9530)
* Use CFS.initialDirectories when clearing snapshots (CASSANDRA-11705)
* Allow compaction strategies to disable early open (CASSANDRA-11754)
* Refactor Materialized View code (CASSANDRA-11475)
* Update Java Driver (CASSANDRA-11615)
Merged from 2.2:
* Persist local metadata earlier in startup sequence (CASSANDRA-11742)
* cqlsh: fix tab completion for case-sensitive identifiers (CASSANDRA-11664)
* Avoid showing estimated key as -1 in tablestats (CASSANDRA-11587)
* Fix possible race condition in CommitLog.recover (CASSANDRA-11743)
* Enable client encryption in sstableloader with cli options (CASSANDRA-11708)
* Possible memory leak in NIODataInputStream (CASSANDRA-11867)
* Add seconds to cqlsh tracing session duration (CASSANDRA-11753)
* Fix commit log replay after out-of-order flush completion (CASSANDRA-9669)
* Prohibit Reversed Counter type as part of the PK (CASSANDRA-9395)
* cqlsh: correctly handle non-ascii chars in error messages (CASSANDRA-11626)
Merged from 2.1:
* Run CommitLog tests with different compression settings (CASSANDRA-9039)
* cqlsh: apply current keyspace to source command (CASSANDRA-11152)
* Clear out parent repair session if repair coordinator dies (CASSANDRA-11824)
* Set default streaming_socket_timeout_in_ms to 24 hours (CASSANDRA-11840)
* Do not consider local node a valid source during replace (CASSANDRA-11848)
* Add message dropped tasks to nodetool netstats (CASSANDRA-11855)
* Avoid holding SSTableReaders for duration of incremental repair (CASSANDRA-11739)
3.6
* Correctly migrate schema for frozen UDTs during 2.x -> 3.x upgrades
(does not affect any released versions) (CASSANDRA-11613)
* Allow server startup if JMX is configured directly (CASSANDRA-11725)
* Prevent direct memory OOM on buffer pool allocations (CASSANDRA-11710)
* Enhanced Compaction Logging (CASSANDRA-10805)
* Make prepared statement cache size configurable (CASSANDRA-11555)
* Integrated JMX authentication and authorization (CASSANDRA-10091)
* Add units to stress ouput (CASSANDRA-11352)
* Fix PER PARTITION LIMIT for single and multi partitions queries (CASSANDRA-11603)
* Add uncompressed chunk cache for RandomAccessReader (CASSANDRA-5863)
* Clarify ClusteringPrefix hierarchy (CASSANDRA-11213)
* Always perform collision check before joining ring (CASSANDRA-10134)
* SSTableWriter output discrepancy (CASSANDRA-11646)
* Fix potential timeout in NativeTransportService.testConcurrentDestroys (CASSANDRA-10756)
* Support large partitions on the 3.0 sstable format (CASSANDRA-11206,11763)
* Add support to rebuild from specific range (CASSANDRA-10406)
* Optimize the overlapping lookup by calculating all the
bounds in advance (CASSANDRA-11571)
* Support json/yaml output in nodetool tablestats (CASSANDRA-5977)
* (stress) Add datacenter option to -node options (CASSANDRA-11591)
* Fix handling of empty slices (CASSANDRA-11513)
* Make number of cores used by cqlsh COPY visible to testing code (CASSANDRA-11437)
* Allow filtering on clustering columns for queries without secondary indexes (CASSANDRA-11310)
* Refactor Restriction hierarchy (CASSANDRA-11354)
* Eliminate allocations in R/W path (CASSANDRA-11421)
* Update Netty to 4.0.36 (CASSANDRA-11567)
* Fix PER PARTITION LIMIT for queries requiring post-query ordering (CASSANDRA-11556)
* Allow instantiation of UDTs and tuples in UDFs (CASSANDRA-10818)
* Support UDT in CQLSSTableWriter (CASSANDRA-10624)
* Support for non-frozen user-defined types, updating
individual fields of user-defined types (CASSANDRA-7423)
* Make LZ4 compression level configurable (CASSANDRA-11051)
* Allow per-partition LIMIT clause in CQL (CASSANDRA-7017)
* Make custom filtering more extensible with UserExpression (CASSANDRA-11295)
* Improve field-checking and error reporting in cassandra.yaml (CASSANDRA-10649)
* Print CAS stats in nodetool proxyhistograms (CASSANDRA-11507)
* More user friendly error when providing an invalid token to nodetool (CASSANDRA-9348)
* Add static column support to SASI index (CASSANDRA-11183)
* Support EQ/PREFIX queries in SASI CONTAINS mode without tokenization (CASSANDRA-11434)
* Support LIKE operator in prepared statements (CASSANDRA-11456)
* Add a command to see if a Materialized View has finished building (CASSANDRA-9967)
* Log endpoint and port associated with streaming operation (CASSANDRA-8777)
* Print sensible units for all log messages (CASSANDRA-9692)
* Upgrade Netty to version 4.0.34 (CASSANDRA-11096)
* Break the CQL grammar into separate Parser and Lexer (CASSANDRA-11372)
* Compress only inter-dc traffic by default (CASSANDRA-8888)
* Add metrics to track write amplification (CASSANDRA-11420)
* cassandra-stress: cannot handle "value-less" tables (CASSANDRA-7739)
* Add/drop multiple columns in one ALTER TABLE statement (CASSANDRA-10411)
* Add require_endpoint_verification opt for internode encryption (CASSANDRA-9220)
* Add auto import java.util for UDF code block (CASSANDRA-11392)
* Add --hex-format option to nodetool getsstables (CASSANDRA-11337)
* sstablemetadata should print sstable min/max token (CASSANDRA-7159)
* Do not wrap CassandraException in TriggerExecutor (CASSANDRA-9421)
* COPY TO should have higher double precision (CASSANDRA-11255)
* Stress should exit with non-zero status after failure (CASSANDRA-10340)
* Add client to cqlsh SHOW_SESSION (CASSANDRA-8958)
* Fix nodetool tablestats keyspace level metrics (CASSANDRA-11226)
* Store repair options in parent_repair_history (CASSANDRA-11244)
* Print current leveling in sstableofflinerelevel (CASSANDRA-9588)
* Change repair message for keyspaces with RF 1 (CASSANDRA-11203)
* Remove hard-coded SSL cipher suites and protocols (CASSANDRA-10508)
* Improve concurrency in CompactionStrategyManager (CASSANDRA-10099)
* (cqlsh) interpret CQL type for formatting blobs (CASSANDRA-11274)
* Refuse to start and print txn log information in case of disk
corruption (CASSANDRA-10112)
* Resolve some eclipse-warnings (CASSANDRA-11086)
* (cqlsh) Show static columns in a different color (CASSANDRA-11059)
* Allow to remove TTLs on table with default_time_to_live (CASSANDRA-11207)
Merged from 3.0:
* Disallow creating view with a static column (CASSANDRA-11602)
* Reduce the amount of object allocations caused by the getFunctions methods (CASSANDRA-11593)
* Potential error replaying commitlog with smallint/tinyint/date/time types (CASSANDRA-11618)
* Fix queries with filtering on counter columns (CASSANDRA-11629)
* Improve tombstone printing in sstabledump (CASSANDRA-11655)
* Fix paging for range queries where all clustering columns are specified (CASSANDRA-11669)
* Don't require HEAP_NEW_SIZE to be set when using G1 (CASSANDRA-11600)
* Fix sstabledump not showing cells after tombstone marker (CASSANDRA-11654)
* Ignore all LocalStrategy keyspaces for streaming and other related
operations (CASSANDRA-11627)
* Ensure columnfilter covers indexed columns for thrift 2i queries (CASSANDRA-11523)
* Only open one sstable scanner per sstable (CASSANDRA-11412)
* Option to specify ProtocolVersion in cassandra-stress (CASSANDRA-11410)
* ArithmeticException in avgFunctionForDecimal (CASSANDRA-11485)
* LogAwareFileLister should only use OLD sstable files in current folder to determine disk consistency (CASSANDRA-11470)
* Notify indexers of expired rows during compaction (CASSANDRA-11329)
* Properly respond with ProtocolError when a v1/v2 native protocol
header is received (CASSANDRA-11464)
* Validate that num_tokens and initial_token are consistent with one another (CASSANDRA-10120)
Merged from 2.2:
* Exit JVM if JMX server fails to startup (CASSANDRA-11540)
* Produce a heap dump when exiting on OOM (CASSANDRA-9861)
* Restore ability to filter on clustering columns when using a 2i (CASSANDRA-11510)
* JSON datetime formatting needs timezone (CASSANDRA-11137)
* Fix is_dense recalculation for Thrift-updated tables (CASSANDRA-11502)
* Remove unnescessary file existence check during anticompaction (CASSANDRA-11660)
* Add missing files to debian packages (CASSANDRA-11642)
* Avoid calling Iterables::concat in loops during ModificationStatement::getFunctions (CASSANDRA-11621)
* cqlsh: COPY FROM should use regular inserts for single statement batches and
report errors correctly if workers processes crash on initialization (CASSANDRA-11474)
* Always close cluster with connection in CqlRecordWriter (CASSANDRA-11553)
* Allow only DISTINCT queries with partition keys restrictions (CASSANDRA-11339)
* CqlConfigHelper no longer requires both a keystore and truststore to work (CASSANDRA-11532)
* Make deprecated repair methods backward-compatible with previous notification service (CASSANDRA-11430)
* IncomingStreamingConnection version check message wrong (CASSANDRA-11462)
Merged from 2.1:
* Support mlockall on IBM POWER arch (CASSANDRA-11576)
* Add option to disable use of severity in DynamicEndpointSnitch (CASSANDRA-11737)
* cqlsh COPY FROM fails for null values with non-prepared statements (CASSANDRA-11631)
* Make cython optional in pylib/setup.py (CASSANDRA-11630)
* Change order of directory searching for cassandra.in.sh to favor local one (CASSANDRA-11628)
* cqlsh COPY FROM fails with []{} chars in UDT/tuple fields/values (CASSANDRA-11633)
* clqsh: COPY FROM throws TypeError with Cython extensions enabled (CASSANDRA-11574)
* cqlsh: COPY FROM ignores NULL values in conversion (CASSANDRA-11549)
* Validate levels when building LeveledScanner to avoid overlaps with orphaned sstables (CASSANDRA-9935)
3.5
* StaticTokenTreeBuilder should respect posibility of duplicate tokens (CASSANDRA-11525)
* Correctly fix potential assertion error during compaction (CASSANDRA-11353)
* Avoid index segment stitching in RAM which lead to OOM on big SSTable files (CASSANDRA-11383)
* Fix clustering and row filters for LIKE queries on clustering columns (CASSANDRA-11397)
Merged from 3.0:
* Fix rare NPE on schema upgrade from 2.x to 3.x (CASSANDRA-10943)
* Improve backoff policy for cqlsh COPY FROM (CASSANDRA-11320)
* Improve IF NOT EXISTS check in CREATE INDEX (CASSANDRA-11131)
* Upgrade ohc to 0.4.3
* Enable SO_REUSEADDR for JMX RMI server sockets (CASSANDRA-11093)
* Allocate merkletrees with the correct size (CASSANDRA-11390)
* Support streaming pre-3.0 sstables (CASSANDRA-10990)
* Add backpressure to compressed or encrypted commit log (CASSANDRA-10971)
* SSTableExport supports secondary index tables (CASSANDRA-11330)
* Fix sstabledump to include missing info in debug output (CASSANDRA-11321)
* Establish and implement canonical bulk reading workload(s) (CASSANDRA-10331)
* Fix paging for IN queries on tables without clustering columns (CASSANDRA-11208)
* Remove recursive call from CompositesSearcher (CASSANDRA-11304)
* Fix filtering on non-primary key columns for queries without index (CASSANDRA-6377)
* Fix sstableloader fail when using materialized view (CASSANDRA-11275)
Merged from 2.2:
* DatabaseDescriptor should log stacktrace in case of Eception during seed provider creation (CASSANDRA-11312)
* Use canonical path for directory in SSTable descriptor (CASSANDRA-10587)
* Add cassandra-stress keystore option (CASSANDRA-9325)
* Dont mark sstables as repairing with sub range repairs (CASSANDRA-11451)
* Notify when sstables change after cancelling compaction (CASSANDRA-11373)
* cqlsh: COPY FROM should check that explicit column names are valid (CASSANDRA-11333)
* Add -Dcassandra.start_gossip startup option (CASSANDRA-10809)
* Fix UTF8Validator.validate() for modified UTF-8 (CASSANDRA-10748)
* Clarify that now() function is calculated on the coordinator node in CQL documentation (CASSANDRA-10900)
* Fix bloom filter sizing with LCS (CASSANDRA-11344)
* (cqlsh) Fix error when result is 0 rows with EXPAND ON (CASSANDRA-11092)
* Add missing newline at end of bin/cqlsh (CASSANDRA-11325)
* Unresolved hostname leads to replace being ignored (CASSANDRA-11210)
* Only log yaml config once, at startup (CASSANDRA-11217)
* Reference leak with parallel repairs on the same table (CASSANDRA-11215)
Merged from 2.1:
* Add a -j parameter to scrub/cleanup/upgradesstables to state how
many threads to use (CASSANDRA-11179)
* COPY FROM on large datasets: fix progress report and debug performance (CASSANDRA-11053)
* InvalidateKeys should have a weak ref to key cache (CASSANDRA-11176)
3.4
* (cqlsh) add cqlshrc option to always connect using ssl (CASSANDRA-10458)
* Cleanup a few resource warnings (CASSANDRA-11085)
* Allow custom tracing implementations (CASSANDRA-10392)
* Extract LoaderOptions to be able to be used from outside (CASSANDRA-10637)
* fix OnDiskIndexTest to properly treat empty ranges (CASSANDRA-11205)
* fix TrackerTest to handle new notifications (CASSANDRA-11178)
* add SASI validation for partitioner and complex columns (CASSANDRA-11169)
* Add caching of encrypted credentials in PasswordAuthenticator (CASSANDRA-7715)
* fix SASI memtable switching on flush (CASSANDRA-11159)
* Remove duplicate offline compaction tracking (CASSANDRA-11148)
* fix EQ semantics of analyzed SASI indexes (CASSANDRA-11130)
* Support long name output for nodetool commands (CASSANDRA-7950)
* Encrypted hints (CASSANDRA-11040)
* SASI index options validation (CASSANDRA-11136)
* Optimize disk seek using min/max column name meta data when the LIMIT clause is used
(CASSANDRA-8180)
* Add LIKE support to CQL3 (CASSANDRA-11067)
* Generic Java UDF types (CASSANDRA-10819)
* cqlsh: Include sub-second precision in timestamps by default (CASSANDRA-10428)
* Set javac encoding to utf-8 (CASSANDRA-11077)
* Integrate SASI index into Cassandra (CASSANDRA-10661)
* Add --skip-flush option to nodetool snapshot
* Skip values for non-queried columns (CASSANDRA-10657)
* Add support for secondary indexes on static columns (CASSANDRA-8103)
* CommitLogUpgradeTestMaker creates broken commit logs (CASSANDRA-11051)
* Add metric for number of dropped mutations (CASSANDRA-10866)
* Simplify row cache invalidation code (CASSANDRA-10396)
* Support user-defined compaction through nodetool (CASSANDRA-10660)
* Stripe view locks by key and table ID to reduce contention (CASSANDRA-10981)
* Add nodetool gettimeout and settimeout commands (CASSANDRA-10953)
* Add 3.0 metadata to sstablemetadata output (CASSANDRA-10838)
Merged from 3.0:
* MV should only query complex columns included in the view (CASSANDRA-11069)
* Failed aggregate creation breaks server permanently (CASSANDRA-11064)
* Add sstabledump tool (CASSANDRA-7464)
* Introduce backpressure for hints (CASSANDRA-10972)
* Fix ClusteringPrefix not being able to read tombstone range boundaries (CASSANDRA-11158)
* Prevent logging in sandboxed state (CASSANDRA-11033)
* Disallow drop/alter operations of UDTs used by UDAs (CASSANDRA-10721)
* Add query time validation method on Index (CASSANDRA-11043)
* Avoid potential AssertionError in mixed version cluster (CASSANDRA-11128)
* Properly handle hinted handoff after topology changes (CASSANDRA-5902)
* AssertionError when listing sstable files on inconsistent disk state (CASSANDRA-11156)
* Fix wrong rack counting and invalid conditions check for TokenAllocation
(CASSANDRA-11139)
* Avoid creating empty hint files (CASSANDRA-11090)
* Fix leak detection strong reference loop using weak reference (CASSANDRA-11120)
* Configurie BatchlogManager to stop delayed tasks on shutdown (CASSANDRA-11062)
* Hadoop integration is incompatible with Cassandra Driver 3.0.0 (CASSANDRA-11001)
* Add dropped_columns to the list of schema table so it gets handled
properly (CASSANDRA-11050)
* Fix NPE when using forceRepairRangeAsync without DC (CASSANDRA-11239)
Merged from 2.2:
* Preserve order for preferred SSL cipher suites (CASSANDRA-11164)
* Range.compareTo() violates the contract of Comparable (CASSANDRA-11216)
* Avoid NPE when serializing ErrorMessage with null message (CASSANDRA-11167)
* Replacing an aggregate with a new version doesn't reset INITCOND (CASSANDRA-10840)
* (cqlsh) cqlsh cannot be called through symlink (CASSANDRA-11037)
* fix ohc and java-driver pom dependencies in build.xml (CASSANDRA-10793)
* Protect from keyspace dropped during repair (CASSANDRA-11065)
* Handle adding fields to a UDT in SELECT JSON and toJson() (CASSANDRA-11146)
* Better error message for cleanup (CASSANDRA-10991)
* cqlsh pg-style-strings broken if line ends with ';' (CASSANDRA-11123)
* Always persist upsampled index summaries (CASSANDRA-10512)
* (cqlsh) Fix inconsistent auto-complete (CASSANDRA-10733)
* Make SELECT JSON and toJson() threadsafe (CASSANDRA-11048)
* Fix SELECT on tuple relations for mixed ASC/DESC clustering order (CASSANDRA-7281)
* Use cloned TokenMetadata in size estimates to avoid race against membership check
(CASSANDRA-10736)
* (cqlsh) Support utf-8/cp65001 encoding on Windows (CASSANDRA-11030)
* Fix paging on DISTINCT queries repeats result when first row in partition changes
(CASSANDRA-10010)
* (cqlsh) Support timezone conversion using pytz (CASSANDRA-10397)
* cqlsh: change default encoding to UTF-8 (CASSANDRA-11124)
Merged from 2.1:
* Checking if an unlogged batch is local is inefficient (CASSANDRA-11529)
* Fix out-of-space error treatment in memtable flushing (CASSANDRA-11448).
* Don't do defragmentation if reading from repaired sstables (CASSANDRA-10342)
* Fix streaming_socket_timeout_in_ms not enforced (CASSANDRA-11286)
* Avoid dropping message too quickly due to missing unit conversion (CASSANDRA-11302)
* Don't remove FailureDetector history on removeEndpoint (CASSANDRA-10371)
* Only notify if repair status changed (CASSANDRA-11172)
* Use logback setting for 'cassandra -v' command (CASSANDRA-10767)
* Fix sstableloader to unthrottle streaming by default (CASSANDRA-9714)
* Fix incorrect warning in 'nodetool status' (CASSANDRA-10176)
* Properly release sstable ref when doing offline scrub (CASSANDRA-10697)
* Improve nodetool status performance for large cluster (CASSANDRA-7238)
* Gossiper#isEnabled is not thread safe (CASSANDRA-11116)
* Avoid major compaction mixing repaired and unrepaired sstables in DTCS (CASSANDRA-11113)
* Make it clear what DTCS timestamp_resolution is used for (CASSANDRA-11041)
* (cqlsh) Display milliseconds when datetime overflows (CASSANDRA-10625)
3.3
* Avoid infinite loop if owned range is smaller than number of
data dirs (CASSANDRA-11034)
* Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010)
Merged from 3.0:
* Remove double initialization of newly added tables (CASSANDRA-11027)
* Filter keys searcher results by target range (CASSANDRA-11104)
* Fix deserialization of legacy read commands (CASSANDRA-11087)
* Fix incorrect computation of deletion time in sstable metadata (CASSANDRA-11102)
* Avoid memory leak when collecting sstable metadata (CASSANDRA-11026)
* Mutations do not block for completion under view lock contention (CASSANDRA-10779)
* Invalidate legacy schema tables when unloading them (CASSANDRA-11071)
* (cqlsh) handle INSERT and UPDATE statements with LWT conditions correctly
(CASSANDRA-11003)
* Fix DISTINCT queries in mixed version clusters (CASSANDRA-10762)
* Migrate build status for indexes along with legacy schema (CASSANDRA-11046)
* Ensure SSTables for legacy KEYS indexes can be read (CASSANDRA-11045)
* Added support for IBM zSystems architecture (CASSANDRA-11054)
* Update CQL documentation (CASSANDRA-10899)
* Check the column name, not cell name, for dropped columns when reading
legacy sstables (CASSANDRA-11018)
* Don't attempt to index clustering values of static rows (CASSANDRA-11021)
* Remove checksum files after replaying hints (CASSANDRA-10947)
* Support passing base table metadata to custom 2i validation (CASSANDRA-10924)
* Ensure stale index entries are purged during reads (CASSANDRA-11013)
* (cqlsh) Also apply --connect-timeout to control connection
timeout (CASSANDRA-10959)
* Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954)
* Fix UnsupportedOperationException when reading old sstable with range
tombstone (CASSANDRA-10743)
* MV should use the maximum timestamp of the primary key (CASSANDRA-10910)
* Fix potential assertion error during compaction (CASSANDRA-10944)
Merged from 2.2:
* maxPurgeableTimestamp needs to check memtables too (CASSANDRA-9949)
* Apply change to compaction throughput in real time (CASSANDRA-10025)
* (cqlsh) encode input correctly when saving history
* Fix potential NPE on ORDER BY queries with IN (CASSANDRA-10955)
* Start L0 STCS-compactions even if there is a L0 -> L1 compaction
going (CASSANDRA-10979)
* Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
* Histogram buckets exposed in jmx are sorted incorrectly (CASSANDRA-10975)
* Enable GC logging by default (CASSANDRA-10140)
* Optimize pending range computation (CASSANDRA-9258)
* Skip commit log and saved cache directories in SSTable version startup check (CASSANDRA-10902)
* drop/alter user should be case sensitive (CASSANDRA-10817)
Merged from 2.1:
* test_bulk_round_trip_blogposts is failing occasionally (CASSANDRA-10938)
* Fix isJoined return true only after becoming cluster member (CASANDRA-11007)
* Fix bad gossip generation seen in long-running clusters (CASSANDRA-10969)
* Avoid NPE when incremental repair fails (CASSANDRA-10909)
* Unmark sstables compacting once they are done in cleanup/scrub/upgradesstables (CASSANDRA-10829)
* Allow simultaneous bootstrapping with strict consistency when no vnodes are used (CASSANDRA-11005)
* Log a message when major compaction does not result in a single file (CASSANDRA-10847)
* (cqlsh) fix cqlsh_copy_tests when vnodes are disabled (CASSANDRA-10997)
* (cqlsh) Add request timeout option to cqlsh (CASSANDRA-10686)
* Avoid AssertionError while submitting hint with LWT (CASSANDRA-10477)
* If CompactionMetadata is not in stats file, use index summary instead (CASSANDRA-10676)
* Retry sending gossip syn multiple times during shadow round (CASSANDRA-8072)
* Fix pending range calculation during moves (CASSANDRA-10887)
* Sane default (200Mbps) for inter-DC streaming througput (CASSANDRA-8708)
3.2
* Make sure tokens don't exist in several data directories (CASSANDRA-6696)
* Add requireAuthorization method to IAuthorizer (CASSANDRA-10852)
* Move static JVM options to conf/jvm.options file (CASSANDRA-10494)
* Fix CassandraVersion to accept x.y version string (CASSANDRA-10931)
* Add forceUserDefinedCleanup to allow more flexible cleanup (CASSANDRA-10708)
* (cqlsh) allow setting TTL with COPY (CASSANDRA-9494)
* Fix counting of received sstables in streaming (CASSANDRA-10949)
* Implement hints compression (CASSANDRA-9428)
* Fix potential assertion error when reading static columns (CASSANDRA-10903)
* Fix EstimatedHistogram creation in nodetool tablehistograms (CASSANDRA-10859)
* Establish bootstrap stream sessions sequentially (CASSANDRA-6992)
* Sort compactionhistory output by timestamp (CASSANDRA-10464)
* More efficient BTree removal (CASSANDRA-9991)
* Make tablehistograms accept the same syntax as tablestats (CASSANDRA-10149)
* Group pending compactions based on table (CASSANDRA-10718)
* Add compressor name in sstablemetadata output (CASSANDRA-9879)
* Fix type casting for counter columns (CASSANDRA-10824)
* Prevent running Cassandra as root (CASSANDRA-8142)
* bound maximum in-flight commit log replay mutation bytes to 64 megabytes (CASSANDRA-8639)
* Normalize all scripts (CASSANDRA-10679)
* Make compression ratio much more accurate (CASSANDRA-10225)
* Optimize building of Clustering object when only one is created (CASSANDRA-10409)
* Make index building pluggable (CASSANDRA-10681)
* Add sstable flush observer (CASSANDRA-10678)
* Improve NTS endpoints calculation (CASSANDRA-10200)
* Improve performance of the folderSize function (CASSANDRA-10677)
* Add support for type casting in selection clause (CASSANDRA-10310)
* Added graphing option to cassandra-stress (CASSANDRA-7918)
* Abort in-progress queries that time out (CASSANDRA-7392)
* Add transparent data encryption core classes (CASSANDRA-9945)
Merged from 3.0:
* Better handling of SSL connection errors inter-node (CASSANDRA-10816)
* Avoid NoSuchElementException when executing empty batch (CASSANDRA-10711)
* Avoid building PartitionUpdate in toString (CASSANDRA-10897)
* Reduce heap spent when receiving many SSTables (CASSANDRA-10797)
* Add back support for 3rd party auth providers to bulk loader (CASSANDRA-10873)
* Eliminate the dependency on jgrapht for UDT resolution (CASSANDRA-10653)
* (Hadoop) Close Clusters and Sessions in Hadoop Input/Output classes (CASSANDRA-10837)
* Fix sstableloader not working with upper case keyspace name (CASSANDRA-10806)
Merged from 2.2:
* jemalloc detection fails due to quoting issues in regexv (CASSANDRA-10946)
* (cqlsh) show correct column names for empty result sets (CASSANDRA-9813)
* Add new types to Stress (CASSANDRA-9556)
* Add property to allow listening on broadcast interface (CASSANDRA-9748)
Merged from 2.1:
* Match cassandra-loader options in COPY FROM (CASSANDRA-9303)
* Fix binding to any address in CqlBulkRecordWriter (CASSANDRA-9309)
* cqlsh fails to decode utf-8 characters for text typed columns (CASSANDRA-10875)
* Log error when stream session fails (CASSANDRA-9294)
* Fix bugs in commit log archiving startup behavior (CASSANDRA-10593)
* (cqlsh) further optimise COPY FROM (CASSANDRA-9302)
* Allow CREATE TABLE WITH ID (CASSANDRA-9179)
* Make Stress compiles within eclipse (CASSANDRA-10807)
* Cassandra Daemon should print JVM arguments (CASSANDRA-10764)
* Allow cancellation of index summary redistribution (CASSANDRA-8805)
3.1.1
Merged from 3.0:
* Fix upgrade data loss due to range tombstone deleting more data than then should
(CASSANDRA-10822)
3.1
Merged from 3.0:
* Avoid MV race during node decommission (CASSANDRA-10674)
* Disable reloading of GossipingPropertyFileSnitch (CASSANDRA-9474)
* Handle single-column deletions correction in materialized views
when the column is part of the view primary key (CASSANDRA-10796)
* Fix issue with datadir migration on upgrade (CASSANDRA-10788)
* Fix bug with range tombstones on reverse queries and test coverage for
AbstractBTreePartition (CASSANDRA-10059)
* Remove 64k limit on collection elements (CASSANDRA-10374)
* Remove unclear Indexer.indexes() method (CASSANDRA-10690)
* Fix NPE on stream read error (CASSANDRA-10771)
* Normalize cqlsh DESC output (CASSANDRA-10431)
* Rejects partition range deletions when columns are specified (CASSANDRA-10739)
* Fix error when saving cached key for old format sstable (CASSANDRA-10778)
* Invalidate prepared statements on DROP INDEX (CASSANDRA-10758)
* Fix SELECT statement with IN restrictions on partition key,
ORDER BY and LIMIT (CASSANDRA-10729)
* Improve stress performance over 1k threads (CASSANDRA-7217)
* Wait for migration responses to complete before bootstrapping (CASSANDRA-10731)
* Unable to create a function with argument of type Inet (CASSANDRA-10741)
* Fix backward incompatibiliy in CqlInputFormat (CASSANDRA-10717)
* Correctly preserve deletion info on updated rows when notifying indexers
of single-row deletions (CASSANDRA-10694)
* Notify indexers of partition delete during cleanup (CASSANDRA-10685)
* Keep the file open in trySkipCache (CASSANDRA-10669)
* Updated trigger example (CASSANDRA-10257)
Merged from 2.2:
* Verify tables in pseudo-system keyspaces at startup (CASSANDRA-10761)
* Fix IllegalArgumentException in DataOutputBuffer.reallocate for large buffers (CASSANDRA-10592)
* Show CQL help in cqlsh in web browser (CASSANDRA-7225)
* Serialize on disk the proper SSTable compression ratio (CASSANDRA-10775)
* Reject index queries while the index is building (CASSANDRA-8505)
* CQL.textile syntax incorrectly includes optional keyspace for aggregate SFUNC and FINALFUNC (CASSANDRA-10747)
* Fix JSON update with prepared statements (CASSANDRA-10631)
* Don't do anticompaction after subrange repair (CASSANDRA-10422)
* Fix SimpleDateType type compatibility (CASSANDRA-10027)
* (Hadoop) fix splits calculation (CASSANDRA-10640)
* (Hadoop) ensure that Cluster instances are always closed (CASSANDRA-10058)
Merged from 2.1:
* Fix Stress profile parsing on Windows (CASSANDRA-10808)
* Fix incremental repair hang when replica is down (CASSANDRA-10288)
* Optimize the way we check if a token is repaired in anticompaction (CASSANDRA-10768)
* Add proper error handling to stream receiver (CASSANDRA-10774)
* Warn or fail when changing cluster topology live (CASSANDRA-10243)
* Status command in debian/ubuntu init script doesn't work (CASSANDRA-10213)
* Some DROP ... IF EXISTS incorrectly result in exceptions on non-existing KS (CASSANDRA-10658)
* DeletionTime.compareTo wrong in rare cases (CASSANDRA-10749)
* Force encoding when computing statement ids (CASSANDRA-10755)
* Properly reject counters as map keys (CASSANDRA-10760)
* Fix the sstable-needs-cleanup check (CASSANDRA-10740)
* (cqlsh) Print column names before COPY operation (CASSANDRA-8935)
* Fix CompressedInputStream for proper cleanup (CASSANDRA-10012)
* (cqlsh) Support counters in COPY commands (CASSANDRA-9043)
* Try next replica if not possible to connect to primary replica on
ColumnFamilyRecordReader (CASSANDRA-2388)
* Limit window size in DTCS (CASSANDRA-10280)
* sstableloader does not use MAX_HEAP_SIZE env parameter (CASSANDRA-10188)
* (cqlsh) Improve COPY TO performance and error handling (CASSANDRA-9304)
* Create compression chunk for sending file only (CASSANDRA-10680)
* Forbid compact clustering column type changes in ALTER TABLE (CASSANDRA-8879)
* Reject incremental repair with subrange repair (CASSANDRA-10422)
* Add a nodetool command to refresh size_estimates (CASSANDRA-9579)
* Invalidate cache after stream receive task is completed (CASSANDRA-10341)
* Reject counter writes in CQLSSTableWriter (CASSANDRA-10258)
* Remove superfluous COUNTER_MUTATION stage mapping (CASSANDRA-10605)
3.0
* Fix AssertionError while flushing memtable due to materialized views
incorrectly inserting empty rows (CASSANDRA-10614)
* Store UDA initcond as CQL literal in the schema table, instead of a blob (CASSANDRA-10650)
* Don't use -1 for the position of partition key in schema (CASSANDRA-10491)
* Fix distinct queries in mixed version cluster (CASSANDRA-10573)
* Skip sstable on clustering in names query (CASSANDRA-10571)
* Remove value skipping as it breaks read-repair (CASSANDRA-10655)
* Fix bootstrapping with MVs (CASSANDRA-10621)
* Make sure EACH_QUORUM reads are using NTS (CASSANDRA-10584)
* Fix MV replica filtering for non-NetworkTopologyStrategy (CASSANDRA-10634)
* (Hadoop) fix CIF describeSplits() not handling 0 size estimates (CASSANDRA-10600)
* Fix reading of legacy sstables (CASSANDRA-10590)
* Use CQL type names in schema metadata tables (CASSANDRA-10365)
* Guard batchlog replay against integer division by zero (CASSANDRA-9223)
* Fix bug when adding a column to thrift with the same name than a primary key (CASSANDRA-10608)
* Add client address argument to IAuthenticator::newSaslNegotiator (CASSANDRA-8068)
* Fix implementation of LegacyLayout.LegacyBoundComparator (CASSANDRA-10602)
* Don't use 'names query' read path for counters (CASSANDRA-10572)
* Fix backward compatibility for counters (CASSANDRA-10470)
* Remove memory_allocator paramter from cassandra.yaml (CASSANDRA-10581,10628)
* Execute the metadata reload task of all registered indexes on CFS::reload (CASSANDRA-10604)
* Fix thrift cas operations with defined columns (CASSANDRA-10576)
* Fix PartitionUpdate.operationCount()for updates with static column operations (CASSANDRA-10606)
* Fix thrift get() queries with defined columns (CASSANDRA-10586)
* Fix marking of indexes as built and removed (CASSANDRA-10601)
* Skip initialization of non-registered 2i instances, remove Index::getIndexName (CASSANDRA-10595)
* Fix batches on multiple tables (CASSANDRA-10554)
* Ensure compaction options are validated when updating KeyspaceMetadata (CASSANDRA-10569)
* Flatten Iterator Transformation Hierarchy (CASSANDRA-9975)
* Remove token generator (CASSANDRA-5261)
* RolesCache should not be created for any authenticator that does not requireAuthentication (CASSANDRA-10562)
* Fix LogTransaction checking only a single directory for files (CASSANDRA-10421)
* Fix handling of range tombstones when reading old format sstables (CASSANDRA-10360)
* Aggregate with Initial Condition fails with C* 3.0 (CASSANDRA-10367)
Merged from 2.2:
* (cqlsh) show partial trace if incomplete after max_trace_wait (CASSANDRA-7645)
* Use most up-to-date version of schema for system tables (CASSANDRA-10652)
* Deprecate memory_allocator in cassandra.yaml (CASSANDRA-10581,10628)
* Expose phi values from failure detector via JMX and tweak debug
and trace logging (CASSANDRA-9526)
* Fix IllegalArgumentException in DataOutputBuffer.reallocate for large buffers (CASSANDRA-10592)
Merged from 2.1:
* Shutdown compaction in drain to prevent leak (CASSANDRA-10079)
* (cqlsh) fix COPY using wrong variable name for time_format (CASSANDRA-10633)
* Do not run SizeEstimatesRecorder if a node is not a member of the ring (CASSANDRA-9912)
* Improve handling of dead nodes in gossip (CASSANDRA-10298)
* Fix logback-tools.xml incorrectly configured for outputing to System.err
(CASSANDRA-9937)
* Fix streaming to catch exception so retry not fail (CASSANDRA-10557)
* Add validation method to PerRowSecondaryIndex (CASSANDRA-10092)
* Support encrypted and plain traffic on the same port (CASSANDRA-10559)
* Do STCS in DTCS windows (CASSANDRA-10276)
* Avoid repetition of JVM_OPTS in debian package (CASSANDRA-10251)
* Fix potential NPE from handling result of SIM.highestSelectivityIndex (CASSANDRA-10550)
* Fix paging issues with partitions containing only static columns data (CASSANDRA-10381)
* Fix conditions on static columns (CASSANDRA-10264)
* AssertionError: attempted to delete non-existing file CommitLog (CASSANDRA-10377)
* Fix sorting for queries with an IN condition on partition key columns (CASSANDRA-10363)
3.0-rc2
* Fix SELECT DISTINCT queries between 2.2.2 nodes and 3.0 nodes (CASSANDRA-10473)
* Remove circular references in SegmentedFile (CASSANDRA-10543)
* Ensure validation of indexed values only occurs once per-partition (CASSANDRA-10536)
* Fix handling of static columns for range tombstones in thrift (CASSANDRA-10174)
* Support empty ColumnFilter for backward compatility on empty IN (CASSANDRA-10471)
* Remove Pig support (CASSANDRA-10542)
* Fix LogFile throws Exception when assertion is disabled (CASSANDRA-10522)
* Revert CASSANDRA-7486, make CMS default GC, move GC config to
conf/jvm.options (CASSANDRA-10403)
* Fix TeeingAppender causing some logs to be truncated/empty (CASSANDRA-10447)
* Allow EACH_QUORUM for reads (CASSANDRA-9602)
* Fix potential ClassCastException while upgrading (CASSANDRA-10468)
* Fix NPE in MVs on update (CASSANDRA-10503)
* Only include modified cell data in indexing deltas (CASSANDRA-10438)
* Do not load keyspace when creating sstable writer (CASSANDRA-10443)
* If node is not yet gossiping write all MV updates to batchlog only (CASSANDRA-10413)
* Re-populate token metadata after commit log recovery (CASSANDRA-10293)
* Provide additional metrics for materialized views (CASSANDRA-10323)
* Flush system schema tables after local schema changes (CASSANDRA-10429)
Merged from 2.2:
* Reduce contention getting instances of CompositeType (CASSANDRA-10433)
* Fix the regression when using LIMIT with aggregates (CASSANDRA-10487)
* Avoid NoClassDefFoundError during DataDescriptor initialization on windows (CASSANDRA-10412)
* Preserve case of quoted Role & User names (CASSANDRA-10394)
* cqlsh pg-style-strings broken (CASSANDRA-10484)
* cqlsh prompt includes name of keyspace after failed `use` statement (CASSANDRA-10369)
Merged from 2.1:
* (cqlsh) Distinguish negative and positive infinity in output (CASSANDRA-10523)
* (cqlsh) allow custom time_format for COPY TO (CASSANDRA-8970)
* Don't allow startup if the node's rack has changed (CASSANDRA-10242)
* (cqlsh) show partial trace if incomplete after max_trace_wait (CASSANDRA-7645)
* Allow LOCAL_JMX to be easily overridden (CASSANDRA-10275)
* Mark nodes as dead even if they've already left (CASSANDRA-10205)
3.0.0-rc1
* Fix mixed version read request compatibility for compact static tables
(CASSANDRA-10373)
* Fix paging of DISTINCT with static and IN (CASSANDRA-10354)
* Allow MATERIALIZED VIEW's SELECT statement to restrict primary key
columns (CASSANDRA-9664)
* Move crc_check_chance out of compression options (CASSANDRA-9839)
* Fix descending iteration past end of BTreeSearchIterator (CASSANDRA-10301)
* Transfer hints to a different node on decommission (CASSANDRA-10198)
* Check partition keys for CAS operations during stmt validation (CASSANDRA-10338)
* Add custom query expressions to SELECT (CASSANDRA-10217)
* Fix minor bugs in MV handling (CASSANDRA-10362)
* Allow custom indexes with 0,1 or multiple target columns (CASSANDRA-10124)
* Improve MV schema representation (CASSANDRA-9921)
* Add flag to enable/disable coordinator batchlog for MV writes (CASSANDRA-10230)
* Update cqlsh COPY for new internal driver serialization interface (CASSANDRA-10318)
* Give index implementations more control over rebuild operations (CASSANDRA-10312)
* Update index file format (CASSANDRA-10314)
* Add "shadowable" row tombstones to deal with mv timestamp issues (CASSANDRA-10261)
* CFS.loadNewSSTables() broken for pre-3.0 sstables
* Cache selected index in read command to reduce lookups (CASSANDRA-10215)
* Small optimizations of sstable index serialization (CASSANDRA-10232)
* Support for both encrypted and unencrypted native transport connections (CASSANDRA-9590)
Merged from 2.2:
* Configurable page size in cqlsh (CASSANDRA-9855)
* Defer default role manager setup until all nodes are on 2.2+ (CASSANDRA-9761)
* Handle missing RoleManager in config after upgrade to 2.2 (CASSANDRA-10209)
Merged from 2.1:
* Bulk Loader API could not tolerate even node failure (CASSANDRA-10347)
* Avoid misleading pushed notifications when multiple nodes
share an rpc_address (CASSANDRA-10052)
* Fix dropping undroppable when message queue is full (CASSANDRA-10113)
* Fix potential ClassCastException during paging (CASSANDRA-10352)
* Prevent ALTER TYPE from creating circular references (CASSANDRA-10339)
* Fix cache handling of 2i and base tables (CASSANDRA-10155, 10359)
* Fix NPE in nodetool compactionhistory (CASSANDRA-9758)
* (Pig) support BulkOutputFormat as a URL parameter (CASSANDRA-7410)
* BATCH statement is broken in cqlsh (CASSANDRA-10272)
* (cqlsh) Make cqlsh PEP8 Compliant (CASSANDRA-10066)
* (cqlsh) Fix error when starting cqlsh with --debug (CASSANDRA-10282)
* Scrub, Cleanup and Upgrade do not unmark compacting until all operations
have completed, regardless of the occurence of exceptions (CASSANDRA-10274)
3.0.0-beta2
* Fix columns returned by AbstractBtreePartitions (CASSANDRA-10220)
* Fix backward compatibility issue due to AbstractBounds serialization bug (CASSANDRA-9857)
* Fix startup error when upgrading nodes (CASSANDRA-10136)
* Base table PRIMARY KEY can be assumed to be NOT NULL in MV creation (CASSANDRA-10147)
* Improve batchlog write patch (CASSANDRA-9673)
* Re-apply MaterializedView updates on commitlog replay (CASSANDRA-10164)
* Require AbstractType.isByteOrderComparable declaration in constructor (CASSANDRA-9901)
* Avoid digest mismatch on upgrade to 3.0 (CASSANDRA-9554)
* Fix Materialized View builder when adding multiple MVs (CASSANDRA-10156)
* Choose better poolingOptions for protocol v4 in cassandra-stress (CASSANDRA-10182)
* Fix LWW bug affecting Materialized Views (CASSANDRA-10197)
* Ensures frozen sets and maps are always sorted (CASSANDRA-10162)
* Don't deadlock when flushing CFS backed custom indexes (CASSANDRA-10181)
* Fix double flushing of secondary index tables (CASSANDRA-10180)
* Fix incorrect handling of range tombstones in thrift (CASSANDRA-10046)
* Only use batchlog when paired materialized view replica is remote (CASSANDRA-10061)
* Reuse TemporalRow when updating multiple MaterializedViews (CASSANDRA-10060)
* Validate gc_grace_seconds for batchlog writes and MVs (CASSANDRA-9917)
* Fix sstablerepairedset (CASSANDRA-10132)
Merged from 2.2:
* Cancel transaction for sstables we wont redistribute index summary
for (CASSANDRA-10270)
* Retry snapshot deletion after compaction and gc on Windows (CASSANDRA-10222)
* Fix failure to start with space in directory path on Windows (CASSANDRA-10239)
* Fix repair hang when snapshot failed (CASSANDRA-10057)
* Fall back to 1/4 commitlog volume for commitlog_total_space on small disks
(CASSANDRA-10199)
Merged from 2.1:
* Added configurable warning threshold for GC duration (CASSANDRA-8907)
* Fix handling of streaming EOF (CASSANDRA-10206)
* Only check KeyCache when it is enabled
* Change streaming_socket_timeout_in_ms default to 1 hour (CASSANDRA-8611)
* (cqlsh) update list of CQL keywords (CASSANDRA-9232)
* Add nodetool gettraceprobability command (CASSANDRA-10234)
Merged from 2.0:
* Fix rare race where older gossip states can be shadowed (CASSANDRA-10366)
* Fix consolidating racks violating the RF contract (CASSANDRA-10238)
* Disallow decommission when node is in drained state (CASSANDRA-8741)
2.2.1
* Fix race during construction of commit log (CASSANDRA-10049)
* Fix LeveledCompactionStrategyTest (CASSANDRA-9757)
* Fix broken UnbufferedDataOutputStreamPlus.writeUTF (CASSANDRA-10203)
* (cqlsh) default load-from-file encoding to utf-8 (CASSANDRA-9898)
* Avoid returning Permission.NONE when failing to query users table (CASSANDRA-10168)
* (cqlsh) add CLEAR command (CASSANDRA-10086)
* Support string literals as Role names for compatibility (CASSANDRA-10135)
Merged from 2.1:
* Only check KeyCache when it is enabled
* Change streaming_socket_timeout_in_ms default to 1 hour (CASSANDRA-8611)
* (cqlsh) update list of CQL keywords (CASSANDRA-9232)
3.0.0-beta1
* Redesign secondary index API (CASSANDRA-9459, 7771, 9041)
* Fix throwing ReadFailure instead of ReadTimeout on range queries (CASSANDRA-10125)
* Rewrite hinted handoff (CASSANDRA-6230)
* Fix query on static compact tables (CASSANDRA-10093)
* Fix race during construction of commit log (CASSANDRA-10049)
* Add option to only purge repaired tombstones (CASSANDRA-6434)
* Change authorization handling for MVs (CASSANDRA-9927)
* Add custom JMX enabled executor for UDF sandbox (CASSANDRA-10026)
* Fix row deletion bug for Materialized Views (CASSANDRA-10014)
* Support mixed-version clusters with Cassandra 2.1 and 2.2 (CASSANDRA-9704)
* Fix multiple slices on RowSearchers (CASSANDRA-10002)
* Fix bug in merging of collections (CASSANDRA-10001)
* Optimize batchlog replay to avoid full scans (CASSANDRA-7237)
* Repair improvements when using vnodes (CASSANDRA-5220)
* Disable scripted UDFs by default (CASSANDRA-9889)
* Bytecode inspection for Java-UDFs (CASSANDRA-9890)
* Use byte to serialize MT hash length (CASSANDRA-9792)
* Replace usage of Adler32 with CRC32 (CASSANDRA-8684)
* Fix migration to new format from 2.1 SSTable (CASSANDRA-10006)
* SequentialWriter should extend BufferedDataOutputStreamPlus (CASSANDRA-9500)
* Use the same repairedAt timestamp within incremental repair session (CASSANDRA-9111)
Merged from 2.2:
* Allow count(*) and count(1) to be use as normal aggregation (CASSANDRA-10114)
* An NPE is thrown if the column name is unknown for an IN relation (CASSANDRA-10043)
* Apply commit_failure_policy to more errors on startup (CASSANDRA-9749)
* Fix histogram overflow exception (CASSANDRA-9973)
* Route gossip messages over dedicated socket (CASSANDRA-9237)
* Add checksum to saved cache files (CASSANDRA-9265)
* Log warning when using an aggregate without partition key (CASSANDRA-9737)
Merged from 2.1:
* (cqlsh) Allow encoding to be set through command line (CASSANDRA-10004)
* Add new JMX methods to change local compaction strategy (CASSANDRA-9965)
* Write hints for paxos commits (CASSANDRA-7342)
* (cqlsh) Fix timestamps before 1970 on Windows, always
use UTC for timestamp display (CASSANDRA-10000)
* (cqlsh) Avoid overwriting new config file with old config
when both exist (CASSANDRA-9777)
* Release snapshot selfRef when doing snapshot repair (CASSANDRA-9998)
* Cannot replace token does not exist - DN node removed as Fat Client (CASSANDRA-9871)
Merged from 2.0:
* Don't cast expected bf size to an int (CASSANDRA-9959)
* Make getFullyExpiredSSTables less expensive (CASSANDRA-9882)
3.0.0-alpha1
* Implement proper sandboxing for UDFs (CASSANDRA-9402)
* Simplify (and unify) cleanup of compaction leftovers (CASSANDRA-7066)
* Allow extra schema definitions in cassandra-stress yaml (CASSANDRA-9850)
* Metrics should use up to date nomenclature (CASSANDRA-9448)
* Change CREATE/ALTER TABLE syntax for compression (CASSANDRA-8384)
* Cleanup crc and adler code for java 8 (CASSANDRA-9650)
* Storage engine refactor (CASSANDRA-8099, 9743, 9746, 9759, 9781, 9808, 9825,
9848, 9705, 9859, 9867, 9874, 9828, 9801)
* Update Guava to 18.0 (CASSANDRA-9653)
* Bloom filter false positive ratio is not honoured (CASSANDRA-8413)
* New option for cassandra-stress to leave a ratio of columns null (CASSANDRA-9522)
* Change hinted_handoff_enabled yaml setting, JMX (CASSANDRA-9035)
* Add algorithmic token allocation (CASSANDRA-7032)
* Add nodetool command to replay batchlog (CASSANDRA-9547)
* Make file buffer cache independent of paths being read (CASSANDRA-8897)
* Remove deprecated legacy Hadoop code (CASSANDRA-9353)
* Decommissioned nodes will not rejoin the cluster (CASSANDRA-8801)
* Change gossip stabilization to use endpoit size (CASSANDRA-9401)
* Change default garbage collector to G1 (CASSANDRA-7486)
* Populate TokenMetadata early during startup (CASSANDRA-9317)
* Undeprecate cache recentHitRate (CASSANDRA-6591)
* Add support for selectively varint encoding fields (CASSANDRA-9499, 9865)
* Materialized Views (CASSANDRA-6477)
Merged from 2.2:
* Avoid grouping sstables for anticompaction with DTCS (CASSANDRA-9900)
* UDF / UDA execution time in trace (CASSANDRA-9723)
* Fix broken internode SSL (CASSANDRA-9884)
Merged from 2.1:
* Add new JMX methods to change local compaction strategy (CASSANDRA-9965)
* Fix handling of enable/disable autocompaction (CASSANDRA-9899)
* Add consistency level to tracing ouput (CASSANDRA-9827)
* Remove repair snapshot leftover on startup (CASSANDRA-7357)
* Use random nodes for batch log when only 2 racks (CASSANDRA-8735)
* Ensure atomicity inside thrift and stream session (CASSANDRA-7757)
* Fix nodetool info error when the node is not joined (CASSANDRA-9031)
Merged from 2.0:
* Log when messages are dropped due to cross_node_timeout (CASSANDRA-9793)