Skip to content

Commit 1761c02

Browse files
committed
integ ce/14.1.2 -> ce/main @ 113045
(auto-submit 113242 after successfully running remote remote.full) Job ID: job.9.20250107180605.4739 [git-p4: depot-paths = "//dev/coherence-ce/main/": change = 113265]
1 parent 72259b7 commit 1761c02

File tree

11 files changed

+106
-57
lines changed

11 files changed

+106
-57
lines changed

.github/workflows/build-examples.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2020, 2023, Oracle Corporation and/or its affiliates.
1+
# Copyright 2020, 2025, Oracle Corporation and/or its affiliates.
22
#
33
# Licensed under the Universal Permissive License v 1.0 as shown at
44
# https://oss.oracle.com/licenses/upl.
@@ -61,8 +61,8 @@ jobs:
6161
run: |
6262
echo "Building and Running - Examples"
6363
export DEV_ROOT=$(pwd)
64-
mvn --file prj/pom.xml --batch-mode -U -e -s .github/maven/settings.xml -P-modules -DskipTests clean install
65-
mvn --file prj/pom.xml --batch-mode -e -s .github/maven/settings.xml -Pmodules,-coherence -nsu -DskipTests clean install
64+
mvn --file prj/pom.xml --batch-mode -U -e -s .github/maven/settings.xml -P-modules -Dproject.official -DskipTests clean install
65+
mvn --file prj/pom.xml --batch-mode -e -s .github/maven/settings.xml -Pmodules,-coherence -nsu -Dproject.official -DskipTests clean install
6666
mvn --file prj/pom.xml --batch-mode -U -e -s .github/maven/settings.xml -Pexamples -nsu clean install
6767
6868
# Upload build artifacts for diagnosing failures

.github/workflows/build.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# Copyright 2020, 2023, Oracle Corporation and/or its affiliates.
1+
# Copyright 2020, 2025, Oracle Corporation and/or its affiliates.
22
#
33
# Licensed under the Universal Permissive License v 1.0 as shown at
4-
# http://oss.oracle.com/licenses/upl.
4+
# https://oss.oracle.com/licenses/upl.
55

66
# ---------------------------------------------------------------------------
77
# Coherence CE GitHub Actions CI build.
@@ -78,8 +78,8 @@ jobs:
7878
echo "Building and running tests in ${{ matrix.stage }}"
7979
export DEV_ROOT=$(pwd)
8080
export SETTINGS_XML=${DEV_ROOT}/.github/maven/settings.xml
81-
mvn --file prj/pom.xml --batch-mode -U -e -s ${SETTINGS_XML} -P-modules,${{ matrix.stage }} -Doptional -Dcoherence.SkipLargeMemoryTests=true clean install
82-
mvn --file prj/pom.xml --batch-mode -e -s ${SETTINGS_XML} -Pmodules,-coherence,${{ matrix.stage }} -nsu -Doptional -Dcoherence.SkipLargeMemoryTests=true -Dcoherence.compatability.settings=${SETTINGS_XML} clean install
81+
mvn --file prj/pom.xml --batch-mode -U -e -s ${SETTINGS_XML} -P-modules,${{ matrix.stage }} -Dproject.official -Dcoherence.SkipLargeMemoryTests=true clean install
82+
mvn --file prj/pom.xml --batch-mode -e -s ${SETTINGS_XML} -Pmodules,-coherence,${{ matrix.stage }} -nsu -Dproject.official -Dcoherence.SkipLargeMemoryTests=true -Dcoherence.compatability.settings=${SETTINGS_XML} clean install
8383
8484
# Upload build artifacts for diagnosing failures
8585
- name: Build Artifacts test logs

README.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,8 @@ Coherence Maps provide a number of features:
101101

102102
* Fundamental **key-based access**: get/put getAll/putAll.
103103
* Client-side and storage-side events:
104-
* **MapListeners** to asynchronously notify clients of changes to data.
105-
* **EventInterceptors** (either sync or async) to be notified storage level events, including
104+
* **MapListeners** to asynchronously notify clients of changes to data.
105+
* **EventInterceptors** (either sync or async) to be notified storage level events, including
106106
mutations, partition transfer, failover, and so on.
107107
* **NearCaches** - Locally cached data based on previous requests with local content
108108
invalidated upon changes in the storage tier.
@@ -119,14 +119,24 @@ to execute processing logic for the appropriate entries with exclusive access.
119119
associating data (thus being on the same partition) and manipulating other entries
120120
on the same partition, potentially across different maps.
121121
* **Non-blocking / async NamedMap API**
122-
* **C++ and .NET clients** - Access the same NamedMap API from either C++ or .NET.
122+
* **Polyglot clients** - Access the same NamedMap API from [C++](https://github.com/oracle/coherence-cpp-extend-client), [Go](https://github.com/oracle/coherence-go-client), Java, [JavaScript](https://github.com/oracle/coherence-js-client), [.NET](https://github.com/oracle/coherence-dotnet-extend-client), or [Python](https://github.com/oracle/coherence-py-client)
123123
* **Portable Object Format** - Optimized serialization format, with the ability to
124124
navigate the serialized form for optimized queries, aggregations, or data processing.
125125
* **Integration with Databases** - Database and third party data integration with
126126
CacheStores, including both synchronous or asynchronous writes.
127127
* **CohQL** - Ansi-style query language with a console for adhoc queries.
128128
* **Topics** - Distributed topics implementation that offers pub/sub messaging with
129129
the storage capacity, the cluster, and parallelizable subscribers.
130+
* **Repository API** - a framework implementing the Repository pattern from Domain-Driven Design,
131+
abstracting persistent storage implementation from application code, with advanced features like
132+
support for pagination, projections, streaming, and updating in-place
133+
* **coherence-concurrent** - Coherence-backed implementations of types from the `java.util.concurrent` package enabling distributed process coordination through the grid
134+
* **Atomics** - for implementing e.g. atomic counters shared between cluster, with an optional asynchronous API
135+
* **Executors** - for submitting tasks to be executed in the cluster
136+
* **Locks** - for implementing lock-based concurrency control across multiple cluster members
137+
* **Queues** - for implementing blocking queue / dequeue behavior across multiple cluster members
138+
* **Semaphores** - for implementing synchronization of execution across multiple cluster members
139+
* **Microservices integration** - broad and close integration with [Helidon](https://docs.oracle.com/en/middleware/standalone/coherence/14.1.2/integrate/index.html), [Micronaut](https://micronaut-projects.github.io/micronaut-coherence/latest/guide/), and [Spring](https://spring.coherence.community/4.3.0/#/about/01_overview) for developing microservices applications using Coherence as a data source or cache
130140

131141
Coherence also provides a number of non-functional features:
132142

@@ -151,7 +161,7 @@ JMX server that provides a view of all members of the cluster.
151161
* **Management over REST** - All JMX data and operations can be performed over REST,
152162
including cluster wide thread dumps and heapdumps.
153163
* **Non-cluster Access** - Provides access to the cluster from the outside via proxies,
154-
for distant (high latency) clients and for non-java languages such as C++ and .NET.
164+
for distant (high latency) clients and for non-Java languages such as [C++](https://github.com/oracle/coherence-cpp-extend-client), [Go](https://github.com/oracle/coherence-go-client), [JavaScript](https://github.com/oracle/coherence-js-client), [.NET](https://github.com/oracle/coherence-dotnet-extend-client), and [Python](https://github.com/oracle/coherence-py-client).
155165
* **Kubernetes friendly** - Enables seamless and safe deployment of applications to k8s with
156166
our own [operator](https://github.com/oracle/coherence-operator).
157167

@@ -184,7 +194,7 @@ For **Windows**, see [here](https://oracle.github.io/coherence-cli/docs/latest/#
184194

185195
#### <a name="create"></a>Create and start a Cluster
186196

187-
Use the following command to create a 3 node Coherence cluster called `my-cluster`, scoped to your local machine using the default of Coherence CE 22.06.10.
197+
Use the following command to create a 3 node Coherence cluster called `my-cluster`, scoped to your local machine using the default values.
188198

189199
```shell
190200
$ cohctl create cluster my-cluster

prj/coherence-javadoc/pom.xml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -486,7 +486,7 @@
486486
<resource>
487487
<directory>../coherence-java-client/src/main/java</directory>
488488
</resource>
489-
<resource>
489+
<resource>
490490
<directory>../coherence-jpa/src/main/java</directory>
491491
</resource>
492492
<resource>
@@ -550,7 +550,7 @@
550550

551551
<include>com/oracle/coherence/mp/**/*.java</include>
552552

553-
<include>com/oracle/coherence/grpc/**/*.java</include>
553+
<include>com/oracle/coherence/grpc/proxy/*.java</include>
554554

555555
<include>com/oracle/coherence/caffeine/**/*.java</include>
556556

@@ -565,7 +565,7 @@
565565
<include>com/tangosol/coherence/config/xml/preprocessor/*.java</include>
566566
<include>com/tangosol/coherence/config/xml/processor/*.java</include>
567567

568-
<include>com/tangosol/discovery/*.java</include>
568+
<include>com/tangosol/discovery/*.java</include>
569569
<include>com/oracle/coherence/concurrent/atomic/*.java</include>
570570
<include>com/oracle/coherence/concurrent/cdi/*.java</include>
571571
<include>com/oracle/coherence/concurrent/executor/RemoteExecutor.java</include>
@@ -595,9 +595,6 @@
595595
<include>com/tangosol/coherence/dsltools/termlanguage/*.java</include>
596596
<include>com/tangosol/coherence/dsltools/termtrees/*.java</include>
597597

598-
<include>com/tangosol/coherence/federation/*.java</include>
599-
<include>com/tangosol/coherence/federation/events/*.java</include>
600-
601598
<include>com/tangosol/coherence/jcache/*.java</include>
602599
<include>com/tangosol/coherence/jcache/common/*.java</include>
603600
<include>com/tangosol/coherence/jcache/localcache/*.java</include>
@@ -637,7 +634,6 @@
637634

638635
<include>com/tangosol/io/*.java</include>
639636
<include>com/tangosol/io/bdb/*.java</include>
640-
<include>com/tangosol/io/journal/*.java</include>
641637
<include>com/tangosol/io/nio/*.java</include>
642638
<include>com/tangosol/io/pof/*.java</include>
643639
<include>com/tangosol/io/pof/annotation/*.java</include>

prj/coherence/pom.xml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
3-
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
3+
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
44
55
Licensed under the Universal Permissive License v 1.0 as shown at
66
https://oss.oracle.com/licenses/upl.
@@ -62,6 +62,15 @@
6262
<version>${project.version}</version>
6363
</dependency>
6464

65+
<dependency>
66+
<groupId>${coherence.group.id}</groupId>
67+
<artifactId>coherence-core-components</artifactId>
68+
<version>${project.version}</version>
69+
<classifier>sources</classifier>
70+
<!-- A slight hack - test scope so that this dependency does not appear in the flattened pom -->
71+
<scope>test</scope>
72+
</dependency>
73+
6574
<dependency>
6675
<groupId>${coherence.group.id}</groupId>
6776
<artifactId>opentracing</artifactId>

prj/docs/about/01_overview.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
///////////////////////////////////////////////////////////////////////////////
2-
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
2+
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
33

44
Licensed under the Universal Permissive License v 1.0 as shown at
55
https://oss.oracle.com/licenses/upl.
@@ -16,7 +16,7 @@
1616
====
1717
The documentation on this site covers new features and improvements that are currently only available in the open source https://github.com/oracle/coherence[Coherence Community Edition] (CE).
1818
19-
For complete documentation covering all the features that are available both in the latest commercial editions (Enterprise and Grid Edition) and the Community Edition, please refer to the https://docs.oracle.com/en/middleware/standalone/coherence/{version-commercial-docs}/index.html[Official Documentation].
19+
For complete documentation covering all the features that are available both in the latest commercial editions (Enterprise and Grid Edition) and the Community Edition, please refer to the https://docs.oracle.com/en/middleware/fusion-middleware/coherence/{version-commercial-docs}/index.html[Official Documentation].
2020
====
2121
2222
Coherence is scalable, fault-tolerant, cloud-ready, distributed platform for building grid-based applications and reliably storing data.
@@ -75,7 +75,7 @@ Oracle Coherence commercial edition product documentation.
7575
7676
[CARD]
7777
.API Docs
78-
[icon=library_books,link=../api/java/index.html,link-type=url]
78+
[icon=library_books,link=docs/about/05_api.adoc]
7979
--
8080
Browse the Coherence CE API Docs.
8181
--

prj/docs/about/02_introduction.adoc

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
///////////////////////////////////////////////////////////////////////////////
2-
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
2+
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
33

44
Licensed under the Universal Permissive License v 1.0 as shown at
5-
http://oss.oracle.com/licenses/upl.
5+
https://oss.oracle.com/licenses/upl.
66
///////////////////////////////////////////////////////////////////////////////
77
= Introduction
88
@@ -14,21 +14,22 @@ First and foremost, Coherence provides a fundamental service that is responsible
1414
common denominator / building block for all other Coherence services.
1515
This service, referred to as 'service 0' internally, ensures the mesh of members is maintained and responsive,
1616
taking action to collaboratively evict, shun, or in some cases voluntarily depart the cluster when deemed necessary.
17-
As members join and leave the cluster, other Coherence services are notified thus allows those services to react accordingly.
17+
As members join and leave the cluster, other Coherence services are notified thus allowing those services to react accordingly.
1818
19-
NOTE: This part of the Coherence product has been in production for 10+ years, being the subject of some extensive and
19+
NOTE: This part of the Coherence product has been in production for 20+ years, and has been the subject of some extensive and
2020
imaginative testing.
2121
While it has been discussed here it certainly is not something that customers, generally, interact with directly but is
2222
valuable to be aware of.
2323
24-
Coherence services build on top of the clustering service, with the key implementations to be aware of are
24+
Coherence services build on top of the clustering service, with the key implementations to be aware of being
2525
PartitionedService, InvocationService, and ProxyService.
2626
2727
In the majority of cases customers will deal with caches;
2828
a cache will be represented by an implementation of `NamedCache<K,V>`.
29-
Cache is an unfortunate name, as many Coherence customers use Coherence as a system-of-record rather than a lossy store of data.
29+
Cache is an unfortunate name, as many customers use Coherence as a system-of-record rather than a lossy store of data.
3030
A cache is hosted by a service, generally the PartitionedService, and is the entry point to storing, retrieving,
3131
aggregating, querying, and streaming data.
32+
3233
There are a number of features that caches provide:
3334
3435
* Fundamental *key-based access*: get/put getAll/putAll
@@ -42,11 +43,19 @@ There are a number of features that caches provide:
4243
* *Data local processing* - an ability to send a function to the relevant storage node to execute processing logic for the appropriate entries with exclusive access
4344
* *Partition local transactions* - an ability to perform scalable transactions by associating data (thus being on the same partition) and manipulating other entries on the same partition potentially across caches
4445
* *Non-blocking / async NamedCache API*
45-
* *C{pp} and .NET clients* - access the same NamedCache API from either C{pp} or .NET
46+
* *Polyglot clients* - access the same NamedCache API from https://github.com/oracle/coherence-cpp-extend-client[C++], https://github.com/oracle/coherence-go-client[Go], Java, https://github.com/oracle/coherence-js-client[JavaScript], https://github.com/oracle/coherence-dotnet-extend-client[.NET], or https://github.com/oracle/coherence-py-client[Python]
4647
* *Portable Object Format* - optimized serialization format, with the ability to navigate the serialized form for optimized queries, aggregations, or data processing
4748
* *Integration with Databases* - Database & third party data integration with CacheStores including both synchronous or asynchronous writes
4849
* *CohQL* - ansi-style query language with a console for adhoc queries
4950
* *Topics* - distributed topics implementation offering pub/sub messaging with the storage capacity the cluster and parallelizable subscribers
51+
* *Repository API* - a framework implementing the Repository pattern from Domain-Driven Design, abstracting persistent storage implementation from application code, with advanced features like support for pagination, projections, streaming, and updating in-place
52+
* *coherence-concurrent* - Coherence-backed implementations of types from the `java.util.concurrent` package enabling distributed process coordination through the grid
53+
** *Atomics* - for implementing e.g. atomic counters shared between cluster, with an optional asynchronous API
54+
** *Executors* - for submitting tasks to be executed in the cluster
55+
** *Locks* - for implementing lock-based concurrency control across multiple cluster members
56+
** *Queues* - for implementing blocking queue / dequeue behavior across multiple cluster members
57+
** *Semaphores* - for implementing synchronization of execution across multiple cluster members
58+
* *Microservices integration* - broad and close integration with https://docs.oracle.com/en/middleware/standalone/coherence/14.1.2/integrate/index.html[Helidon], https://micronaut-projects.github.io/micronaut-coherence/latest/guide/[Micronaut], and https://spring.coherence.community/4.3.0/#/about/01_overview[Spring] for developing microservices applications using Coherence as a data source or cache
5059
5160
There are also a number of non-functional features that Coherence provides:
5261
@@ -59,7 +68,7 @@ There are also a number of non-functional features that Coherence provides:
5968
* *Lossy redundancy* - ability to reduce the redundancy guarantee by making backups and/or persistence asynchronous from a client perspective
6069
* *Single Mangement View* - provides insight into the cluster with a single JMX server that provides a view of all members of the cluster
6170
* *Management over REST* - all JMX data and operations can be performed over REST, including cluster wide thread dumps and heapdumps
62-
* *Non-cluster Access* - access to the cluster from the outside via proxies, for distant (high latency) clients and for non-java languages such as C{pp} and .NET
71+
* *Non-cluster Access* - access to the cluster from the outside via proxies, for distant (high latency) clients and for non-Java languages such as https://github.com/oracle/coherence-cpp-extend-client[C++], https://github.com/oracle/coherence-go-client[Go], https://github.com/oracle/coherence-js-client[JavaScript], https://github.com/oracle/coherence-dotnet-extend-client[.NET], or https://github.com/oracle/coherence-py-client[Python]
6372
* *Kubernetes friendly* - seamlessly and safely deploy applications to k8s with our own https://github.com/oracle/coherence-operator[operator]
6473
6574

prj/docs/about/03_quickstart.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
///////////////////////////////////////////////////////////////////////////////
2-
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
2+
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
33

44
Licensed under the Universal Permissive License v 1.0 as shown at
55
https://oss.oracle.com/licenses/upl.

0 commit comments

Comments
 (0)