Commit Graph

159 Commits

Author SHA1 Message Date
Mahmoud Ben Hassine
26c9d43c0b Change default transaction manager type to JdbcTransactionManager
This commits changes the type of the transaction manager
from `DataSourceTransactionManager` to `JdbcTransactionManager`
in the default configuration of `@EnableTask`.

The `JdbcTransactionManager` adds common JDBC exception translation
which is beneficial for Spring Cloud Task to improve exception
handling and error reporting.

Polishing
2022-07-25 13:50:59 -04:00
Glenn Renfro
76a5d12136 Updated to files to fit the Standard. 2022-07-25 11:41:43 -04:00
Glenn Renfro
2f0f78a2c8 Updating task metrics to micrometer 1.10
Changes include:
* Use Observable instead of metrics
* Update the setting of lowCardinalityTag to the correct events.
* Update the docs
* Remove EXTERNAL_EXECUTION_ID
* Utilize registry provided by boot instead of globalregistry
* Set the handler until Boot does this as shown on line 80 of TaskLifecycleConfiguration.
* Uses Observability long task timer

Updated to latest changes in Micrometer Observability

Updated based on code review and api change

Finished removing the metrics registry

Updated based on code review

Readded cloud foundry keys to observations

Renamed metrics to observations where applicable

Updated metric sample to be observation sample

Updated to set defaults and migrate tests to infrastructure

Updated based on code review

Remove duplicate keyvalues from task observation

Added DocumentedObservation to create the observation
Migrated code to use the LowerCardinality KeyNames from the DocumentedObservation
Test cleanup
Updated code based on code review

Exception is handled by the error in the observation vs logging it as a task metric key value

Updated to use ObservationConvention

Updated to handle user defined convention vs default

Removed the snapshot versions of observations

Removed unnecessary dependencies

Checkpoint tests fail after re-adding 1.10-SNAPSHOT

Replaced TimeObservationHandler with DefaultMeterObservationHandler

Updated to set micrometer to latest milestone

Updated to rename TaskValuesProvider variables to ObservationConvention
2022-07-22 17:24:08 -04:00
Glenn Renfro
68c5bb926e Removed Observation Aware interfaces 2022-07-15 11:24:53 -04:00
Glenn Renfro
f5c2d2c429 Updated to use ObservationConventionAware instead of KeyValueAware 2022-07-12 16:03:17 -07:00
Marcin Grzejszczak
18ffbdbaff Updated micrometer to the latest changes
Updated sample task metrics to include observation dependency
2022-07-08 10:53:30 -04:00
Glenn Renfro
362d73650b Batch Boot Runner only supports one job.
Needed to update TaskJobLauncher to support only one job.
Updated tests accordingly
Re-added Added tests removed from M3 release
2022-06-16 17:26:49 -04:00
Glenn Renfro
fefb7cc6ff Rolling back test change for this release
Due to updates in the latest Spring Boot these changes don't work in the old milestone
2022-06-15 08:23:32 -04:00
Glenn Renfro
c2dd779813 Disable Observability test till Boot includes ObservationConfiguration in Milestone 2022-06-15 07:59:48 -04:00
Glenn Renfro
4bd7cbff8a Update test to handle new exception message. 2022-06-14 12:31:36 -04:00
Glenn Renfro
756d97d30b Need to Autoconfigure Observations 2022-06-10 17:28:56 -04:00
Glenn Renfro
38323952ca Added Samples and Documentation for metrics
Updated documentation and sample

Updated the test to use original metrics definition
2022-06-02 16:46:09 -04:00
Marcin Grzejszczak
3817fe14e7 Support Observations for CommandLineRunner and ApplicationRunner
First pass on observation

Added automatic docs generation

Renamed Observed -> Observation

Fixed copyright dates

Removed execution task listener - it makes runner spans share the same trace id

Updated version for micrometer docs to milestone
2022-05-31 16:31:22 -04:00
Glenn Renfro
1284c80c5e Updated to set the proper PlatformTransactionManager for Single-Task
Spring integration's DefaultLockRepository requires a TransactionManager.
However it assumes that only one is available.   Since task can have more than one, we are allowed to tell SI which one to use
2022-05-20 16:50:08 -04:00
Tyler Carpenter-Rivers
fc89e23144 resolves https://github.com/spring-cloud/spring-cloud-task/issues/780
update db2 'between' logic to be exclusive

Signed-off-by: Ryan DCruz <rd@enfuse.io>

use .acceptLicense() instead of the classpath file

checkstyle

add test to verify a result set that's smaller than requested page size

cleanup
2022-05-02 16:33:10 -04:00
Glenn Renfro
62cccc2727 Rename Oracle ddl script name to be accurate.
Original schema name for oracle was schema-oracle10g.sql which was inaccurate.   It should just be schema-oracle.sql.
2022-04-27 16:00:06 -04:00
Henning Poettker
709618db1d Add default methods in TaskExecutionListener 2022-03-21 10:32:53 -04:00
Glenn Renfro
397ac4d026 Updating javax packaging to jakarta 2022-03-21 10:26:04 -04:00
Glenn Renfro
300c767710 Update Task to resolve Micromenter 2.0.x upgrade issue.
This will resolve the current issue, but improvements to Task's use of Micrometer 2.0 are coming in a upcoming PR
2022-03-07 14:14:26 -05:00
Glenn Renfro
6dc83b8abe Replaced increment table with sequnce for sqlserver
resolves #781
2022-01-19 13:37:16 -05:00
Glenn Renfro
c353d68396 Boot updated bom to use batch 5.x
Updated code to remove new deprecations
Updated code to fix compilation errors.
Updated code to add new bits for tests
2022-01-18 14:30:20 -05:00
Glenn Renfro
02b44227d4 Updated project to use Spring Boot 3.0
Resolves issues:
TASK-810
TASK-812
TASK-813
2022-01-13 20:11:55 -05:00
Henning Poettker
a95b420315 Use strict H2 query syntax for paging query provider
Simplify tests a bit

Updated to snapshot dependencies

Updated test and to set the version of h2 to us boot bom.
2022-01-10 14:04:47 -05:00
Glenn Renfro
3102aa0265 Update so that it can be natively compiled by Spring Native 0.11 2021-09-27 11:28:05 -04:00
Işık Erhan
8b4352095d Support multiple task listener beans of same type 2021-08-15 18:23:17 +03:00
Henning Pöttker
723fa1353a Mark TaskRepositoryInitializer as not lazy 2021-06-28 14:37:57 -04:00
Glenn Renfro
17415eaed5 Updating task execution id next val to use sequence for sqlserver
resolves TASK-782

Updated PR to resolve issue when no task tables exist

Updated PR based on review comments.
This does not include updated tests.
This resolves a problem where task would fail because the incrementer selection occured before the tables were created.

Added unit test for SqlServerSequenceIncrementer

updated based on code review
2021-05-28 18:09:35 -04:00
Michael Minella
704b8df2ad Added sort validation
This commit now validates that the value passed via a PageRequest to
sort the results by is a valid value.

Resolves #739

Fixed to allow for all letter cases
2020-11-09 10:30:03 -05:00
Glenn Renfro
b4ea1040de Task tags assigned to all metrics sent by the app
Ensure that Task's org.springframework.cloud.task.configurationorg.springframework.cloud.task.configuration.MetricsAutoConfiguration is configured Before org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration (that in turn is configured Before the CompositeMeterRegistryAutoConfiguration).
Resolves #691
2020-08-11 11:52:52 -04:00
Glenn Renfro
80f39bea84 Removed cfenv from dependencies
Updated tests that used it.

resolves #681
2020-07-08 12:41:56 -04:00
Glenn Renfro
59c9adf047 Updated all Junit tests to 5.x
resolves TASK-675
2020-07-07 10:55:16 -05:00
Glenn Renfro
aba70b468a Changing DataSourceBuilder to EmbeddedDatabaseBuilder. 2020-03-25 11:19:18 -04:00
Michael Minella
00b8acab55 Added support for specifying a TransactionManager
Before this commit, Spring Cloud Task did not correctly configure the
provided PlatformTransactionManager with the TaskRepository.  This
commit addressis this bug.

Resolves #652

Polished PR on Merge
2020-03-25 10:05:16 -04:00
Glenn Renfro
6b336a983c Resolves Task Lock issue with Oracle DB
In short the Oracle CHAR type is blank padded to the end of the field.  So we were not getting an exact match on queries when looking for the LOCK_KEY or CLIENT_ID
2020-01-30 09:17:15 -06:00
Glenn Renfro
7e24e6d4ec Added Flatten-maven-plugin
resolves #633
2019-11-07 12:01:04 -05:00
Glenn Renfro
4f1524a711 OutputCapture should be updated to OutputCaptureRule
resolves #615

In Boot 2.2.x they change the of OutputCapture and thus it was deprecated.
2019-07-15 15:28:50 -04:00
Glenn Renfro
7490f8b820 Initialize values with properties vs value
resolves #SCT-587
2019-07-03 13:24:06 -05:00
Michael Minella
0af72e31ac Polish 2019-07-03 13:09:18 -05:00
Christian Tzolov
d4b51a074b Add Micrometer support for Task applications
- New dependencies
   - micrometer-core
   - java-cfenv - required by the CF tags configuration.
 - Add TaskMetrics configuration that installs two Meters (Timer and LongTaskTimer) that produce the following time-series:
   - spring.cloud.task - shows task duration (updated only after the task has completed).
   - spring.cloud.task.active - provides run time information about the non-completed tasks.
   Both meters are started at TaskExecutionListener#onTaskStartup() and ended at onTaskEnd() or onTaskFailure().
 - Add common Task tags assigned to all time-series produced by the Task (not only the s.c.task and s.c.task.active). This allows to analyze CPU, Memory and other measurements grouped by task/execution ids.
 - Add Cloud Found tags - Activated only for CF target platform.

 Resolves #608
2019-07-03 13:06:58 -05:00
Glenn Renfro
d2031ff66e Updated the order in which the TaskLifecycleListener is configured
resolves #605
2019-06-25 09:48:21 -05:00
Donovan Muller
915a6ef82f Fix closecontextEnabled property reference
Fixes #561
2019-05-08 14:38:12 -04:00
Glenn Renfro
16f68020fb Update dependency versions 2019-05-07 13:54:00 -04:00
Glenn Renfro
fd8ab15238 Updated all dependencies for M1 RELEASE
Updated to Spring Cloud Build 2.2.0.M1
2019-04-15 15:11:28 -04:00
Glenn Renfro
c8158360b2 Updated test for the new maria error code
resolves #288
2019-04-08 11:28:13 -04:00
Glenn Renfro
ce51987f98 Rebased
Updated to spring-cloud-build 2.2.0.BUILD-SNAPSHOT
Updated Tests to support the changes in the latest H2 database
Must use "-ifNotExists", when using the H2 TCP Server
2019-03-28 16:57:11 -05:00
Glenn Renfro
8a3ac48cc3 Updated all task_lock tables to add NOT NULL to primary keys.
resolves #505
2019-03-22 11:52:57 -04:00
Spring Operator
2bff013b83 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 204 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).

Updated Spring Cloud Build dependency

this was so that we can get the latest spring-cloud-build
2019-03-21 16:34:26 -04:00
Glenn Renfro
960e3c1d46 Treat MariaDB type as MySQL
resolves #514
2019-02-13 15:59:23 -05:00
Glenn Renfro
03d9a980e9 Cleanup from Checkstyle changes
resolves #511

* Sets the appropriate copyright dates
* Updates some docs
2019-02-13 12:21:14 -05:00
Marcin Grzejszczak
60f1e21d03 Added checkstyle 2019-02-03 19:27:07 +01:00