Skip to content

Commit

Permalink
Revert "Revert "Add test_truncate_failure""
Browse files Browse the repository at this point in the history
This restores test_truncate_failure.
This reverts commit 016a0eb.
  • Loading branch information
driftx committed Oct 21, 2020
1 parent cbb35e8 commit ded6a96
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 0 deletions.
8 changes: 8 additions & 0 deletions byteman/truncate_fail.btm
@@ -0,0 +1,8 @@
RULE Throw during truncate operation
CLASS org.apache.cassandra.db.ColumnFamilyStore
METHOD truncateBlocking()
AT ENTRY
IF TRUE
DO
throw new RuntimeException("Dummy failure");
ENDRULE
33 changes: 33 additions & 0 deletions cql_test.py
@@ -1,4 +1,5 @@
import itertools
import re
import struct
import time
import pytest
Expand Down Expand Up @@ -764,6 +765,38 @@ def test_drop_compact_storage_flag(self):
[2, None, 2, None],
[3, None, 3, None]])

@since("4.0")
def test_truncate_failure(self):
"""
@jira_ticket CASSANDRA-16208
Tests that if a TRUNCATE query fails on some replica, the coordinator will immediately return an error to the
client instead of waiting to time out because it couldn't get the necessary number of success acks.
"""
cluster = self.cluster
cluster.populate(3, install_byteman=True).start()
node1, _, node3 = cluster.nodelist()
node3.byteman_submit(['./byteman/truncate_fail.btm'])

session = self.patient_exclusive_cql_connection(node1)
create_ks(session, 'ks', 3)

logger.debug("Creating data table")
session.execute("CREATE TABLE data (id int PRIMARY KEY, data text)")
session.execute("UPDATE data SET data = 'Awesome' WHERE id = 1")

self.fixture_dtest_setup.ignore_log_patterns = ['Dummy failure']
logger.debug("Truncating data table (error expected)")

thrown = False
exception = None
try:
session.execute("TRUNCATE data")
except Exception as e:
exception = e
thrown = True

assert thrown, "No exception has been thrown"
assert re.search("Truncate failed on replica /127.0.0.3", str(exception)) is not None

@since('3.2')
class AbortedQueryTester(CQLTester):
Expand Down

0 comments on commit ded6a96

Please sign in to comment.