Skip to content

Releases: kagkarlsson/db-scheduler

v14.0.1

07 Jun 06:40
Compare
Choose a tag to compare

Changelog

๐Ÿ› Fixes

  • 04692f7 Mention exception in log message on failures (#497), closes #497
  • f243d5e always set task_data via JdbcCustomization method (#495), closes #452 #495
  • 1ff9ff4 Try to fix flaky new test 'DetectStaleHeartbeatTest'
  • 21f250f Eagerly load DBSchedulerStarter (491) (#492), closes #491 #492
  • b0e981b Respect always-persist-timestamp-in-utc in Spring Starter (#487) (#490), closes #487 #490
  • de44763 Add Automatic-Module-Name attribute to jar manifests for better Java 9+ JPMS compatibility (#477), closes #477

๐Ÿ›  Build

  • 2537135 validate javadoc and sources steps in CI
  • 6e7a657 temporarily disable 'Automatic-Module-Name' config for spring-boot-starter, need debug
  • ff6695b remove unused profile
  • 3bd4745 set jreleaser releaseRepository=true to let it release new artifacts to sonatype
  • 1749238 deps: Updates the spring-boot-compatibility workflow with the latest spring boot versions. (#478), closes #478
  • d62bb51 deps-dev: bump org.postgresql:postgresql from 42.5.1 to 42.5.5 in /db-scheduler (#482), closes #482
  • 15d2be8 deps: bump org.postgresql:postgresql from 42.5.1 to 42.5.5 in /test/benchmark (#483), closes #483

Contributors

We'd like to thank the following people for their contributions:

v14.0.0

18 Apr 17:18
b5578ef
Compare
Choose a tag to compare

Changelog

๐Ÿš€ Features

  • 823c9d2 Add tracking of heartbeat results and executions with stale heartbeat (#432), closes #402 #432. Generally making heartbeating more robust. See PR description for details.
  • d422cfb Introduces setting alwaysPersistTimestampInUTC() for MySQL and MariaDB users (#471), closes #471. This PR changed the default behavior, which was later reverted in #481. See PR description for details.
  • bb17380 Remove Java 8 support (#456), closes #456

๐Ÿ› Fixes

  • b5578ef Revert change in behavior for MariaDB and MySQL with regards to time zone assumptions for persisted timestamps (#481), closes #481
  • 4d3b5bb Update Oracle schema to use timezone-aware type (#457), closes #457. Oracle users are encouraged to change type for timestamp-columns to TIMESTAMP(6) WITH TIME ZONE.
  • a27383a use varchar instead of (deprecated) text column type for MSSQL schema (#455), closes #454 #455
  • 7798c35 Fix bug that causes cronpatterns with no next execution-time to fail. (#435), closes #361 #435

  • cadf433 logging improvement and readme

Contributors

We'd like to thank the following people for their contributions:

v13.0.0

06 Dec 13:37
ff6c39f
Compare
Choose a tag to compare

Changelog

Disclaimer: This is a major release in the sense that the changes in this release affects a larger part of the codebase. In particular, polling logic and per-database customizations (like LIMIT). There is good test-coverage for all of these changes, but I would still advice to let it sit in a test-environment for a while before promoting to production, to verify it is working as expected and does not produce any noise in the logs. Se PR #371 for more details.

๐Ÿš€ Features

  • PR #371 (31c4bab). Recommended to see PR description and code for more details. Closes #264 #273 #337 #348
    • Adds explicit LIMIT to polling for most databases (SqlServer, Mysql, MariaDB, Oracle). This might improve query-plans.
    • Lays groundwork to support lock-and-fetch for more dialects than PostgreSQL
    • JdbcRunner transaction and batch-update support (micro-jdbc)

๐Ÿ“ Documentation

  • bbe25d7 Add Swan to the list of users (#426)
  • a47057d Update README with new Lightyear link (#421)
  • e098bd2 Improve Examples (#420)
  • ff6c39f Add links to third-party extensions, in particular
    • bekk/db-scheduler-ui is admin-ui for the scheduler. It shows scheduled executions and supplies simple admin-operations such as "rerun failed execution now" and "delete execution".
    • rocketbase-io/db-scheduler-log is an extention providing a history of executions, including failures and exceptions.

Contributors

We'd like to thank the following people for their contributions:

v12.5.0

25 Aug 17:54
c43024e
Compare
Choose a tag to compare

Changelog

๐Ÿ› Fixes

  • c43024e getScheduledExecutions(...) should be able to return executions with unresolved tasks (#418), closes #418

โš ๏ธ Behavior changes

  • SchedulerClient.getScheduledExecution() will now also return executions with an unresolved task
  • SchedulerClient.getScheduledExecutions() will now also by default return executions with unresolved tasks
  • The filter ScheduledExecutionsFilter.all()will now indicate that also executions with unresolved tasks should be returned

Contributors

We'd like to thank the following people for their contributions:

v12.4.0

21 Jun 20:49
ebc7d95
Compare
Choose a tag to compare

Changelog

๐Ÿš€ Features

๐Ÿ›  Build

๐Ÿ“ Documentation

Contributors

We'd like to thank the following people for their contributions:

v12.3.0

20 Jun 10:35
448d6d4
Compare
Choose a tag to compare

Changelog

๐Ÿš€ Features

Contributors

We'd like to thank the following people for their contributions:

  • Piotr Olaszewski

v12.2.0

26 May 09:25
Compare
Choose a tag to compare

Changelog

๐Ÿš€ Features

๐Ÿ›  Build

  • 0e9f2a8 license header
  • 5b51b8e Let JReleaser close related issues
  • ddad008 Forbid JReleaser to overwrite old releases to avoid mistakes

Contributors

We'd like to thank the following people for their contributions:

Release v12.1.0

03 May 11:17
Compare
Choose a tag to compare

Changelog

๐Ÿ”„๏ธ Changes

  • f480910 Refactor dependency-management for better spring-boot compatibility (#383), closes #383
  • 10859d5 replace opentable embedded postgres with zonky (#382), closes #382

Contributors

We'd like to thank the following people for their contributions:

Release v12.0.1

03 May 11:15
Compare
Choose a tag to compare

Changelog

๐Ÿ› Fixes

  • 431f162 Use Spring v5.3+ cron-style (#378)
  • aa41837 Reformat source code using spotless plugin and google java-format. (PR #375)
  • c03aadd FailureHandlers should use timeDone Instant to calculate next try (#379)

๐Ÿ›  Build

๐ŸŽ‰ Contributors & Sponsorship

We'd like to thank the following people for their contributions:

Additionally, a big thanks to our two new sponsors, matt-snider and robinheghan ๐ŸŽ‰.

12.0.0

17 Apr 08:29
8117942
Compare
Choose a tag to compare
  • Changing to semantic versioning.
  • It is now possible to sponsor work on db-scheduler and so contributing to sustainable open-source development. Many thanks to rocketbase-io and gauthamchandra, our first sponsors ๐ŸŽ‰
  • PR #368 changes shutdown sequence to avoid executions that are slow to stop will be detected as dead since the heartbeat-thread already has stopped. Fixes #365.
  • PR 357 adds support for specifying JdbcCustomizer in spring boot via DbSchedulerCustomizer. The same PR also fixes missing serialVersionUID for Serializable classes. This will be a breaking change for everyone already using dynamic recurring tasks, i.e PersistentCronSchedule and friends. See notes below.

Breaking changes
Unfortunately a couple of Serializable classes missing serialVersionUID was added in previous releases (releated to dynamic recurring tasks). This was a mistake, as that will break Java serialization for all changes to the classes, even if they are backwards compatible. This is addressed in this release, but means that anyone already serializing these classes will get a InvalidClassException after upgrading to this version or later. The workaround is to migrate away from these classes before upgrading, and then optionally migrating back to fixed classes after upgrade (or not).
See section on migrating serializers in README and SerializerWithFallbackDeserializers for hints on how to migrate serialization.
This only affects Java serialization.