@sergeybykov sergeybykov released this Dec 13, 2018 · 33 commits to master since this release

Assets 2

This release is primarily about bringing support for ACID cross-grain transactions to production-ready quality. Other improvements and fixes are listed below.

This release includes no breaking changes and is backward compatible with 2.0.* releases, which allows for in-place upgrade of a running cluster.

Warning: If you are using Orleans with .NET Core 2.1, do not enable TieredCompilation for Orleans silo and client projects. We recently discovered a CLR bug that is breaking Orleans when TieredCompilation is enabled. See #4990 for more details.

Breaking changes

  • None

  • Non-breaking improvements

    • Avoid lazy initialization when disposing OutboundMessageQueue (#5049)
    • CodeGen: Fix race in Orleans.sln build (#5035)
    • Change Orleans.TelemetryConsumers.NewRelic to target .NET Standard (#5044) (#5047)
    • Typo and spelling check XML doc and strings. A to E. #Hacktoberfest (#5051, #5055, #5060, #5065)
    • Filter static types from list of types known to serializer (#5036)
    • fixed HostedClient method name in exception text (#5057)
    • Adding global alias for binding flags in generator (#5068)
    • Allow placement strategies to skip directory registration (#5074)
    • CodeGen: Warn users when a type inherits from a type defined in a reference assembly (#5031)
    • IMessageCenter.WaitMessage support cancellation (#5072)
    • Allow placement strategies to specify deterministic activation ids (#5082)
    • Add Orleans.Transaction.Testkit project structure (#5103)
    • Internal transactional states are now immutable (#5149)
    • Log warning when ClusterMembershipOptions.ValidateInitialConnectivity=true (#5148)
    • Start using Span and new language features for increasing Orleans perfomance (#5061)
    • Lock worker error handling improvements (#5175)
    • Add TimerManager as Task.Delay replacement (#5201)
    • Cleanup Transaction Agent (#5188)
    • Replace Task.RunSynchronously usage with alternative (#5204)
    • fix multicluster registration test (#5186)
    • Fix AzureSilo startup (#5213)
    • UniqueKey serialization optimizations (#5193)
    • Expedite TypeManager refresh upon cluster membership change (#5233)
    • Ensure OrleansProviders is added as an ApplicationPart in streams providers (#5234)
    • Update ZooKeeperNetEx package to 3.4.12.1 (#5236)
    • Include exception in TryForwardRequest info log (#5238)
    • Improve logging of stream delivery errors. (#5230)
  • Non-breaking bug fixes

    • Resolve transaction on abort. (#4996)
    • Avoid modification of interned SiloAddresses in Consul and ZooKeeper gateway providers (#5054)
    • Partial fix for transaction recovery tests (#5070)
    • Revert #4382 (#5086, #5088)
    • Fixed bug in transaction confirmation logic (#5098)
    • Fix rootKvFolder is not backward compatible (#5100)
    • Fix test cluster deploy deadlock (#5167)
    • Fix drain logic in ThreadPoolExecutor (#5208)
    • Don't throw SiloUnavailableException when a gateway stops (#5209)
    • Fix call chain reentrancy (#5145)
    • Support ProxyGatewayEndpoint from legacy configuration (#5214)
    • Add GSI cache maintentance and tests (#5184)