Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
130 commits
Select commit Hold shift + click to select a range
e4b5d98
Update token metadata for non-normal state changes
belliottsmith May 2, 2019
8db0d84
Merge branch 'cassandra-3.0' into cassandra-3.11
beobal Jun 3, 2019
cc1bc2a
Merge branch 'cassandra-3.11' into trunk
beobal Jun 3, 2019
7f4ecb0
Ninja fix RowFilterTest
beobal Jun 3, 2019
f4c0c19
Merge branch 'cassandra-3.11' into trunk
beobal Jun 3, 2019
a9a4f17
Fix JDK7 compatibility broken in cassandra-2.2
etedpet Jun 6, 2019
8ea4a81
Merge branch 'cassandra-2.2' into cassandra-3.0
mshuler Jun 7, 2019
88e474d
Merge branch 'cassandra-3.0' into cassandra-3.11
mshuler Jun 7, 2019
5f2ee52
Merge branch 'cassandra-3.11' into trunk
mshuler Jun 7, 2019
ed9083f
Update contact page to point to Slack rather than IRC
jeromatron Jun 7, 2019
6b9575a
Add note regarding DROP ROLE and connected sessions
beobal May 15, 2019
47dfb66
Throw IOE instead of asserting on unsupporter peer versions
iamaleksey May 2, 2019
033b30f
Merge branch 'cassandra-3.0' into cassandra-3.11
iamaleksey Jun 12, 2019
dcabf7e
Merge branch 'cassandra-3.11' into trunk
iamaleksey Jun 12, 2019
310a48e
Rewrite the internode messaging subsystem
belliottsmith Jun 12, 2019
0d48503
Introduce a proxy test handler, extra unit tests for connection closu…
ifesdjeen Jun 12, 2019
4b45ee5
Update docs to point to Slack rather than IRC
jeromatron Jun 12, 2019
c241029
ninja: Fix slack channel names in docs
mshuler Jun 13, 2019
7c0cb6d
Change low hanging fruit JIRA link/text in docs
jeromatron Jun 13, 2019
abb0e17
Fix leak in FramingTest unit test case
nvharikrishna Jun 17, 2019
58456fc
CQL Native Transport: Apply noSpamLogger to ConnectionLimitHandler
jeffjirsa Jun 17, 2019
802989d
Repair: fix log for inconsistent-left-subrange log statement
Jun 20, 2019
225fa86
Fix flaky unit test AuditLoggerTest
eperott Jun 22, 2019
dad82fb
Handle paging states serialized with a different version than the ses…
iamaleksey Jun 19, 2019
5514696
Merge branch 'cassandra-3.0' into cassandra-3.11
iamaleksey Jun 26, 2019
3261b23
Merge branch 'cassandra-3.11' into trunk
iamaleksey Jun 26, 2019
07ff9e5
Add Table Metrics Virtual Table
clohfink Jun 7, 2019
ebe45c8
ninja fix merge error
clohfink Jun 26, 2019
61b77ac
Update log directory patch for 4.0 deb package
mshuler Jun 26, 2019
2ed2b87
Fix accessing java.nio.Bits.totalCapacity in Java11
michaelsembwever Apr 7, 2019
dc23631
Update log directory patch for deb package
mshuler Jun 27, 2019
75fde25
Merge branch 'cassandra-3.0' into cassandra-3.11
mshuler Jun 27, 2019
883b0d8
Merge branch 'cassandra-3.11' into trunk
mshuler Jun 27, 2019
f4b6e1d
Filter illegal legacy cells when collating rows
beobal Jun 13, 2019
83baa27
Merge branch 'cassandra-3.0' into cassandra-3.11
beobal Jun 27, 2019
0273250
Merge branch 'cassandra-3.11' into trunk
beobal Jun 27, 2019
97eae44
Multiget Thrift query returns null records after digest mismatch
belliottsmith Dec 7, 2018
c08ce93
Merge branch 'cassandra-3.0' into cassandra-3.11
michaelsembwever Jul 2, 2019
0b8c5f7
Merge branch 'cassandra-3.11' into trunk
michaelsembwever Jul 2, 2019
a339aa9
Update Netty dependencies to latest, clean up SocketFactory
iamaleksey Jul 2, 2019
b2f6953
Handle exceptions during authentication/authorization
eperott May 28, 2019
63097a3
Merge branch 'cassandra-2.2' into cassandra-3.0
beobal Jul 5, 2019
8f33dc0
Merge branch 'cassandra-3.0' into cassandra-3.11
beobal Jul 5, 2019
d0a207b
Merge branch 'cassandra-3.11' into trunk
beobal Jul 5, 2019
177a8e9
Prevent RuntimeException when username or password is empty/null
ZephyrGuo Jul 3, 2019
7206ff5
Merge branch 'cassandra-3.0' into cassandra-3.11
bdeggleston Jul 8, 2019
86812fa
Merge branch 'cassandra-3.11' into trunk
bdeggleston Jul 8, 2019
d50ec52
LegacyLayout should handle paging states that cross a collection column
belliottsmith Jul 4, 2019
08b2192
Fix AlterTableStatement dropped type validation order
iamaleksey Jul 9, 2019
da6268d
Merge branch 'cassandra-3.0' into cassandra-3.11
belliottsmith Jul 10, 2019
9b33fd8
Merge branch 'cassandra-3.11' into trunk
belliottsmith Jul 10, 2019
855fc91
Toughen up column drop/recreate type validations
iamaleksey Jul 9, 2019
824d25a
Merge branch 'cassandra-3.0' into cassandra-3.11
iamaleksey Jul 10, 2019
ec15c0f
Merge branch 'cassandra-3.11' into trunk
iamaleksey Jul 10, 2019
73a65d6
Use correct sentinel timestamp value for in-JVM dtests
iamaleksey Jul 10, 2019
ecdbef3
Merge branch 'cassandra-3.0' into cassandra-3.11
iamaleksey Jul 10, 2019
be34723
Merge branch 'cassandra-3.11' into trunk
iamaleksey Jul 10, 2019
0240a46
Introduce optional timeouts for idle client sessions
ifesdjeen Jun 26, 2019
149caf0
CassandraNetworkAuthorizer gets login privilege from RolesCache
beobal Apr 16, 2019
5a03898
Prevent client requests from blocking on executor task queue
sumanth-pasupuleti Mar 25, 2019
f5fe483
Merge branch 'cassandra-3.0' into cassandra-3.11
belliottsmith Jul 15, 2019
8a04204
Merge branch 'cassandra-3.11' into trunk
belliottsmith Jul 15, 2019
fc862e2
Prevent recreation of previously dropped columns with a different kind
vincewhite Jul 16, 2019
670dde9
Merge branch 'cassandra-3.0' into cassandra-3.11
iamaleksey Jul 16, 2019
26a134a
Merge branch 'cassandra-3.11' into trunk
iamaleksey Jul 16, 2019
3f70e7c
Avoid updating unchanged gossip states
jay-zhuang Apr 18, 2019
71cb061
Merge branch 'cassandra-3.0' into cassandra-3.11
jay-zhuang Jul 19, 2019
ba6821b
Merge branch 'cassandra-3.11' into trunk
jay-zhuang Jul 19, 2019
893908e
Nodetool status Load columns has wrong width
clohfink Jul 22, 2019
2117e2a
Make repair coordination less expensive by moving MerkleTrees off heap
jeffjirsa Mar 16, 2019
da8d41f
Use mean row count instead of mean column count for index selectivity…
jrwest Aug 5, 2019
6b0b792
Merge branch 'cassandra-3.0' into cassandra-3.11
bdeggleston Aug 6, 2019
69b36a5
Merge branch 'cassandra-3.11' into trunk
bdeggleston Aug 6, 2019
b773bc7
Make sure user defined compaction transactions are always closed
krummas May 9, 2019
3ed1b79
Merge branch 'cassandra-3.11' into trunk
krummas Aug 7, 2019
9af57a5
Filter sstables earlier when running cleanup
krummas Apr 25, 2019
01c6daf
Merge branch 'cassandra-3.0' into cassandra-3.11
krummas Aug 7, 2019
af86247
Merge branch 'cassandra-3.11' into trunk
krummas Aug 7, 2019
6d037b6
Catch non-IOException in FileUtils.close so all resources are closed
kornilova203 Jul 18, 2019
f21106f
Catch non-IOException in FileUtils.close so all resources are closed
kornilova203 Jul 18, 2019
50608af
Merge branch 'cassandra-2.2' into cassandra-3.0
belliottsmith Aug 7, 2019
c7ca9b8
Merge branch 'cassandra-3.0' into cassandra-3.11
belliottsmith Aug 7, 2019
e6c39f9
Merge branch 'cassandra-3.11' into trunk
belliottsmith Aug 7, 2019
905ed48
Add more information around commit message format expected for a patch
sumanth-pasupuleti Aug 8, 2019
bf41319
Merge pull request #338 from sumanth-pasupuleti/15246_trunk
belliottsmith Aug 8, 2019
d6c049f
Fix error with non-existent table for nodetool tablehistograms
hkroger Aug 8, 2019
2374a74
Fix NPE when using allocate_tokens_for_keyspace on new DC/rack
michaelsembwever Aug 4, 2019
5d72cdd
Merge branch 'cassandra-3.0' into cassandra-3.11
michaelsembwever Aug 9, 2019
5a0e720
Merge branch 'cassandra-3.11' into trunk
michaelsembwever Aug 9, 2019
9a175a1
Improve readability of Table metrics Virtual tables units
clohfink Aug 8, 2019
54aeb50
ninja fix CHANGES.txt for #14952
michaelsembwever Aug 12, 2019
bb126c0
Merge branch 'cassandra-3.0' into cassandra-3.11
michaelsembwever Aug 12, 2019
4a27d48
Merge branch 'cassandra-3.11' into trunk
michaelsembwever Aug 12, 2019
fcb4d52
Remove bad virtual table result check
clohfink Aug 14, 2019
d60e798
Avoid result truncate in decimal operations
kornilova203 Aug 8, 2019
8dcaa12
Allow instance class loaders to be garbage collected for inJVM dtest
Aug 15, 2019
51c0f6b
Merge branch 'cassandra-2.2' into cassandra-3.0
Aug 15, 2019
3df63ed
Merge branch 'cassandra-3.0' into cassandra-3.11
Aug 15, 2019
7dc5b70
Merge branch 'cassandra-3.11' into trunk
Aug 15, 2019
db2ad0f
Rename StatsMetadata estimatedColumnCount to estimatedCellPerPartitio…
jrwest Aug 19, 2019
2b10a5f
Fix LegacyLayout RangeTombstoneList IndexOutOfBoundsException when up…
belliottsmith Aug 12, 2019
0bea2fa
Merge branch 'cassandra-3.0' into cassandra-3.11
michaelsembwever Aug 22, 2019
cf55294
Merge branch 'cassandra-3.11' into trunk
michaelsembwever Aug 22, 2019
eb2c549
ninja: fix build error on LegacyLayoutTest
pauloricardomg Aug 23, 2019
c79422d
Merge branch 'cassandra-3.11' into trunk
snazy Aug 23, 2019
3a4e006
Enhance & reenable RepairTest with compression=off and compression=on
dineshjoshi Aug 9, 2019
0622288
Fix InternodeOutboundMetrics overloaded bytes/count mixup
tdl-jturner Aug 21, 2019
a145a48
Fixed exception message in nodetool snapshot when specifying kt-list …
tdl-jturner Aug 22, 2019
96ac94d
ninja: fix ant artifacts on java 8
bdeggleston Aug 31, 2019
fa16713
Set debian/changelog version to 4.0~alpha1
mshuler Sep 3, 2019
d4054e0
ninja: Fix "No newline at end of file" in c*.yaml
mshuler Sep 4, 2019
145f6d6
Set base.version and changelog to 4.0-alpha1
mshuler Sep 5, 2019
4cb90db
Use `rm -f` in rpm spec to prevent failure on missing file
mshuler Sep 5, 2019
13e43a0
Define upstream_version in rpm spec to deal with s/~/-/
mshuler Sep 5, 2019
fc4381c
Add auditlogviewer and fqltool to rpm spec
mshuler Sep 5, 2019
068d2d3
Add `allocate_tokens_for_local_rf` yaml option for token allocation t…
michaelsembwever Aug 4, 2019
21ebba8
Update version to 4.0-alpha2
michaelsembwever Sep 10, 2019
a7a0e7f
Add a new snitch for Alibaba cloud platform
Sep 3, 2019
f9ff884
Untangle RepairMessage sub-hierarchy of messages, use new messaging (…
iamaleksey Jun 14, 2019
b0f9d72
Add the how and when to perform the step of incrementing the codebase…
michaelsembwever Sep 21, 2019
bc5fc8b
Move chronicle-core version from SNAPSHOT to STABLE, and include carr…
velo Sep 9, 2019
a7f8968
Fix Zstd compression level documentation
rhardouin Sep 24, 2019
aaa4a60
Extract an AbstractCompactionController to allow for custom implement…
jberragan Aug 20, 2019
2511785
Remove inheritance for CLSM, break compose through Allocation
Oct 13, 2019
9cf0813
Minor refactor to CommitLogReader
jmckenzie-dev Oct 13, 2019
cb993a8
Interim commit working on resumable reader
jmckenzie-dev Oct 13, 2019
d82c3b5
Disambiguate some names in CommitLogSegmentManager
jmckenzie-dev Oct 13, 2019
c9fc098
Refactor commit log testing and cdc testing to support resumable testing
Oct 13, 2019
f253f1c
Clean up javadoc and scoping in CommitLogSegment and CDC Allocator
jmckenzie-dev Oct 13, 2019
60a6d51
Implement a ResumableCommitLogReader
jmckenzie-dev Oct 13, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
41 changes: 40 additions & 1 deletion CHANGES.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,25 @@
4.0
4.0-alpha2
* Extract an AbstractCompactionController to allow for custom implementations (CASSANDRA-15286)
* Move chronicle-core version from snapshot to stable, and include carrotsearch in generated pom.xml (CASSANDRA-15321)
* Untangle RepairMessage sub-hierarchy of messages, use new messaging (more) correctly (CASSANDRA-15163)
* Add `allocate_tokens_for_local_replication_factor` option for token allocation (CASSANDRA-15260)
* Add Alibaba Cloud Platform snitch (CASSANDRA-15092)


4.0-alpha1
* Inaccurate exception message with nodetool snapshot (CASSANDRA-15287)
* Fix InternodeOutboundMetrics overloaded bytes/count mixup (CASSANDRA-15186)
* Enhance & reenable RepairTest with compression=off and compression=on (CASSANDRA-15272)
* Improve readability of Table metrics Virtual tables units (CASSANDRA-15194)
* Fix error with non-existent table for nodetool tablehistograms (CASSANDRA-14410)
* Avoid result truncation in decimal operations (CASSANDRA-15232)
* Catch non-IOException in FileUtils.close to make sure that all resources are closed (CASSANDRA-15225)
* Align load column in nodetool status output (CASSANDRA-14787)
* CassandraNetworkAuthorizer uses cached roles info (CASSANDRA-15089)
* Introduce optional timeouts for idle client sessions (CASSANDRA-11097)
* Fix AlterTableStatement dropped type validation order (CASSANDRA-15203)
* Update Netty dependencies to latest, clean up SocketFactory (CASSANDRA-15195)
* Native Transport - Apply noSpamLogger to ConnectionLimitHandler (CASSANDRA-15167)
* Reduce heap pressure during compactions (CASSANDRA-14654)
* Support building Cassandra with JDK 11 (CASSANDRA-15108)
* Use quilt to patch cassandra.in.sh in Debian packaging (CASSANDRA-14710)
Expand Down Expand Up @@ -358,13 +379,30 @@
* nodetool clearsnapshot requires --all to clear all snapshots (CASSANDRA-13391)
* Correctly count range tombstones in traces and tombstone thresholds (CASSANDRA-8527)
* cqlshrc.sample uses incorrect option for time formatting (CASSANDRA-14243)
* Multi-version in-JVM dtests (CASSANDRA-14937)
* Allow instance class loaders to be garbage collected for inJVM dtest (CASSANDRA-15170)


3.11.5
* Make sure user defined compaction transactions are always closed (CASSANDRA-15123)
* Fix cassandra-env.sh to use $CASSANDRA_CONF to find cassandra-jaas.config (CASSANDRA-14305)
* Fixed nodetool cfstats printing index name twice (CASSANDRA-14903)
* Add flag to disable SASI indexes, and warnings on creation (CASSANDRA-14866)
Merged from 3.0:
* Fix LegacyLayout RangeTombstoneList IndexOutOfBoundsException when upgrading and RangeTombstone bounds are asymmetric (CASSANDRA-15172)
* Fix NPE when using allocate_tokens_for_keyspace on new DC/rack (CASSANDRA-14952)
* Filter sstables earlier when running cleanup (CASSANDRA-15100)
* Use mean row count instead of mean column count for index selectivity calculation (CASSANDRA-15259)
* Avoid updating unchanged gossip states (CASSANDRA-15097)
* Prevent recreation of previously dropped columns with a different kind (CASSANDRA-14948)
* Prevent client requests from blocking on executor task queue (CASSANDRA-15013)
* Toughen up column drop/recreate type validations (CASSANDRA-15204)
* LegacyLayout should handle paging states that cross a collection column (CASSANDRA-15201)
* Prevent RuntimeException when username or password is empty/null (CASSANDRA-15198)
* Multiget thrift query returns null records after digest mismatch (CASSANDRA-14812)
* Handle paging states serialized with a different version than the session's (CASSANDRA-15176)
* Throw IOE instead of asserting on unsupporter peer versions (CASSANDRA-15066)
* Update token metadata when handling MOVING/REMOVING_TOKEN events (CASSANDRA-15120)
* Add ability to customize cassandra log directory using $CASSANDRA_LOG_DIR (CASSANDRA-15090)
* Fix assorted gossip races and add related runtime checks (CASSANDRA-15059)
* cassandra-stress works with frozen collections: list and set (CASSANDRA-14907)
Expand All @@ -375,6 +413,7 @@ Merged from 3.0:
* Add missing commands to nodetool_completion (CASSANDRA-14916)
* Anti-compaction temporarily corrupts sstable state for readers (CASSANDRA-15004)
Merged from 2.2:
* Handle exceptions during authentication/authorization (CASSANDRA-15041)
* Support cross version messaging in in-jvm upgrade dtests (CASSANDRA-15078)
* Fix index summary redistribution cancellation (CASSANDRA-15045)
* Refactor Circle CI configuration (CASSANDRA-14806)
Expand Down
44 changes: 37 additions & 7 deletions build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
<property name="debuglevel" value="source,lines,vars"/>

<!-- default version and SCM information -->
<property name="base.version" value="4.0"/>
<property name="base.version" value="4.0-alpha2"/>
<property name="scm.connection" value="scm:https://gitbox.apache.org/repos/asf/cassandra.git"/>
<property name="scm.developerConnection" value="scm:https://gitbox.apache.org/repos/asf/cassandra.git"/>
<property name="scm.url" value="https://gitbox.apache.org/repos/asf?p=cassandra.git;a=tree"/>
Expand Down Expand Up @@ -118,7 +118,7 @@

<!-- https://mvnrepository.com/artifact/net.openhft/chronicle-bom/1.16.23 -->
<property name="chronicle-queue.version" value="4.16.3" />
<property name="chronicle-core.version" value="1.16.3-SNAPSHOT" />
<property name="chronicle-core.version" value="1.16.4" />
<property name="chronicle-bytes.version" value="1.16.3" />
<property name="chronicle-wire.version" value="1.16.1" />
<property name="chronicle-threads.version" value="1.16.0" />
Expand Down Expand Up @@ -548,7 +548,8 @@
<dependency groupId="com.addthis.metrics" artifactId="reporter-config3" version="3.0.3" />
<dependency groupId="org.mindrot" artifactId="jbcrypt" version="0.3m" />
<dependency groupId="io.airlift" artifactId="airline" version="0.8" />
<dependency groupId="io.netty" artifactId="netty-all" version="4.1.28.Final" />
<dependency groupId="io.netty" artifactId="netty-all" version="4.1.37.Final" />
<dependency groupId="io.netty" artifactId="netty-tcnative-boringssl-static" version="2.0.25.Final" />
<dependency groupId="net.openhft" artifactId="chronicle-queue" version="${chronicle-queue.version}"/>
<dependency groupId="net.openhft" artifactId="chronicle-core" version="${chronicle-core.version}"/>
<dependency groupId="net.openhft" artifactId="chronicle-bytes" version="${chronicle-bytes.version}"/>
Expand Down Expand Up @@ -771,6 +772,7 @@
<dependency groupId="com.github.ben-manes.caffeine" artifactId="caffeine" />
<dependency groupId="org.jctools" artifactId="jctools-core"/>
<dependency groupId="org.ow2.asm" artifactId="asm" />
<dependency groupId="com.carrotsearch" artifactId="hppc" version="0.5.4" />
</artifact:pom>
<artifact:pom id="dist-pom"
artifactId="apache-cassandra"
Expand Down Expand Up @@ -1106,7 +1108,7 @@
</jar>
</target>

<target name="_artifacts-init" depends="jar,javadoc,gen-doc" unless="java.version.8">
<target name="_artifacts-init" depends="jar,javadoc,gen-doc">
<mkdir dir="${dist.dir}"/>
<!-- fix the control linefeed so that builds on windows works on linux -->
<fixcrlf srcdir="bin" includes="**/*" excludes="**/*.bat, **/*.ps1" eol="lf" eof="remove" />
Expand Down Expand Up @@ -1168,7 +1170,6 @@

<!-- creates release tarballs -->
<target name="artifacts" depends="_artifacts-init"
unless="java.version.8"
description="Create Cassandra release artifacts">
<tar compression="gzip" longfile="gnu"
destfile="${build.dir}/${final.name}-bin.tar.gz">
Expand Down Expand Up @@ -1522,6 +1523,7 @@
<target name="burn-testsome" depends="build-test" description="Execute specific burn unit tests" >
<testmacro inputdir="${test.burn.src}" timeout="${test.burn.timeout}">
<test name="${test.name}" methods="${test.methods}"/>
<jvmarg value="-Dlogback.configurationFile=test/conf/logback-burntest.xml"/>
</testmacro>
</target>

Expand Down Expand Up @@ -1945,6 +1947,20 @@
<delete file="${test.distributed.listfile}"/>
</target>

<!-- Build a self-contained jar for e.g. remote execution; not currently used for running burn tests with this build script -->
<target name="burn-test-jar" depends="build-test, build" description="Create dtest-compatible jar, including all dependencies">
<jar jarfile="${build.dir}/burntest.jar">
<zipgroupfileset dir="${build.lib}" includes="*.jar" excludes="META-INF/*.SF"/>
<fileset dir="${build.classes.main}"/>
<fileset dir="${test.classes}"/>
<fileset dir="${test.conf}" excludes="logback*.xml"/>
<fileset dir="${basedir}/conf" includes="logback*.xml"/>
<zipgroupfileset dir="${build.dir.lib}/jars">
<include name="junit*.jar"/>
</zipgroupfileset>
</jar>
</target>

<target name="dtest-jar" depends="build-test, build" description="Create dtest-compatible jar, including all dependencies">
<jar jarfile="${build.dir}/dtest-${base.version}.jar">
<zipgroupfileset dir="${build.lib}" includes="*.jar" excludes="META-INF/*.SF"/>
Expand All @@ -1954,10 +1970,24 @@
</jar>
</target>

<target name="test-jvm-dtest" depends="build-test" description="Execute unit tests">
<target name="test-jvm-dtest" depends="build-test" description="Execute in-jvm dtests">
<testmacro inputdir="${test.distributed.src}" timeout="${test.distributed.timeout}" forkmode="once" showoutput="true" filter="**/test/*Test.java">
<jvmarg value="-Dlogback.configurationFile=test/conf/logback-dtest.xml"/>
<jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
<jvmarg value="-Dcassandra.ring_delay_ms=10000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
<jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
<jvmarg value="-Dcassandra.skip_sync=true" />
</testmacro>
</target>

<!-- Use this with an FQDN for test class, and a csv list of methods like this:
ant test-jvm-dtest-some -Dtest.name=org.apache.cassandra.distributed.test.ResourceLeakTest -Dtest.methods=looperTest
-->
<target name="test-jvm-dtest-some" depends="build-test" description="Execute some in-jvm dtests">
<testmacro inputdir="${test.distributed.src}" timeout="${test.distributed.timeout}" forkmode="once" showoutput="true">
<test name="${test.name}" methods="${test.methods}" outfile="build/test/output/TEST-${test.name}-${test.methods}"/>
<jvmarg value="-Dlogback.configurationFile=test/conf/logback-dtest.xml"/>
<jvmarg value="-Dcassandra.ring_delay_ms=10000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
<jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
<jvmarg value="-Dcassandra.skip_sync=true" />
Expand Down
48 changes: 45 additions & 3 deletions conf/cassandra.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,21 @@ num_tokens: 256

# Triggers automatic allocation of num_tokens tokens for this node. The allocation
# algorithm attempts to choose tokens in a way that optimizes replicated load over
# the nodes in the datacenter for the replication strategy used by the specified
# keyspace.
# the nodes in the datacenter for the replica factor.
#
# The load assigned to each node will be close to proportional to its number of
# vnodes.
#
# Only supported with the Murmur3Partitioner.

# Replica factor is determined via the replication strategy used by the specified
# keyspace.
# allocate_tokens_for_keyspace: KEYSPACE

# Replica factor is explicitly set, regardless of keyspace or datacenter.
# This is the replica factor within the datacenter, like NTS.
# allocate_tokens_for_local_replication_factor: 3

# initial_token allows you to specify tokens manually. While you can use it with
# vnodes (num_tokens > 1, above) -- in which case you should provide a
# comma-separated list -- it's primarily used when adding nodes to legacy clusters
Expand Down Expand Up @@ -683,6 +689,16 @@ native_transport_port: 9042
# The default is true, which means all supported protocols will be honored.
native_transport_allow_older_protocols: true

# Controls when idle client connections are closed. Idle connections are ones that had neither reads
# nor writes for a time period.
#
# Clients may implement heartbeats by sending OPTIONS native protocol message after a timeout, which
# will reset idle timeout timer on the server side. To close idle client connections, corresponding
# values for heartbeat intervals have to be set on the client side.
#
# Idle connection timeouts are disabled by default.
# native_transport_idle_timeout_in_ms: 60000

# The address or interface to bind the native transport server to.
#
# Set rpc_address OR rpc_interface, not both.
Expand Down Expand Up @@ -870,6 +886,32 @@ request_timeout_in_ms: 10000
# which picks up the OS default and configure the net.ipv4.tcp_retries2 sysctl to be ~8.
# internode_tcp_user_timeout_in_ms = 30000

# The maximum continuous period a connection may be unwritable in application space
# internode_application_timeout_in_ms = 30000

# Global, per-endpoint and per-connection limits imposed on messages queued for delivery to other nodes
# and waiting to be processed on arrival from other nodes in the cluster. These limits are applied to the on-wire
# size of the message being sent or received.
#
# The basic per-link limit is consumed in isolation before any endpoint or global limit is imposed.
# Each node-pair has three links: urgent, small and large. So any given node may have a maximum of
# N*3*(internode_application_send_queue_capacity_in_bytes+internode_application_receive_queue_capacity_in_bytes)
# messages queued without any coordination between them although in practice, with token-aware routing, only RF*tokens
# nodes should need to communicate with significant bandwidth.
#
# The per-endpoint limit is imposed on all messages exceeding the per-link limit, simultaneously with the global limit,
# on all links to or from a single node in the cluster.
# The global limit is imposed on all messages exceeding the per-link limit, simultaneously with the per-endpoint limit,
# on all links to or from any node in the cluster.
#
# internode_application_send_queue_capacity_in_bytes: 4194304 #4MiB
# internode_application_send_queue_reserve_endpoint_capacity_in_bytes: 134217728 #128MiB
# internode_application_send_queue_reserve_global_capacity_in_bytes: 536870912 #512MiB
# internode_application_receive_queue_capacity_in_bytes: 4194304 #4MiB
# internode_application_receive_queue_reserve_endpoint_capacity_in_bytes: 134217728 #128MiB
# internode_application_receive_queue_reserve_global_capacity_in_bytes: 536870912 #512MiB


# How long before a node logs slow queries. Select queries that take longer than
# this timeout to execute, will generate an aggregated log message, so that slow queries
# can be identified. Set this value to zero to disable slow query logging.
Expand Down Expand Up @@ -1305,4 +1347,4 @@ enable_sasi_indexes: false

# Enables creation of transiently replicated keyspaces on this node.
# Transient replication is experimental and is not recommended for production use.
enable_transient_replication: false
enable_transient_replication: false
10 changes: 8 additions & 2 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
cassandra (4.0) UNRELEASED; urgency=medium
cassandra (4.0~alpha2) UNRELEASED; urgency=medium

* New release

-- Michael Shuler <michael@pbandjelly.org> Wed, 15 Feb 2017 18:20:09 -0600
--

cassandra (4.0~alpha1) unstable; urgency=medium

* New release

-- Michael Shuler <michael@pbandjelly.org> Tue, 03 Sep 2019 11:51:18 -0500

cassandra (3.10) unstable; urgency=medium

Expand Down
16 changes: 8 additions & 8 deletions debian/patches/cassandra_logdir_fix.diff
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
--- a/bin/cassandra
+++ b/bin/cassandra
@@ -171,7 +171,7 @@
props="$3"
class="$4"
cassandra_parms="-Dlogback.configurationFile=logback.xml"
- cassandra_parms="$cassandra_parms -Dcassandra.logdir=$CASSANDRA_HOME/logs"
+ cassandra_parms="$cassandra_parms -Dcassandra.logdir=/var/log/cassandra"
cassandra_parms="$cassandra_parms -Dcassandra.storagedir=$cassandra_storagedir"
@@ -109,7 +109,7 @@
fi

if [ -z "$CASSANDRA_LOG_DIR" ]; then
- CASSANDRA_LOG_DIR=$CASSANDRA_HOME/logs
+ CASSANDRA_LOG_DIR=/var/log/cassandra
fi

if [ "x$pidpath" != "x" ]; then
# Special-case path variables.
--- a/conf/cassandra-env.sh
+++ b/conf/cassandra-env.sh
@@ -93,16 +93,16 @@
Expand Down
4 changes: 4 additions & 0 deletions doc/native_protocol_v4.spec
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,9 @@ Table of Contents
mode. This mode will make all Thrift and Compact Tables to be exposed as if
they were CQL Tables. This is optional; if not specified, the option will
not be used.
- "THROW_ON_OVERLOAD": In case of server overloaded with too many requests, by default the server puts
back pressure on the client connection. Instead, the server can send an OverloadedException error message back to
the client if this option is set to true.


4.1.2. AUTH_RESPONSE
Expand Down Expand Up @@ -1185,3 +1188,4 @@ Table of Contents
* The <paging_state> returned in the v4 protocol is not compatible with the v3
protocol. In other words, a <paging_state> returned by a node using protocol v4
should not be used to query a node using protocol v3 (and vice-versa).
* Added THROW_ON_OVERLOAD startup option (Section 4.1.1).
2 changes: 1 addition & 1 deletion doc/source/bugs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Reporting Bugs
==============

If you encounter a problem with Cassandra, the first places to ask for help are the :ref:`user mailing list
<mailing-lists>` and the ``#cassandra`` :ref:`IRC channel <irc-channels>`.
<mailing-lists>` and the ``cassandra`` :ref:`Slack room <slack>`.

If, after having asked for help, you suspect that you have found a bug in Cassandra, you should report it by opening a
ticket through the `Apache Cassandra JIRA <https://issues.apache.org/jira/browse/CASSANDRA>`__. Please provide as much
Expand Down
17 changes: 7 additions & 10 deletions doc/source/contactus.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
Contact us
==========

You can get in touch with the Cassandra community either via the mailing lists or the freenode IRC channels.
You can get in touch with the Cassandra community either via the mailing lists or :ref:`Slack rooms <slack>`.

.. _mailing-lists:

Expand All @@ -39,15 +39,12 @@ Subscribe by sending an email to the email address in the Subscribe links above.
email to confirm your subscription. Make sure to keep the welcome email as it contains instructions on how to
unsubscribe.

.. _irc-channels:
.. _slack:

IRC
---
Slack
-----
To chat with developers or users in real-time, join our rooms on `ASF Slack <https://s.apache.org/slack-invite>`__:

To chat with developers or users in real-time, join our channels on `IRC freenode <http://webchat.freenode.net/>`__. The
following channels are available:

- ``#cassandra`` - for user questions and general discussions.
- ``#cassandra-dev`` - strictly for questions or discussions related to Cassandra development.
- ``#cassandra-builds`` - results of automated test builds.
- ``cassandra`` - for user questions and general discussions.
- ``cassandra-dev`` - strictly for questions or discussions related to Cassandra development.

8 changes: 8 additions & 0 deletions doc/source/cql/security.rst
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,14 @@ status may ``DROP`` another ``SUPERUSER`` role.
Attempting to drop a role which does not exist results in an invalid query condition unless the ``IF EXISTS`` option is
used. If the option is used and the role does not exist the statement is a no-op.

.. note:: DROP ROLE intentionally does not terminate any open user sessions. Currently connected sessions will remain
connected and will retain the ability to perform any database actions which do not require :ref:`authorization<authorization>`.
However, if authorization is enabled, :ref:`permissions<cql-permissions>` of the dropped role are also revoked,
subject to the :ref:`caching options<auth-caching>` configured in :ref:`cassandra.yaml<cassandra-yaml>`.
Should a dropped role be subsequently recreated and have new :ref:`permissions<grant-permission-statement>` or
:ref:`roles<grant-role-statement>` granted to it, any client sessions still connected will acquire the newly granted
permissions and roles.

.. _grant-role-statement:

GRANT ROLE
Expand Down
Loading