* Logging of toString of unknown classes should be avoided, since it could be huge
* Logging for EventSourcedBehaviorImpl includes the PersistentRepr,
for example:
```
Received Journal response: WriteMessageSuccess(PersistentImpl(Confirmed(2,q1,1583924066958),6,pid-6),,false,null,831cd256-9bc5-40e3-b84c-4a2d34dde643,0),9)
```
* removing without deprecation because this can't be used anywhere
* persistence view has been removed years ago, and those config properties
doesn't even exist in reference.conf so accessing this would throw exception
* added to EventEnvolope and therefore include case class stuff
for binary compatibility
* also added in PersistentRepr, which for example is the serialized format in
LeveldbJournal
* Add convenience method to start timer without key
It is probably common that there is no need to allow different timers
that send the same message, and this makes that more convenient to write.
Updated one method to gather feedback, if we like the change I can apply
it to the others as well.
* Add alternative to all typed timer API's
Update java/scaladoc, update tests
Not updated classic actors and FSM API's
* some cluster logging improvements
* most logger names are actually good, when using ActorLogging since
config can be setup on the package (prefix)
* override logSource when StageLogging is used
* replace system.log with more specific logger
* lastSequenceNr should reflect the snapshot sequence number and not start
at 0 when there was no journal to begin with.
* Use LevelDBJournal in Test Case
The test case now properly simulates a recovery from a snapshot without
a journal.
(cherry picked from commit df2a1d8a52e13aa09edd20bcf95ff617cd7acf9c)
* Config to exclude class prefix from serialize-messages, #24273
* Adding no-serialization-verification-needed-class-prefix, with "akka." included
by default
* This is important now when we disable Java serialization by default.
There will be many complaints about Akka internal classes that are not marked with
NoSerializationVerificationNeeded, and we can't really sprinkle that everywhere.
* Not removing NoSerializationVerificationNeeded usage in Akka classes because that
may break bin compat, even though it's needed any more.
* fix DisabledJavaSerializerWarningSpec
* Remove extensions to protobuf config checker messages
AFAICT these are never serialized/deserialized. Removing as they use a
deprecated feature of protobuf (required fields in extensions)
* Remove extensions from protobuf
* akka.actor.allow-java-serialization = off
* Moved primitive (Long, Int, String, ByteString) serializers
from akka-remote to akka-actor since they had no dependency
and are useful also in local systems, e.g. persistence.
* e.g. needed for persistence-tck
* less allow-java-serialization=on in tests
* CborSerializable in Jackson/test module for ease of use
* JavaSerializable for Java serialization in tests, already in akka-testkit,
but misconfigured
* Made tests pass
* allow-java-serialization=on in akka-persistence
* allow-java-serialization=on in classic remoting tests
* JavaSerializable and CborSerializable in other remoting tests
* Added serialization for
* Boolean
* java.util.concurrent.TimeoutException, AskTimeoutException
* support for testing serialization with the inmem journal
* utility to verifySerialization, in SerializationTestKit
* remove AccountExampleWithCommandHandlersInState becuase not possible to serialize State when it's not static
* Effect() is factory in EventSourcedBehavior class
* test the account examples
* SharedLeveldbJournal.configToEnableJavaSerializationForTest
* support for exceptions from remote deployed child actors
* fallback to akka.remote.serialization.ThrowableNotSerializableException
if exception is not serializable when wrapped in system messages from
remote deployed child actors and Status.Failure messages
* it's implemented in `WrappedPayloadSupport.payloadBuilder`
* update reference documentation
* serialize-messages=off in most places, separate ticket for
improving or removing that feature
* migration guide, including description of rolling update
* fix 2.13 compiler error
* minor review feedback
* previous `schedule` method is trying to maintain a fixed average frequency
over time, but that can result in undesired bursts of scheduled tasks after a long
GC or if the JVM process has been suspended, same with all other periodic
scheduled message sending via various Timer APIs
* most of the time "fixed delay" is more desirable
* we can't just change because it's too big behavioral change and some might
depend on previous behavior
* deprecate the old `schedule` and introduce new `scheduleWithFixedDelay`
and `scheduleAtFixedRate`, when fixing the deprecation warning users should
make a concious decision of which behavior to use (scheduleWithFixedDelay in
most cases)
* Streams
* SchedulerSpec
* test both fixed delay and fixed rate
* TimerSpec
* FSM and PersistentFSM
* mima
* runnable as second parameter list, also in typed.Scheduler
* IllegalStateException vs SchedulerException
* deprecated annotations
* api and reference docs, all places
* migration guide