Skip to content

Commit 4cbfa72

Browse files
committed
DRAFT - fighting CI
1 parent 46d6f90 commit 4cbfa72

File tree

3 files changed

+97
-71
lines changed

3 files changed

+97
-71
lines changed

.github/workflows/[email protected]

+56-56
Original file line numberDiff line numberDiff line change
@@ -31,60 +31,60 @@ jobs:
3131
- name: Compile source and tests
3232
run: mvn -B compile test-compile -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true
3333

34-
verify:
35-
name: Full verify
36-
runs-on: ubuntu-latest
37-
timeout-minutes: 10
38-
39-
strategy:
40-
matrix:
41-
java-version: [8, 11]
42-
fail-fast: false
43-
44-
steps:
45-
- name: Checkout source
46-
uses: actions/checkout@v2
47-
48-
- name: Set up JDK ${{ matrix.java-version }}
49-
uses: actions/setup-java@v2
50-
with:
51-
java-version: ${{ matrix.java-version }}
52-
distribution: 'adopt'
53-
54-
- name: Full verify
55-
run: mvn -B verify -DskipTests
56-
57-
unit-tests:
58-
name: Unit tests
59-
runs-on: ubuntu-latest
60-
timeout-minutes: 10
61-
62-
steps:
63-
- name: Checkout source
64-
uses: actions/checkout@v2
65-
66-
- name: Set up JDK 8
67-
uses: actions/setup-java@v2
68-
with:
69-
java-version: '8'
70-
distribution: 'adopt'
71-
72-
- name: Run unit tests
73-
run: mvn -B test -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true
74-
75-
- name: Copy test results
76-
if: success() || failure()
77-
run: |
78-
shopt -s globstar
79-
mkdir unit
80-
cp --parents ./**/target/*-reports/*.xml unit/
81-
82-
- name: Upload test results
83-
uses: actions/upload-artifact@v2
84-
if: success() || failure()
85-
with:
86-
name: test-results
87-
path: "*/**/target/*-reports/*.xml"
34+
# verify:
35+
# name: Full verify
36+
# runs-on: ubuntu-latest
37+
# timeout-minutes: 10
38+
39+
# strategy:
40+
# matrix:
41+
# java-version: [8, 11]
42+
# fail-fast: false
43+
44+
# steps:
45+
# - name: Checkout source
46+
# uses: actions/checkout@v2
47+
48+
# - name: Set up JDK ${{ matrix.java-version }}
49+
# uses: actions/setup-java@v2
50+
# with:
51+
# java-version: ${{ matrix.java-version }}
52+
# distribution: 'adopt'
53+
54+
# - name: Full verify
55+
# run: mvn -B verify -DskipTests
56+
57+
# unit-tests:
58+
# name: Unit tests
59+
# runs-on: ubuntu-latest
60+
# timeout-minutes: 10
61+
62+
# steps:
63+
# - name: Checkout source
64+
# uses: actions/checkout@v2
65+
66+
# - name: Set up JDK 8
67+
# uses: actions/setup-java@v2
68+
# with:
69+
# java-version: '8'
70+
# distribution: 'adopt'
71+
72+
# - name: Run unit tests
73+
# run: mvn -B test -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true
74+
75+
# - name: Copy test results
76+
# if: success() || failure()
77+
# run: |
78+
# shopt -s globstar
79+
# mkdir unit
80+
# cp --parents ./**/target/*-reports/*.xml unit/
81+
82+
# - name: Upload test results
83+
# uses: actions/upload-artifact@v2
84+
# if: success() || failure()
85+
# with:
86+
# name: test-results
87+
# path: "*/**/target/*-reports/*.xml"
8888

8989
setup-integration-tests:
9090
name: Setup ITs
@@ -145,7 +145,7 @@ jobs:
145145
pip3 install https://github.com/scylladb/scylla-ccm/archive/master.zip
146146
147147
- name: Run integration tests on Cassandra (${{ matrix.cassandra-version }})
148-
run: mvn -B verify -Pshort -Dcassandra.version=${{ matrix.cassandra-version }} -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true
148+
run: mvn -B verify -Pshort -Dcassandra.version=${{ matrix.cassandra-version }} -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true -Dtest=OpenTelemetryTest -Dsurefire.failIfNoSpecifiedTests=false
149149

150150
- name: Copy test results
151151
if: success() || failure()
@@ -203,7 +203,7 @@ jobs:
203203
sudo sh -c "echo 2097152 >> /proc/sys/fs/aio-max-nr"
204204
205205
- name: Run integration tests on Scylla (${{ matrix.scylla-version }})
206-
run: mvn -B verify -Pshort -Dscylla.version=${{ matrix.scylla-version }} -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true
206+
run: mvn -B verify -Pshort -Dscylla.version=${{ matrix.scylla-version }} -Dfmt.skip=true -Dclirr.skip=true -Danimal.sniffer.skip=true -Dtest=OpenTelemetryTest -Dsurefire.failIfNoSpecifiedTests=false
207207

208208
- name: Copy test results
209209
if: success() || failure()

driver-core/src/main/java/com/datastax/driver/core/RequestHandler.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,6 @@ private void setFinalResult(
349349
&& logger.isWarnEnabled()) {
350350
logServerWarnings(response.warnings);
351351
}
352-
callback.onSet(connection, response, info, statement, System.nanoTime() - startTime);
353352

354353
if (response.type == Message.Response.Type.RESULT) {
355354
Responses.Result rm = (Responses.Result) response;
@@ -359,6 +358,8 @@ private void setFinalResult(
359358
tracingInfo.setHasMorePages(r.metadata.pagingState != null);
360359
}
361360
}
361+
callback.onSet(connection, response, info, statement, System.nanoTime() - startTime);
362+
362363
tracingInfo.setStatus(
363364
response.type == Message.Response.Type.ERROR
364365
? TracingInfo.StatusCode.ERROR

driver-opentelemetry/src/test/java/com/datastax/driver/opentelemetry/OpenTelemetryTest.java

+39-14
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
import java.util.ArrayList;
5151
import java.util.Collection;
5252
import java.util.List;
53+
import java.util.concurrent.atomic.AtomicInteger;
5354
import java.util.concurrent.locks.Condition;
5455
import java.util.concurrent.locks.Lock;
5556
import java.util.concurrent.locks.ReentrantLock;
@@ -60,21 +61,26 @@
6061
/** Tests for OpenTelemetry integration. */
6162
public class OpenTelemetryTest extends CCMTestsSupport {
6263
/** Collects and saves spans. */
63-
private static final class BookkeepingSpanProcessor implements SpanProcessor {
64+
final AtomicInteger spansStarted = new AtomicInteger(0);
65+
66+
final AtomicInteger spansEnded = new AtomicInteger(0);
67+
68+
private final class BookkeepingSpanProcessor implements SpanProcessor {
6469
final Lock lock = new ReentrantLock();
6570
final Condition allEnded = lock.newCondition();
6671

6772
final Collection<ReadableSpan> startedSpans = new ArrayList<>();
6873
final Collection<ReadableSpan> spans = new ArrayList<>();
6974

70-
int activeSpans = 0;
75+
volatile int activeSpans = 0;
7176

7277
@Override
7378
public void onStart(Context parentContext, ReadWriteSpan span) {
7479
lock.lock();
7580

7681
startedSpans.add(span);
7782
++activeSpans;
83+
spansStarted.incrementAndGet();
7884

7985
lock.unlock();
8086
}
@@ -90,6 +96,7 @@ public void onEnd(ReadableSpan span) {
9096

9197
spans.add(span);
9298
--activeSpans;
99+
spansEnded.incrementAndGet();
93100

94101
if (activeSpans == 0) allEnded.signal();
95102

@@ -148,7 +155,6 @@ private Collection<ReadableSpan> collectSpans(
148155
final Tracer tracer = openTelemetry.getTracerProvider().get("this");
149156
final OpenTelemetryTracingInfoFactory tracingInfoFactory =
150157
new OpenTelemetryTracingInfoFactory(tracer, precisionLevel);
151-
cluster().setTracingInfoFactory(tracingInfoFactory);
152158
session = cluster().connect();
153159

154160
session.execute("USE " + keyspace);
@@ -163,8 +169,18 @@ private Collection<ReadableSpan> collectSpans(
163169
session.execute("INSERT INTO t(k, v) VALUES (9, 7)");
164170
session.execute("INSERT INTO t(k, v) VALUES (10, 7)");
165171
collector.getSpans().clear();
172+
session.close();
173+
174+
session = cluster().connect();
175+
cluster().setTracingInfoFactory(tracingInfoFactory);
166176

177+
/* try {
178+
Thread.sleep(500);
179+
} catch (InterruptedException e) {
180+
assert false;
181+
} */
167182
test.accept(tracer, tracingInfoFactory);
183+
session.close();
168184

169185
tracerProvider.close();
170186
cluster().setTracingInfoFactory(new NoopTracingInfoFactory());
@@ -187,7 +203,7 @@ private Collection<ReadableSpan> getChildrenOfSpans(
187203
}
188204

189205
/** Basic test for creating spans with INSERT statement. */
190-
@Test(groups = "short")
206+
// @Test(groups = "short")
191207
public void simpleTracingInsertTest() {
192208
final Collection<ReadableSpan> spans =
193209
collectSpans(
@@ -303,7 +319,7 @@ public void simpleTracingInsertTest() {
303319
}
304320

305321
/** Basic test for creating spans with UPDATE statement. */
306-
@Test(groups = "short")
322+
// @Test(groups = "short")
307323
public void simpleTracingUpdateTest() {
308324
final Collection<ReadableSpan> spans =
309325
collectSpans(
@@ -431,7 +447,7 @@ public void simpleTracingUpdateTest() {
431447
}
432448

433449
/** Basic test for creating spans with DELETE statement. */
434-
@Test(groups = "short")
450+
// @Test(groups = "short")
435451
public void simpleTracingDeleteTest() {
436452
final Collection<ReadableSpan> spans =
437453
collectSpans(
@@ -561,7 +577,7 @@ public void simpleTracingDeleteTest() {
561577
}
562578

563579
/** Basic test for creating spans with TRUNCATE statement. */
564-
@Test(groups = "short")
580+
// @Test(groups = "short")
565581
public void simpleTracingTruncateTest() {
566582
final Collection<ReadableSpan> spans =
567583
collectSpans(
@@ -686,13 +702,14 @@ public void simpleTracingSelectTest() {
686702
Scope scope = userSpan.makeCurrent();
687703

688704
SimpleStatement s =
689-
new SimpleStatement("SELECT k FROM t WHERE v = 7 ALLOW FILTERING");
705+
new SimpleStatement(
706+
"SELECT k FROM " + keyspace + ".t WHERE v = 7 ALLOW FILTERING");
690707
s.setFetchSize(2);
691708
s.setIdempotent(true);
692709
s.setRetryPolicy(FallthroughRetryPolicy.INSTANCE);
693-
s.setConsistencyLevel(ConsistencyLevel.QUORUM);
710+
s.setConsistencyLevel(ConsistencyLevel.ALL);
694711

695-
session.execute(s).all();
712+
assertEquals(session.execute(s).all().size(), 7);
696713

697714
scope.close();
698715
userSpan.end();
@@ -730,6 +747,7 @@ public void simpleTracingSelectTest() {
730747

731748
boolean wasNoMorePages = false;
732749
int totalRows = 0;
750+
List<Integer> rowsCounts = new ArrayList<>();
733751

734752
for (ReadableSpan requestSpan : requestSpans) {
735753
SpanData spanData = requestSpan.toSpanData();
@@ -738,7 +756,7 @@ public void simpleTracingSelectTest() {
738756
Attributes tags = spanData.getAttributes();
739757

740758
// tags generic for any (reasonable) statement
741-
assertEquals(tags.get(AttributeKey.stringKey("db.scylla.consistency_level")), "QUORUM");
759+
assertEquals(tags.get(AttributeKey.stringKey("db.scylla.consistency_level")), "ALL");
742760
assertEquals(tags.get(AttributeKey.stringKey("db.scylla.fetch_size")), "2");
743761
assertEquals(tags.get(AttributeKey.stringKey("db.scylla.statement_type")), "regular");
744762
assertEquals(
@@ -758,6 +776,7 @@ public void simpleTracingSelectTest() {
758776
final String rowsCount = tags.get(AttributeKey.stringKey("db.scylla.rows_count"));
759777
assertNotNull(rowsCount);
760778
totalRows += Integer.parseInt(rowsCount);
779+
rowsCounts.add(Integer.parseInt(rowsCount));
761780

762781
// no such information in RegularStatement:
763782
assertNull(tags.get(AttributeKey.stringKey("db.scylla.batch_size")));
@@ -773,10 +792,16 @@ public void simpleTracingSelectTest() {
773792
assertNull(tags.get(AttributeKey.stringKey("net.peer.port")));
774793
assertNull(tags.get(AttributeKey.stringKey("db.scylla.shard_id")));
775794
}
776-
;
777795

778796
assertTrue(wasNoMorePages);
779-
assertEquals(totalRows, 7);
797+
// assertEquals(totalRows, 7);
798+
assert totalRows == 7
799+
: "counts: "
800+
+ rowsCounts.toString()
801+
+ ", spansStarted="
802+
+ spansStarted.toString()
803+
+ "spansEnded"
804+
+ spansEnded.toString();
780805

781806
speculativeExecutionsSpans.stream()
782807
.map(ReadableSpan::toSpanData)
@@ -809,7 +834,7 @@ public void simpleTracingSelectTest() {
809834
}
810835

811836
/** Basic test for creating spans with an erroneous statement. */
812-
@Test(groups = "short")
837+
// @Test(groups = "short")
813838
public void simpleRequestErrorTracingTest() {
814839
final Collection<ReadableSpan> spans =
815840
collectSpans(

0 commit comments

Comments
 (0)