Skip to content

Releases: replicant4j/replicant

v6.127

03 Oct 01:24
2012005
Compare
Choose a tag to compare

Changes in this release:

  • Remove CacheType.EXTERNAL as no longer in use.
  • Cascade cache invalidations to dependent cached type graphs to avoid failure scenario when a chain of cached graphs as an invalidation in internal node of chain.

v6.126

27 Sep 03:44
273fe49
Compare
Choose a tag to compare

Changes in this release:

  • Reduce debug logging level around subscribing to "required channels".
  • Avoid attempting to subscribe to required type channel if already subscribed.

v6.125

20 Sep 05:58
f51c49f
Compare
Choose a tag to compare

Changes in this release:

  • Pause arez when changing the replicant connection, otherwise if the server initiates a close and the client has pending requests then the code will react during subscription purge and generate an error while the connection is null but the state has yet to be updated.
  • Ensure non-cached required type graphs are transmitted to the client.

v6.123

02 May 05:11
943bf27
Compare
Choose a tag to compare

Changes in this release:

  • Update the org.realityforge.zemeckis artifact to version 0.14.
  • Update the org.realityforge.react4j artifacts to version 0.190.
  • Update the org.realityforge.arez artifacts to version 0.205.
  • Update the org.realityforge.grim artifacts to version 0.09.
  • Upgrade to require JDK 17 as a baseline.

v6.122

15 Apr 01:55
2583bbb
Compare
Choose a tag to compare

Changes in this release:

  • Modify AbstractSessionContextImpl.generateTempIdTable(...) so that it chunks the insertions into the temp id table to work around limitations in some versions of SQL server of a maximum of 1000 rows in an INSERT statement.

v6.121

07 Apr 07:05
a679eef
Compare
Choose a tag to compare

Changes in this release:

  • Use tryLock() rather than lock in implementation of removeClosedSessions(), pingSessions(), removeAllSessions() in ReplicantSessionManagerImpl to avoid deadlocks. These actions will just be skipped if they would otherwise cause blocking.
  • Avoid attempting bulk subscribe attempts submitted to the server for an existing subscription a matching filter.
  • Generate a AttemptedToUpdateStaticFilterException exception when attempting to update a channel with a static filter.
  • Rework the way we expand changes for processing so that we break it down into cycles and for each cycle we:
    • collect pending channel links
    • select the highest priority channel with pending links
    • select the channel links for the selected channel and perform a bulk subscribe for all channel links with the same channel id
  • Add isExplicitSubscribe parameter to bulkCollectDataForSubscribe(...) and bulkCollectDataForSubscriptionUpdate(...) on ReplicantSessionManagerImpl to enable controlling the behaviour in generated domgen code.

v6.120

01 Apr 04:50
7980fd9
Compare
Choose a tag to compare

Changes in this release:

  • Expose the "productionMode" compilation time parameter using Replicant.isProductionMode().
  • Add SystemSchema.getInwardChannelLinks(int), SystemSchema.getOutwardChannelLinks(int), EntitySchema.getOutwardChannelLinks() and ChannelSchema.getOutwardChannelLinks() helper methods. These are not used at runtime but are primarily intended for usage in supporting tooling and testing infrastructure

v6.119

01 Apr 00:27
33a86de
Compare
Choose a tag to compare

Changes in this release:

  • Change the ChannelLinkSchema.auto property to being a boolean rather than an int.

v6.118

31 Mar 05:26
457d170
Compare
Choose a tag to compare

Changes in this release:

  • Introduce ChannelLinkSchema entities that are not used at runtime but are a placeholder to store additional data about a channel/graph.
  • Add EntityMessage.safeGetLinks() helper method that initializes a links field if not present.
  • Rename linkSourceGraphToTargetGraph(...) to bulkLinkFromSourceGraphToTargetGraph(...) in AbstractSessionContextImpl to match conventions present in domgen generated code.
  • Add initial support for "bulk" loading of type graphs. While "bulk" loading is a bit of a misnomer given that type graphs have at most 1 subscription, the term is synonymous with loading using SQL queries in domgen generated code.
  • Remove return value from bulk loading methods as implementations never return false, they generate an exception or perform the bulk load.
  • Fix a bug in AbstractSessionContextImpl.bulkLinkFromSourceGraphToTargetGraph(...) where the ids used in linking from the source graph to the target graph were incorrectly inverted.

v6.117

29 Mar 06:40
32e3790
Compare
Choose a tag to compare

Changes in this release:

  • Pass the ChangeSet when performing bulk subscribe except on the outermost call where locks are acquired as the bulk subscribe methods may be invoked when expanding links outside the initial transaction.