Repository navigation
Pk/sf/merge2 #210
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Pk/sf/merge2 #210
Changes from all commits
Commits
Show all changes
214 commits
Select commit
Hold shift + click to select a range
da72e1e
Project outline for service fabric provider implementation, no classe…
d7f7dcb
Dummy classes for the minimally required interfaces for a custom prov…
0e48515
simple in memory implementation using queues / dictionaries. There's …
58b4dc5
Need to test the changes, also right now collections use an object th…
478284f
Orchestration client implementation and instance store implementation…
222ba78
Some thing that works!!! Has a lot of todos...
f0c65f2
New solution to contains all service fabric related stuff and a few o…
073f3e8
Test fabric application and test stateful service from templates,
a042562
Code to be able to do F5 and test an orchestration by hitting break p…
2cbaf2c
Adding licence to missing files and cleaning up unused namespace usings.
42c518b
Deleting unintentionally added files.
645fbf5
Refactoring the activity fetching in fabric orchestration service to …
b1e879d
Deleting the protoype in memory implementation used to initially to s…
1e98fe8
Moving the project folders according to the latest convention.
4cd2c86
Fixing up sln files and project references for the new dir structure.
f063e17
Fixing up package references in csproj to make it build.
c7015e1
Fixing a bad merge.
188ad08
Some implementation of timers that works for now.
27abc41
Changes that I think will enable sub orchestration and task continuat…
c3460b2
Cleaning up unused code.
a802a56
MSTest based functional tests for service fabric provider.
f11eb7f
Tests for ContinuedAsNew and I see that it's not working, need more t…
eed55ec
Test for sub orchestrations - good thing is that it works!
72675f0
Fixing a todo in code:
dda0f9d
Using the same data converter that's used in other parts of the code.
d03984c
Extra comments.
fdd5504
Changes to use a parameter for synchronous work item processing.
56659b8
Refactoring the stress test orchestrations into a separate assemly so…
062854f
My previous check in to use DataConverter broke the tests because it …
01e17fd
Changes to run a stress test and measure the time, the same pre-reqs
bd3c0ba
Minor change to stress test to also emit the orchestration time in ad…
d730c82
Removing the use of SetAsync and using AddOrUpdateAsync instead.
365ef4d
Minor change to timer test to log the orchestration time and waiter t…
add5984
nit changes.
3b710bc
more comments / todo.
9ef2e96
There is no need to call CommitAsync for read-only transactions becau…
750977c
An attempt to use code generation tool for the immutable class.
9ddfec1
Fixing a few coding issues (from late night coding :-)) to make the t…
81e6270
Self code review on differences from base branch.
3bb0375
A first draft of a console program to test reliability (fault-toleran…
6e6a35c
Adding/Removing tracing.
049cb0d
Minor improvement.
60756a6
cleaning up and re-ararnging some todo's.
b83c725
Converting the instance store interface to be transaction aware... no…
0fe9dbd
Adding the pending item list (but we are not sure how many we want fo…
45c46b0
Implementing one to-do which I think we will need : Support purging s…
e3b3c8b
Result will be useful when the deployment is new.
fb671bf
Some changes in test service to be able to assert the result in faster
6973428
Changes to remove session row when the orchestration is complete.
ad35fa1
Clearing some easy to-do's in code.
f2abb0b
Event source and events within the provider.
466802f
Writing a test to validate the data contract serialization for Persis…
4ea778c
Separating unit tests into a separate assemly (because they don't nee…
020cc3c
Expanding the test to cover all fields. (And to measure time)
d7c64ef
Adapting the test a bit to be able to easily increase the size of obj…
3041f8c
Ugly serialization fix to identify other issues - I am comminting thi…
e0e9d81
May not have optimizations for memory but something that might work...
fdbb680
A reasonable (according to me) compromise to keep the class immutable…
7276301
Removing the fields used to assert synchronous processing.
889cf3b
Bringing the change (not to rely on CancellationToken parameter for L…
4352f1b
Project outline for service fabric provider implementation, no classe…
c24a1c2
A simple peek lock implementation on sessions.
04abeb6
Simple peek lock implementation for activities.
03f1d8a
reducing the time outs on tests and fixing a nullref caused by a race…
0f1dbac
Something that works reliably (atleast in the context of a single nod…
f8338d6
Simpler implementation for sessions (using similar approach as activi…
0aabe26
Cleaning up a couple of todo's after email thread with Andrew about i…
25fbede
Changes to remove session row when the orchestration is complete.
47686cc
Clearing some easy to-do's in code.
49cc669
Event source and events within the provider.
1a768ef
Fixing an issue observed while testing node failures.
3189435
Fixing the regression (tests failed and now they are back to passing).
3cd5350
Commented code that's required but causing problems because of transa…
71a2317
Ugly serialization fix to identify other issues - I am comminting thi…
52ee835
May not have optimizations for memory but something that might work...
9a074ff
A reasonable (according to me) compromise to keep the class immutable…
b607bb0
Minor change to create state manager transaction only if needed.
8216131
Fixing bad rebase.
61c23f9
Some improvement that would avoid locking/enumerating for activities.
529457b
Adding a todo identified when doing node failure.
bd9c71a
Refactor -> Rename.
0b24d2a
Minor change to test.
bc8ef48
Improvement to PersistentSession API.
a17e2ca
Clearing some simple todo's.
90cdc3a
Adding check for invalidating creating an orchestration when another …
72f051f
Making changes to tests so that I can keep the source repository beha…
d43d796
Some more test changes and diagnostics.
91575db
Undoing some changes which were done for initial prototyping and no m…
c0e384e
Changing the test structure again (this time favored duplication of t…
b3aac23
Reverting another change made to the core provider.
5039543
Adding simple perf test (using preditable sleep time).
9d97bb0
More test scenarios.
ab68531
Clearing a Todo : Use signalling between Send and Receive instead of …
0216156
Some attempt to use inmemory locking for sessions. (And avoid enumera…
d143925
Clearing a todo : Using signalling mechanism for AcceptSession (like …
9e2bc08
Changes for trying out timeout wrapper in orchestrations.
b492999
Changed the stress tests to use timers and take one measurement.
337cb10
Using ImmutableSortedSet to improve the time complexity of scheduled …
075f985
Minor change to test program.
9858cb4
More fixes to test program.
d45f43c
Refactoring of common code from PeekLockQueue to a base class.
d230b7f
Renaming file/class.
519b711
Minor bug fixes.
a3f30f5
An alternative implementation for scheduled messages (i.e., timers).
c473386
Refactoring the SessionsProvider also to derive from common base to r…
4023e7d
some cleanup of unreferenced files and changing the project reference…
69c849e
Adding a couple of todo comments in code.
8a018b2
Changes to upgrade the test application according to the latest winfa…
246299f
Making SessionsProvider internal (and also other provider implementat…
4e40413
//Todo: Create a settings class to customize interesting properties o…
378cb08
Making another class internal that missed in commit : 246299fe3.
8e1434a
Fixing a Todo: CreateTaskOrchestrationAsync should also add to instan…
aaa5b50
Sample showing customizing the orchestrator settings in test applicat…
9aa48c7
Changes to create nupkg files from Visual Studio build.
6d4c087
Changes to generate service fabric nuget package.
7c4fd47
Some code review comments - moving the nuproj into a top level folder…
f4ee66d
Fixing the relative path of project since the folder structure changed.
8a35f59
Rearranging the files according to the changed structure.
9f1d18c
cleaning up package and project references.
6fdc59f
Fixing the package references and project references.
9ef39df
More cleanup.
36244d4
Checking in a nuspec file as there were issues with generating packag…
40bfea4
A few changes:
6db7b1d
Removing the nuproj files.
dac330c
Merge pull request #69 from PradeepKadubandi/vnext_servicefabric
PradeepKadubandi eb394af
Changes to support querying the state using only instance id without …
PradeepKadubandi 53386dd
Handling code review comments for previous checkin.
PradeepKadubandi 2225706
Generated and uploaded the 'alpha2' version of respective packages, b…
PradeepKadubandi 8698d7e
Updating the version of dll to match the version of nuget package tha…
PradeepKadubandi f29a663
Generated and uploaded the 'alpha3' version of respective packages, b…
PradeepKadubandi 0813bb5
Fixing a potential null ref.
PradeepKadubandi ed9b55f
Minor optimization.
PradeepKadubandi 4dcc522
Fixing release build break.
PradeepKadubandi 62e417f
Generated and uploaded the 'alpha4' version of respective packages, c…
PradeepKadubandi 28547d2
Add ETW event for current pending entry count for all stores in DTFX.
PradeepKadubandi ff7a090
forcing the termination of Task hub worker to see how that works and …
PradeepKadubandi 7d32cf7
Fixing a potential race. Though I couldn't repro the issue locally, I…
PradeepKadubandi d07834c
Fixing a minor thing that I missed in my last check in.
PradeepKadubandi 19f01fd
A couple of fixes:
PradeepKadubandi c520043
A few minor fixes:
PradeepKadubandi cc8f947
Updating the test fabric application to 5.4 CU2 Version of fabric SDK.
PradeepKadubandi 535f8fa
Log execution id as well for Created event.
PradeepKadubandi 9e506c9
Changes to test retry activity in an orchestration.
PradeepKadubandi d7f87a2
Uph, after a considerable effort (more than a day), I could get this …
PradeepKadubandi 304f461
Squashed commit of the following:
PradeepKadubandi ce2ac55
Adding prefixes to reliable collection name constants to make them un…
PradeepKadubandi 2f08d28
Fixing the regression caused by my previous checkin.
PradeepKadubandi 338a6ba
Movinng Newtonsoft.Json version to 8.0.3 acoss all projects including
PradeepKadubandi 2209968
Making DataContracts in SF Provider implement IExtensibleDataObject f…
PradeepKadubandi 1c9bc44
Merge branch 'vnext' into pk/sf/merge_vnext_uptp_718f28de
PradeepKadubandi 7bcd190
Fix build break caused by FI. For now simply throw NotImplementedExce…
PradeepKadubandi 350aada
Upgrade the test fabric application to SF 1.5.* version which is used…
PradeepKadubandi 0485ec3
Framework contract changed, it can send non-execution started event t…
PradeepKadubandi ff16215
Merge branch 'vnext' into vnext_servicefabric
PradeepKadubandi 9478b39
Fix null ref detected while running tests.
ccfb79c
Some minor optimizations related to async await.
PradeepKadubandi 1af5609
Squashed commit of the following:
PradeepKadubandi 2059d21
A few more fixes. Basically we want to put back the item in in-memory…
PradeepKadubandi 81fb515
Squashed commit of the following:
PradeepKadubandi 0dfd898
Squashed commit of the following:
PradeepKadubandi 75282de
Squashed commit of the following:
PradeepKadubandi d5228cf
Nit - formatting fix.
PradeepKadubandi aebbf08
Squashed commit of the following:
PradeepKadubandi c03f7f1
Changes to make the session messages dictionary name unique per execu…
PradeepKadubandi 5bf6bfa
Squashed commit of the following:
PradeepKadubandi 61f9977
Squashed commit of the following:
PradeepKadubandi d586d6c
Squashed commit of the following:
PradeepKadubandi 995c0fd
Support for getting runtime state dump when the orchestration runs.
PradeepKadubandi 6a0ea7d
Squashed commit of the following:
PradeepKadubandi b7e428e
Squashed commit of the following:
PradeepKadubandi d5cf4f9
Squashed commit of the following:
PradeepKadubandi 20e6e0e
Refactor rename the property.
PradeepKadubandi cee35be
Minor ETW Fix and Improvements.
PradeepKadubandi 0246b2f
Adding retry on transient exceptions remaining transactions which wer…
PradeepKadubandi edd12e6
Minor change in the order of statements in a transaction.
PradeepKadubandi 5194844
A test tooling app to inspect stuck orchestrations - this is just a c…
PradeepKadubandi df72dd5
Nit code changes I missed in my last checkin for tooling app - adding…
PradeepKadubandi 826eb60
Removing some ETW logging statements as these were needed before when…
PradeepKadubandi cd4d700
There is a problem detected in failover testing with fabric state tra…
PradeepKadubandi 6cec92b
Fixing an issue identified in failover testing where some orchestrati…
PradeepKadubandi 272db89
Correct way to fix stuck orchestrations issue (this was a slight risk…
PradeepKadubandi 32c5223
Increasing the stabilization wait timeout so that test runs more reli…
PradeepKadubandi 81a70e9
Revert "Correct way to fix stuck orchestrations issue (this was a sli…
PradeepKadubandi 5f1beaa
Updating the code comments with complete explanation (which is same a…
PradeepKadubandi f874818
Hmm - another observeation, Release work item can be called even when…
PradeepKadubandi 6cc6970
Improving the WaitForOrchestration logic to avoid polling each 2 seco…
PradeepKadubandi 4ee8a4a
Fixing a null reference exception observed in stress run.
PradeepKadubandi ccf1654
I missed one place where the transaction to update the state to compl…
PradeepKadubandi 3f1d721
Upgrade the sfproj for fabric 1.6.0 tooling package.
PradeepKadubandi e2222b5
Changes for terminating a stuck orchestration to work.
PradeepKadubandi e2a32c0
ETW improvements to log execution id in addition to instance id.
PradeepKadubandi 3cb56ff
Just adding to comments to indicate the latest status.
PradeepKadubandi f96086f
Fixing an issue observed in stress test - it's possible that an orche…
PradeepKadubandi 3635a27
Moving the implementation of IFabricProviderClient to a separate impl…
PradeepKadubandi 6482106
Add a test to try ForceTerminate twice, this validates that it does n…
PradeepKadubandi 602e466
Minor change to failover program. (I am hoping this helps in intermit…
PradeepKadubandi c8d10d9
Fixing a subtle bug with TryEnqueueSession in the way it uses 'AddOrU…
PradeepKadubandi 3bd3bd7
Add configuration for enabling DTFX framework traces for test service…
PradeepKadubandi 0c283b1
Fix for the issue where issuing TerminateInstanceAsync twice from cli…
PradeepKadubandi 8bb791c
Now that the fix for multiple termination commands issue is made in m…
PradeepKadubandi f7c54ca
Remove ThrowIfStopped method because this is not really adding any va…
PradeepKadubandi 5c6be3c
Changes to Event Source class to make it visible for event listners.
PradeepKadubandi 8cf1be7
Upgrading the fabric SDK used to build the fabric test application.
PradeepKadubandi 262b314
Merge branch 'master' into 'vnext_servicefabric' branch on (with name…
PradeepKadubandi 13857b9
Removing a file which was not needed after the merge.
PradeepKadubandi addb210
Adding a readme for fabric provider.
PradeepKadubandi c67d56d
Changes to make the DurableTask.ServiceFabric project build.
PradeepKadubandi baa4b65
Changes to make the entire solution build.
PradeepKadubandi 5f45e85
This was needed to make the tests pass!
PradeepKadubandi 9450233
PR Comment1: Move the usings in all files inside the namespace statem…
18d7090
CR comment : Move usings inside namespace.
PradeepKadubandi dd3e02d
CR Comment : Skipping InternalsVisibleTo attributes when signing asse…
PradeepKadubandi 6cba647
Minor fix needed to make the tests pass!
PradeepKadubandi de31204
Support for ContinueForNew feature. (Querying for orchestration state…
PradeepKadubandi File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -11,6 +11,7 @@ | |
| bin/ | ||
| obj/ | ||
| packages/ | ||
| pkg/ | ||
| TestResults/ | ||
|
|
||
| # Packages # | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,142 @@ | ||
| | ||
| Microsoft Visual Studio Solution File, Format Version 12.00 | ||
| # Visual Studio 15 | ||
| VisualStudioVersion = 15.0.26403.7 | ||
| MinimumVisualStudioVersion = 10.0.40219.1 | ||
| Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{501E1168-418C-4832-B88C-617735BD02C9}" | ||
| ProjectSection(SolutionItems) = preProject | ||
| .nuget\NuGet.Config = .nuget\NuGet.Config | ||
| .nuget\NuGet.exe = .nuget\NuGet.exe | ||
| .nuget\NuGet.targets = .nuget\NuGet.targets | ||
| EndProjectSection | ||
| EndProject | ||
| Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{0AE737F5-4AA1-402F-A61C-258CA00E282C}" | ||
| EndProject | ||
| Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test", "Test", "{5177D1DE-AC86-41B9-8D04-41988A7C2208}" | ||
| EndProject | ||
| Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "TestFabricApplication", "TestFabricApplication", "{507C0CC2-082F-4EB7-8984-E2648976EB04}" | ||
| EndProject | ||
| Project("{A07B5EB6-E848-4116-A8D0-A826331D98C6}") = "TestFabricApplication", "Test\TestFabricApplication\TestFabricApplication\TestFabricApplication.sfproj", "{CA924781-AE52-45FA-A817-C39C822FB782}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestStatefulService", "Test\TestFabricApplication\TestStatefulService\TestStatefulService.csproj", "{95D6C9C7-F7A0-4125-840D-1854BEC24978}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestApplication.Common", "Test\TestFabricApplication\TestApplication.Common\TestApplication.Common.csproj", "{EA90334D-3194-4266-81EB-EECA9C760315}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DurableTask.ServiceFabric", "src\DurableTask.ServiceFabric\DurableTask.ServiceFabric.csproj", "{5C617B24-4902-4992-8F71-AB14F00B74A8}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DurableTask.ServiceFabric.Test", "Test\DurableTask.ServiceFabric.Test\DurableTask.ServiceFabric.Test.csproj", "{EDC63DDB-8397-4AEC-BF54-6395B2527075}" | ||
| EndProject | ||
| Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DurableTask.Test.Orchestrations", "Test\DurableTask.Test.Orchestrations\DurableTask.Test.Orchestrations.csproj", "{2BC2A5AD-4200-41B9-A034-332BB1D7187B}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DurableTask.ServiceFabric.Failover.Tests", "Test\DurableTask.ServiceFabric.Stress.Tests\DurableTask.ServiceFabric.Failover.Tests.csproj", "{BE4624F3-E565-428F-9EED-E6847530746A}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DurableTask.ServiceFabric.UnitTests", "Test\DurableTask.ServiceFabric.UnitTests\DurableTask.ServiceFabric.UnitTests.csproj", "{31C9C932-6376-46D4-A68A-A0A7F2726D38}" | ||
| EndProject | ||
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DurableTask.ServiceFabric.Tests.Tooling", "Test\DurableTask.ServiceFabric.Tests.Tooling\DurableTask.ServiceFabric.Tests.Tooling.csproj", "{ED6817FD-A301-40CA-B287-1C40E7AAC7D1}" | ||
| EndProject | ||
| Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DurableTask.Core", "src\DurableTask.Core\DurableTask.Core.csproj", "{6B386E8F-20EB-43DE-BBD7-6408A232B4BA}" | ||
| EndProject | ||
| Global | ||
| GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
| Debug|Any CPU = Debug|Any CPU | ||
| Debug|x64 = Debug|x64 | ||
| Release|Any CPU = Release|Any CPU | ||
| Release|x64 = Release|x64 | ||
| EndGlobalSection | ||
| GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Debug|Any CPU.ActiveCfg = Debug|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Debug|x64.ActiveCfg = Debug|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Debug|x64.Build.0 = Debug|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Debug|x64.Deploy.0 = Debug|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Release|Any CPU.ActiveCfg = Release|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Release|x64.ActiveCfg = Release|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Release|x64.Build.0 = Release|x64 | ||
| {CA924781-AE52-45FA-A817-C39C822FB782}.Release|x64.Deploy.0 = Release|x64 | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978}.Debug|Any CPU.ActiveCfg = Debug|x64 | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978}.Debug|x64.ActiveCfg = Debug|x64 | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978}.Debug|x64.Build.0 = Debug|x64 | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978}.Release|Any CPU.ActiveCfg = Release|x64 | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978}.Release|x64.ActiveCfg = Release|x64 | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978}.Release|x64.Build.0 = Release|x64 | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Debug|x64.ActiveCfg = Debug|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Debug|x64.Build.0 = Debug|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Release|Any CPU.Build.0 = Release|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Release|x64.ActiveCfg = Release|Any CPU | ||
| {EA90334D-3194-4266-81EB-EECA9C760315}.Release|x64.Build.0 = Release|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Debug|x64.ActiveCfg = Debug|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Debug|x64.Build.0 = Debug|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Release|Any CPU.Build.0 = Release|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Release|x64.ActiveCfg = Release|Any CPU | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8}.Release|x64.Build.0 = Release|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Debug|x64.ActiveCfg = Debug|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Debug|x64.Build.0 = Debug|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Release|Any CPU.Build.0 = Release|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Release|x64.ActiveCfg = Release|Any CPU | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075}.Release|x64.Build.0 = Release|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Debug|x64.ActiveCfg = Debug|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Debug|x64.Build.0 = Debug|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Release|Any CPU.Build.0 = Release|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Release|x64.ActiveCfg = Release|Any CPU | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B}.Release|x64.Build.0 = Release|Any CPU | ||
| {BE4624F3-E565-428F-9EED-E6847530746A}.Debug|Any CPU.ActiveCfg = Debug|x64 | ||
| {BE4624F3-E565-428F-9EED-E6847530746A}.Debug|x64.ActiveCfg = Debug|x64 | ||
| {BE4624F3-E565-428F-9EED-E6847530746A}.Debug|x64.Build.0 = Debug|x64 | ||
| {BE4624F3-E565-428F-9EED-E6847530746A}.Release|Any CPU.ActiveCfg = Release|x64 | ||
| {BE4624F3-E565-428F-9EED-E6847530746A}.Release|x64.ActiveCfg = Release|x64 | ||
| {BE4624F3-E565-428F-9EED-E6847530746A}.Release|x64.Build.0 = Release|x64 | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Debug|x64.ActiveCfg = Debug|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Debug|x64.Build.0 = Debug|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Release|Any CPU.Build.0 = Release|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Release|x64.ActiveCfg = Release|Any CPU | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38}.Release|x64.Build.0 = Release|Any CPU | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1}.Debug|Any CPU.ActiveCfg = Debug|x64 | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1}.Debug|x64.ActiveCfg = Debug|x64 | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1}.Debug|x64.Build.0 = Debug|x64 | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1}.Release|Any CPU.ActiveCfg = Release|x64 | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1}.Release|x64.ActiveCfg = Release|x64 | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1}.Release|x64.Build.0 = Release|x64 | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Debug|x64.ActiveCfg = Debug|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Debug|x64.Build.0 = Debug|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Release|Any CPU.Build.0 = Release|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Release|x64.ActiveCfg = Release|Any CPU | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA}.Release|x64.Build.0 = Release|Any CPU | ||
| EndGlobalSection | ||
| GlobalSection(SolutionProperties) = preSolution | ||
| HideSolutionNode = FALSE | ||
| EndGlobalSection | ||
| GlobalSection(NestedProjects) = preSolution | ||
| {507C0CC2-082F-4EB7-8984-E2648976EB04} = {5177D1DE-AC86-41B9-8D04-41988A7C2208} | ||
| {CA924781-AE52-45FA-A817-C39C822FB782} = {507C0CC2-082F-4EB7-8984-E2648976EB04} | ||
| {95D6C9C7-F7A0-4125-840D-1854BEC24978} = {507C0CC2-082F-4EB7-8984-E2648976EB04} | ||
| {EA90334D-3194-4266-81EB-EECA9C760315} = {507C0CC2-082F-4EB7-8984-E2648976EB04} | ||
| {5C617B24-4902-4992-8F71-AB14F00B74A8} = {0AE737F5-4AA1-402F-A61C-258CA00E282C} | ||
| {EDC63DDB-8397-4AEC-BF54-6395B2527075} = {5177D1DE-AC86-41B9-8D04-41988A7C2208} | ||
| {2BC2A5AD-4200-41B9-A034-332BB1D7187B} = {5177D1DE-AC86-41B9-8D04-41988A7C2208} | ||
| {BE4624F3-E565-428F-9EED-E6847530746A} = {5177D1DE-AC86-41B9-8D04-41988A7C2208} | ||
| {31C9C932-6376-46D4-A68A-A0A7F2726D38} = {5177D1DE-AC86-41B9-8D04-41988A7C2208} | ||
| {ED6817FD-A301-40CA-B287-1C40E7AAC7D1} = {5177D1DE-AC86-41B9-8D04-41988A7C2208} | ||
| {6B386E8F-20EB-43DE-BBD7-6408A232B4BA} = {0AE737F5-4AA1-402F-A61C-258CA00E282C} | ||
| EndGlobalSection | ||
| GlobalSection(ExtensibilityGlobals) = postSolution | ||
| EnterpriseLibraryConfigurationToolBinariesPath = packages\TransientFaultHandling.Core.5.1.1209.1\lib\NET4 | ||
| SolutionGuid = {AB50E5E3-EAB4-4EBA-AE13-551034A521F8} | ||
| EndGlobalSection | ||
| EndGlobal |
63 changes: 63 additions & 0 deletions
63
Test/DurableTask.ServiceFabric.Stress.Tests/ChaosRunner.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| // ---------------------------------------------------------------------------------- | ||
| // Copyright Microsoft Corporation | ||
| // Licensed under the Apache License, Version 2.0 (the "License"); | ||
| // you may not use this file except in compliance with the License. | ||
| // You may obtain a copy of the License at | ||
| // http://www.apache.org/licenses/LICENSE-2.0 | ||
| // Unless required by applicable law or agreed to in writing, software | ||
| // distributed under the License is distributed on an "AS IS" BASIS, | ||
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
| // See the License for the specific language governing permissions and | ||
| // limitations under the License. | ||
| // ---------------------------------------------------------------------------------- | ||
|
|
||
| namespace DurableTask.ServiceFabric.Failover.Tests | ||
| { | ||
| using System; | ||
| using System.ComponentModel; | ||
| using System.Fabric; | ||
| using System.Fabric.Testability.Scenario; | ||
| using System.Threading; | ||
| using System.Threading.Tasks; | ||
|
|
||
| class ChaosRunner | ||
| { | ||
| public async Task RunFailoverScenario(TimeSpan timeToRun, CancellationToken token) | ||
| { | ||
| var partitionSelector = PartitionSelector.PartitionKeyOf(new Uri("fabric:/TestFabricApplication/TestStatefulService"), 1); | ||
| TimeSpan maxServiceStabilizationTimeout = TimeSpan.FromMinutes(3); | ||
| var client = new FabricClient("localhost:19000"); | ||
|
|
||
| var parameters = new FailoverTestScenarioParameters( | ||
| partitionSelector, | ||
| timeToRun, | ||
| maxServiceStabilizationTimeout); | ||
|
|
||
| Console.WriteLine($"FailoverTest Info : TimeToRun = {parameters.TimeToRun}"); | ||
| Console.WriteLine($"FailoverTest Info : WaitTimeBetweenFaults = {parameters.WaitTimeBetweenFaults}"); | ||
| Console.WriteLine($"FailoverTest Info : MaxServiceStabilizationTimeout = {parameters.MaxServiceStabilizationTimeout}"); | ||
|
|
||
| var testScenario = new FailoverTestScenario(client, parameters); | ||
| testScenario.ProgressChanged += OnTestProgressChanged; | ||
|
|
||
| try | ||
| { | ||
| await testScenario.ExecuteAsync(token); | ||
| } | ||
| catch (TaskCanceledException) | ||
| { | ||
| } | ||
| catch (AggregateException ae) | ||
| { | ||
| Console.Error.WriteLine($"{DateTime.UtcNow} : Exception inside the failover test scenario : {ae.InnerException}"); | ||
| } | ||
| } | ||
|
|
||
| private void OnTestProgressChanged(object sender, ProgressChangedEventArgs e) | ||
| { | ||
| var utcNow = DateTime.UtcNow; | ||
| Console.WriteLine($"{utcNow} : FailoverTest Progress Percentage {e.ProgressPercentage}"); | ||
| Console.WriteLine($"{utcNow} : FailoverTest UserState {e.UserState}"); | ||
| } | ||
| } | ||
| } |
118 changes: 118 additions & 0 deletions
118
Test/DurableTask.ServiceFabric.Stress.Tests/DurableTask.ServiceFabric.Failover.Tests.csproj
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,118 @@ | ||
| <?xml version="1.0" encoding="utf-8"?> | ||
| <Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
| <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> | ||
| <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory),DurableTask.sln))\tools\DurableTask.props" /> | ||
| <PropertyGroup> | ||
| <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
| <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
| <ProjectGuid>{BE4624F3-E565-428F-9EED-E6847530746A}</ProjectGuid> | ||
| <OutputType>Exe</OutputType> | ||
| <AppDesignerFolder>Properties</AppDesignerFolder> | ||
| <RootNamespace>DurableTask.ServiceFabric.Failover.Tests</RootNamespace> | ||
| <AssemblyName>DurableTask.ServiceFabric.Failover.Tests</AssemblyName> | ||
| <FileAlignment>512</FileAlignment> | ||
| <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> | ||
| <TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion> | ||
| <TargetFrameworkProfile /> | ||
| </PropertyGroup> | ||
| <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> | ||
| <PlatformTarget>x64</PlatformTarget> | ||
| <DebugSymbols>true</DebugSymbols> | ||
| <DebugType>full</DebugType> | ||
| <Optimize>false</Optimize> | ||
| <OutputPath>bin\Debug\</OutputPath> | ||
| <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
| <ErrorReport>prompt</ErrorReport> | ||
| <WarningLevel>4</WarningLevel> | ||
| <Prefer32Bit>false</Prefer32Bit> | ||
| </PropertyGroup> | ||
| <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> | ||
| <PlatformTarget>x64</PlatformTarget> | ||
| <DebugType>pdbonly</DebugType> | ||
| <Optimize>true</Optimize> | ||
| <OutputPath>bin\Release\</OutputPath> | ||
| <DefineConstants>TRACE</DefineConstants> | ||
| <ErrorReport>prompt</ErrorReport> | ||
| <WarningLevel>4</WarningLevel> | ||
| <Prefer32Bit>false</Prefer32Bit> | ||
| </PropertyGroup> | ||
| <ItemGroup> | ||
| <Reference Include="Microsoft.ServiceFabric.Data"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.Data.2.5.216\lib\net45\Microsoft.ServiceFabric.Data.dll</HintPath> | ||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="Microsoft.ServiceFabric.Data.Interfaces"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.Data.2.5.216\lib\net45\Microsoft.ServiceFabric.Data.Interfaces.dll</HintPath> | ||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="Microsoft.ServiceFabric.FabricTransport, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=AMD64"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.FabricTransport.Internal.2.5.216\lib\net45\Microsoft.ServiceFabric.FabricTransport.dll</HintPath> | ||
| </Reference> | ||
| <Reference Include="Microsoft.ServiceFabric.Internal"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.5.5.216\lib\net45\Microsoft.ServiceFabric.Internal.dll</HintPath> | ||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="Microsoft.ServiceFabric.Internal.Strings"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.5.5.216\lib\net45\Microsoft.ServiceFabric.Internal.Strings.dll</HintPath> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This version is quite old, can this be udaed to newer? |
||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="Microsoft.ServiceFabric.Services"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.Services.2.5.216\lib\net45\Microsoft.ServiceFabric.Services.dll</HintPath> | ||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="Microsoft.ServiceFabric.Services.Remoting, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=AMD64"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.Services.Remoting.2.5.216\lib\net45\Microsoft.ServiceFabric.Services.Remoting.dll</HintPath> | ||
| </Reference> | ||
| <Reference Include="ServiceFabricServiceModel"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.Services.2.5.216\lib\net45\ServiceFabricServiceModel.dll</HintPath> | ||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="System" /> | ||
| <Reference Include="System.Core" /> | ||
| <Reference Include="System.Fabric, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=AMD64"> | ||
| <HintPath>..\..\packages\Microsoft.ServiceFabric.5.5.216\lib\net45\System.Fabric.dll</HintPath> | ||
| <Private>True</Private> | ||
| </Reference> | ||
| <Reference Include="System.Runtime.Serialization" /> | ||
| <Reference Include="System.ServiceModel" /> | ||
| <Reference Include="System.Xml.Linq" /> | ||
| <Reference Include="System.Data.DataSetExtensions" /> | ||
| <Reference Include="Microsoft.CSharp" /> | ||
| <Reference Include="System.Data" /> | ||
| <Reference Include="System.Net.Http" /> | ||
| <Reference Include="System.Xml" /> | ||
| </ItemGroup> | ||
| <ItemGroup> | ||
| <Compile Include="ChaosRunner.cs" /> | ||
| <Compile Include="OrchestrationRunner.cs" /> | ||
| <Compile Include="Program.cs" /> | ||
| <Compile Include="Properties\AssemblyInfo.cs" /> | ||
| <Compile Include="Utils.cs" /> | ||
| </ItemGroup> | ||
| <ItemGroup> | ||
| <None Include="app.config" /> | ||
| <None Include="packages.config" /> | ||
| </ItemGroup> | ||
| <ItemGroup> | ||
| <ProjectReference Include="..\..\src\DurableTask.Core\DurableTask.Core.csproj"> | ||
| <Project>{6B386E8F-20EB-43DE-BBD7-6408A232B4BA}</Project> | ||
| <Name>DurableTask.Core</Name> | ||
| </ProjectReference> | ||
| <ProjectReference Include="..\DurableTask.Test.Orchestrations\DurableTask.Test.Orchestrations.csproj"> | ||
| <Project>{2bc2a5ad-4200-41b9-a034-332bb1d7187b}</Project> | ||
| <Name>DurableTask.Test.Orchestrations</Name> | ||
| </ProjectReference> | ||
| <ProjectReference Include="..\TestFabricApplication\TestApplication.Common\TestApplication.Common.csproj"> | ||
| <Project>{ea90334d-3194-4266-81eb-eeca9c760315}</Project> | ||
| <Name>TestApplication.Common</Name> | ||
| </ProjectReference> | ||
| </ItemGroup> | ||
| <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
| <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
| Other similar extension points exist, see Microsoft.Common.targets. | ||
| <Target Name="BeforeBuild"> | ||
| </Target> | ||
| <Target Name="AfterBuild"> | ||
| </Target> | ||
| --> | ||
| </Project> | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should at least switch to the new csproj format, would be really weird bring in the old format to master at this point.