Skip to content
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

Build: .NET Core builds fail to copy some dependencies into appropriate release folder #3150

Closed
Aaronontheweb opened this issue Oct 12, 2017 · 0 comments · Fixed by #3158
Closed

Comments

@Aaronontheweb
Copy link
Member

Within the past couple of days, all of the Akka.Persistence.Sqlite specs on .NET Core on Windows have been failing with the following error:

[RunTestsNetCore] [INFO][10/12/2017 4:13:41 AM][Thread 0009][akka://SqliteSnapshotStoreSpec/system/akka.persistence.snapshot-store.sqlite] Message SaveSnapshot from akka://SqliteSnapshotStoreSpec/system/testActor11 to akka://SqliteSnapshotStoreSpec/system/akka.persistence.snapshot-store.sqlite was not delivered. 1 dead letters encountered.
[04:13:44]    [Akka.Persistence.Sqlite.Tests.SqliteSnapshotStoreSpec.SnapshotStore_should_not_load_a_snapshot_given_non_matching_timestamp_criteria] Failed: Timeout 00:00:03 while waiting for a message of type Akka.Persistence.SaveSnapshotSuccess 
Expected: True
Actual:   False
   at Akka.TestKit.Xunit2.XunitAssertions.Fail(String format, Object[] args) in D:\work\edbce350daf6a08d\src\contrib\testkits\Akka.TestKit.Xunit2\XunitAssertions.cs:line 27
   at Akka.TestKit.TestKitBase.InternalExpectMsgEnvelope[T](Nullable`1 timeout, Action`2 assert, String hint, Boolean shouldLog) in D:\work\edbce350daf6a08d\src\core\Akka.TestKit\TestKitBase_Expect.cs:line 241
   at Akka.TestKit.TestKitBase.InternalExpectMsgEnvelope[T](Nullable`1 timeout, Action`1 msgAssert, Action`1 senderAssert, String hint) in D:\work\edbce350daf6a08d\src\core\Akka.TestKit\TestKitBase_Expect.cs:line 224
   at Akka.Persistence.TCK.Snapshot.SnapshotStoreSpec.<WriteSnapshots>d__13.MoveNext() in D:\work\edbce350daf6a08d\src\core\Akka.Persistence.TCK\Snapshot\SnapshotStoreSpec.cs:line 80
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Akka.Persistence.TCK.Snapshot.SnapshotStoreSpec.Initialize() in D:\work\edbce350daf6a08d\src\core\Akka.Persistence.TCK\Snapshot\SnapshotStoreSpec.cs:line 66

In essence, the Sqlite3.dll cannot be found. This issue does not occur for the build under .NET 4.5.2.

Ditto with the .NET Core multi-node specs on Windows: can't find the Hyperion DLL either:

[WARNING][10/12/2017 4:16:23 AM][Thread 0001][ActorSystem(NoteTestRunner-0)] NewtonSoftJsonSerializer has been detected as a default serializer. It will be obsoleted in Akka.NET starting from version 1.5 in the favor of Hyperion (for more info visit: http://getakka.net/docs/Serialization#how-to-setup-hyperion-as-default-serializer ). If you want to suppress this message set HOCON `akka.suppress-json-serializer-warning` config flag to on.
Running specs for Akka.Cluster.Sharding.Tests.MultiNode.dll [D:\work\edbce350daf6a08d\src\contrib\cluster\Akka.Cluster.Sharding.Tests.MultiNode\bin\Release\netcoreapp1.1\Akka.Cluster.Sharding.Tests.MultiNode.dll]

[Node1:controller][FAIL] Akka.Cluster.Sharding.Tests.ClusterShardingGetStateSpec.Inspecting_cluster_sharding_state_specs
[Node1:controller][FAIL-EXCEPTION] Type: System.IO.FileNotFoundException
--> [Node1:controller][FAIL-EXCEPTION] Message: Could not load file or assembly 'Hyperion, Version=0.9.6.0, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
--> [Node1:controller][FAIL-EXCEPTION] StackTrace:    at Akka.Serialization.HyperionSerializer..ctor(ExtendedActorSystem system, HyperionSerializerSettings settings)

[ERROR][10/12/2017 4:16:33 AM][Thread 0006][akka://NoteTestRunner-0/system/IO-TCP/$a] Monitored actor [[akka://NoteTestRunner-0/user/$a#1941232185]] terminated
Cause: Akka.Actor.DeathPactException: Monitored actor [[akka://NoteTestRunner-0/user/$a#1941232185]] terminated
   at Akka.Actor.ActorBase.Unhandled(Object message) in D:\work\edbce350daf6a08d\src\core\Akka\Actor\ActorBase.cs:line 193
   at Akka.Actor.ActorBase.AroundReceive(Receive receive, Object message) in D:\work\edbce350daf6a08d\src\core\Akka\Actor\ActorBase.cs:line 158
   at Akka.Actor.ActorCell.ReceiveMessage(Object message) in D:\work\edbce350daf6a08d\src\core\Akka\Actor\ActorCell.DefaultMessages.cs:line 179
   at Akka.Actor.ActorCell.AutoReceiveMessage(Envelope envelope) in D:\work\edbce350daf6a08d\src\core\Akka\Actor\ActorCell.DefaultMessages.cs:line 145
   at Akka.Actor.ActorCell.Invoke(Envelope envelope) in D:\work\edbce350daf6a08d\src\core\Akka\Actor\ActorCell.DefaultMessages.cs:line 77

As it turns out, there is a straightforward explanation for this... These DLLs aren't being copied out to the netcore1.1 output folder in either of these cases:

.NET 4.5.2 output folder

image

.NETCoreApp1.1 output folder

image

We've not changed anything in our build system or environment that would cause this in our most recent PRs, insofar as I'm aware. Must be something that updated in the background as part of our automated scripts. Will be looking into this.

@Aaronontheweb Aaronontheweb added this to the 1.3.2 milestone Oct 12, 2017
Aaronontheweb added a commit to Aaronontheweb/akka.net that referenced this issue Oct 16, 2017
Aaronontheweb added a commit to Aaronontheweb/akka.net that referenced this issue Oct 17, 2017
…loaded dependencies

trigger full rebuild when common.props is modified
skipped buggy .NET Core specs
Danthar pushed a commit that referenced this issue Oct 18, 2017
…endencies

trigger full rebuild when common.props is modified
skipped buggy .NET Core specs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant