Skip to content
This repository has been archived by the owner on Oct 12, 2019. It is now read-only.

Add shardingsphere-scenario #38

Merged
merged 50 commits into from
May 15, 2019
Merged

Add shardingsphere-scenario #38

merged 50 commits into from
May 15, 2019

Conversation

tuohai666
Copy link
Contributor

Please fill up those following information before send Pull request

@ascrutae
Copy link
Member

There are three faults in this test case:

  1. The test case container miss the MySQL environment variable
  2. The MySQL environment variables is not read by test case. It use the default value and those value cannot run in container environment, it will happen exception that the network cannot reach.
  3. There are lots of fields value is incorrect. For example: spanId , parentSpanID

@ascrutae ascrutae self-requested a review November 27, 2018 09:15
- mysql-server

mock-collector:
image: skywalking/skywalking-mock-collector:{COLLECTOR_IMAGE_VERSION}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
image: skywalking/skywalking-mock-collector:{COLLECTOR_IMAGE_VERSION}
image: skyapm/mock-collector:{COLLECTOR_IMAGE_VERSION}

spanLayer: Http
tags:
- key: url
value: http://localhost:18080/shardingsphere-case/case/execute
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
value: http://localhost:18080/shardingsphere-case/case/execute
value: http://localhost:{SERVER_OUTPUT_PORT}/shardingsphere-case/case/execute

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

entryEndpointId: 0
refType: CrossThread
parentSpanId: 0
parentTraceSegmentId: not null
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest that you should make sense the value of parentTraceSegmentId

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The parent trace segmentId is unpredictable. During the last test is segmentId is .1.15562751912310010. Any suggestion?

entryEndpointId: 0
refType: CrossThread
parentSpanId: 0
parentTraceSegmentId: not null
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest that you should make sense the value of parentTraceSegmentId

Copy link
Member

@ascrutae ascrutae left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tuohai666 I can't see any information about data sharding or database orchestration from expected data. Is that miss this information in this scenario?

@tuohai666
Copy link
Contributor Author

@ascrutae Thanks for your comments. The test case is a single routing scenario, and the expected data is same as actual data.

@tuohai666 I can't see any information about data sharding or database orchestration from expected data. Is that miss this information in this scenario?

@wu-sheng
Copy link
Member

wu-sheng commented May 6, 2019

Thanks for your comments. The test case is a single routing scenario, and the expected data is same as actual data.

@tuohai666 Is single DB routing scenario enough? This case is designed to verify the plugin and benefit for shardingsphere ecosystem. We can't make that decision, but I think as a routing lib, it should test at least for two DBs.
@terrymanu @tristaZero What do you think? Or prefer?

@tuohai666
Copy link
Contributor Author

@wu-sheng Thanks for quick reply. I have tried full routing before this version of test case. The problem is that full routing can not guarantee the order of the executing threads, and leads to an unpredictable spans order.

@terrymanu
Copy link

terrymanu commented May 6, 2019

If SkyWalking's test framework can assert for concurrency(ignore execute's spans order), I prefer use two DBs scenario.
If not, use single DB is fine too. From technical layer, single DB and two DBs are really similar (beside a new thread and merge engine, but merge is not monitored by SkyWalking)

entryEndpointId: 0
refType: CrossThread
parentSpanId: 2
parentTraceSegmentId: not null
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
parentTraceSegmentId: not null
parentTraceSegmentId: "${Your_ApplicationName[3]}"

entryEndpointId: 0
refType: CrossThread
parentSpanId: 2
parentTraceSegmentId: not null
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
parentTraceSegmentId: not null
parentTraceSegmentId: "${Your_ApplicationName[3]}"

entryEndpointId: 0
refType: CrossThread
parentSpanId: 2
parentTraceSegmentId: not null
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
parentTraceSegmentId: not null
parentTraceSegmentId: "${Your_ApplicationName[3]}"

@wu-sheng wu-sheng merged commit 6a874f9 into SkyAPMTest:master May 15, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants