Skip to content

Commit

Permalink
sync README.md and other files (integ ce/main -> ce/24.09)
Browse files Browse the repository at this point in the history
(auto-submit 113009 after successfully running remote remote.full)
Job ID: job.9.20250109192754.24805

[git-p4: depot-paths = "//dev/coherence-ce/release/coherence-ce-v24.09/": change = 113330]
  • Loading branch information
chpatel3 committed Jan 9, 2025
1 parent 939c920 commit 2349e29
Show file tree
Hide file tree
Showing 11 changed files with 113 additions and 60 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/build-examples.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright 2020, 2023, Oracle Corporation and/or its affiliates.
# Copyright 2020, 2025, Oracle Corporation and/or its affiliates.
#
# Licensed under the Universal Permissive License v 1.0 as shown at
# https://oss.oracle.com/licenses/upl.
Expand Down Expand Up @@ -61,8 +61,8 @@ jobs:
run: |
echo "Building and Running - Examples"
export DEV_ROOT=$(pwd)
mvn --file prj/pom.xml --batch-mode -U -e -s .github/maven/settings.xml -P-modules -DskipTests clean install
mvn --file prj/pom.xml --batch-mode -e -s .github/maven/settings.xml -Pmodules,-coherence -nsu -DskipTests clean install
mvn --file prj/pom.xml --batch-mode -U -e -s .github/maven/settings.xml -P-modules -Dproject.official -DskipTests clean install
mvn --file prj/pom.xml --batch-mode -e -s .github/maven/settings.xml -Pmodules,-coherence -nsu -Dproject.official -DskipTests clean install
mvn --file prj/pom.xml --batch-mode -U -e -s .github/maven/settings.xml -Pexamples -nsu clean install
# Upload build artifacts for diagnosing failures
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Copyright 2020, 2023, Oracle Corporation and/or its affiliates.
# Copyright 2020, 2025, Oracle Corporation and/or its affiliates.
#
# Licensed under the Universal Permissive License v 1.0 as shown at
# http://oss.oracle.com/licenses/upl.
# https://oss.oracle.com/licenses/upl.

# ---------------------------------------------------------------------------
# Coherence CE GitHub Actions CI build.
Expand Down Expand Up @@ -78,8 +78,8 @@ jobs:
echo "Building and running tests in ${{ matrix.stage }}"
export DEV_ROOT=$(pwd)
export SETTINGS_XML=${DEV_ROOT}/.github/maven/settings.xml
mvn --file prj/pom.xml --batch-mode -U -e -s ${SETTINGS_XML} -P-modules,${{ matrix.stage }} -Doptional -Dcoherence.SkipLargeMemoryTests=true clean install
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
mvn --file prj/pom.xml --batch-mode -U -e -s ${SETTINGS_XML} -P-modules,${{ matrix.stage }} -Dproject.official -Dcoherence.SkipLargeMemoryTests=true clean install
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
# Upload build artifacts for diagnosing failures
- name: Build Artifacts test logs
Expand Down
24 changes: 16 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ the natural place to consume this dependency is from Maven:
<dependency>
<groupId>com.oracle.coherence.ce</groupId>
<artifactId>coherence</artifactId>
<version>22.06.10</version>
<version>24.09</version>
</dependency>
</dependencies>
```
Expand Down Expand Up @@ -119,14 +119,21 @@ to execute processing logic for the appropriate entries with exclusive access.
associating data (thus being on the same partition) and manipulating other entries
on the same partition, potentially across different maps.
* **Non-blocking / async NamedMap API**
* **C++ and .NET clients** - Access the same NamedMap API from either C++ or .NET.
* **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)
* **Portable Object Format** - Optimized serialization format, with the ability to
navigate the serialized form for optimized queries, aggregations, or data processing.
* **Integration with Databases** - Database and third party data integration with
CacheStores, including both synchronous or asynchronous writes.
* **CohQL** - Ansi-style query language with a console for adhoc queries.
* **Topics** - Distributed topics implementation that offers pub/sub messaging with
the storage capacity, the cluster, and parallelizable subscribers.
* **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
* **Microservices integration** - broad and close integration with Helidon, Micronaut, and Spring for
developing microservices applications using Coherence as a data source or cache
* **coherence-concurrent** - Coherence-backed implementations of types from the `java.util.concurrent`
package enabling distributed process coordination through the grid

Coherence also provides a number of non-functional features:

Expand All @@ -151,7 +158,7 @@ JMX server that provides a view of all members of the cluster.
* **Management over REST** - All JMX data and operations can be performed over REST,
including cluster wide thread dumps and heapdumps.
* **Non-cluster Access** - Provides access to the cluster from the outside via proxies,
for distant (high latency) clients and for non-java languages such as C++ and .NET.
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).
* **Kubernetes friendly** - Enables seamless and safe deployment of applications to k8s with
our own [operator](https://github.com/oracle/coherence-operator).

Expand Down Expand Up @@ -184,13 +191,14 @@ For **Windows**, see [here](https://oracle.github.io/coherence-cli/docs/latest/#

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

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.
Use the following command to create a 3 node Coherence cluster called `my-cluster`, scoped to your local machine using the default values.

```shell
$ cohctl create cluster my-cluster -v 24.09
$ cohctl create cluster my-cluster

Cluster name: my-cluster
Cluster version: 22.06.10
Cluster version: 24.09
Cluster port: 7574
Management port: 30000
Replica count: 3
Expand All @@ -203,8 +211,8 @@ Dependency Tool: mvn
Are you sure you want to create the cluster with the above details? (y/n) y

Checking 3 Maven dependencies...
- com.oracle.coherence.ce:coherence:22.06.10
- com.oracle.coherence.ce:coherence-json:22.06.10
- com.oracle.coherence.ce:coherence:24.09
- com.oracle.coherence.ce:coherence-json:24.09
- org.jline:jline:3.26.3
Starting 3 cluster members for cluster my-cluster
Starting cluster member storage-0...
Expand Down Expand Up @@ -322,7 +330,7 @@ inserts and retrieves data from the Coherence server.
<dependency>
<groupId>com.oracle.coherence.ce</groupId>
<artifactId>coherence</artifactId>
<version>22.06.10</version>
<version>24.09</version>
</dependency>
```
3. Copy and paste the following source to a file named src/main/java/HelloCoherence.java:
Expand Down
15 changes: 8 additions & 7 deletions prj/coherence-javadoc/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -480,7 +480,12 @@
<resource>
<directory>../coherence-java-client/src/main/java</directory>
</resource>
<resource>

<resource>
<directory>../coherence-jpa/src/main/java</directory>
</resource>

<resource>
<directory>../coherence-discovery/src/main/java</directory>
</resource>
</resources>
Expand Down Expand Up @@ -539,7 +544,7 @@

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

<include>com/oracle/coherence/grpc/**/*.java</include>
<include>com/oracle/coherence/grpc/proxy/*.java</include>

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

Expand All @@ -554,7 +559,7 @@
<include>com/tangosol/coherence/config/xml/preprocessor/*.java</include>
<include>com/tangosol/coherence/config/xml/processor/*.java</include>

<include>com/tangosol/discovery/*.java</include>
<include>com/tangosol/discovery/*.java</include>
<include>com/oracle/coherence/concurrent/atomic/*.java</include>
<include>com/oracle/coherence/concurrent/cdi/*.java</include>
<include>com/oracle/coherence/concurrent/executor/RemoteExecutor.java</include>
Expand Down Expand Up @@ -584,9 +589,6 @@
<include>com/tangosol/coherence/dsltools/termlanguage/*.java</include>
<include>com/tangosol/coherence/dsltools/termtrees/*.java</include>

<include>com/tangosol/coherence/federation/*.java</include>
<include>com/tangosol/coherence/federation/events/*.java</include>

<include>com/tangosol/coherence/jcache/*.java</include>
<include>com/tangosol/coherence/jcache/common/*.java</include>
<include>com/tangosol/coherence/jcache/localcache/*.java</include>
Expand Down Expand Up @@ -626,7 +628,6 @@

<include>com/tangosol/io/*.java</include>
<include>com/tangosol/io/bdb/*.java</include>
<include>com/tangosol/io/journal/*.java</include>
<include>com/tangosol/io/nio/*.java</include>
<include>com/tangosol/io/pof/*.java</include>
<include>com/tangosol/io/pof/annotation/*.java</include>
Expand Down
12 changes: 11 additions & 1 deletion prj/coherence/pom.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
Licensed under the Universal Permissive License v 1.0 as shown at
https://oss.oracle.com/licenses/upl.
Expand Down Expand Up @@ -62,11 +62,21 @@
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>${coherence.group.id}</groupId>
<artifactId>coherence-core-components</artifactId>
<version>${project.version}</version>
<classifier>sources</classifier>
<!-- A slight hack - test scope so that this dependency does not appear in the flattened pom -->
<scope>test</scope>
</dependency>

<dependency>
<groupId>${coherence.group.id}</groupId>
<artifactId>opentracing</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>${coherence.group.id}</groupId>
<artifactId>opentelemetry</artifactId>
Expand Down
6 changes: 3 additions & 3 deletions prj/docs/about/01_overview.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////////
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Licensed under the Universal Permissive License v 1.0 as shown at
https://oss.oracle.com/licenses/upl.
Expand All @@ -16,7 +16,7 @@
====
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).
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].
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].
====
Coherence is scalable, fault-tolerant, cloud-ready, distributed platform for building grid-based applications and reliably storing data.
Expand Down Expand Up @@ -75,7 +75,7 @@ Oracle Coherence commercial edition product documentation.
[CARD]
.API Docs
[icon=library_books,link=../api/java/index.html,link-type=url]
[icon=library_books,link=docs/about/05_api.adoc]
--
Browse the Coherence CE API Docs.
--
Expand Down
25 changes: 17 additions & 8 deletions prj/docs/about/02_introduction.adoc
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
///////////////////////////////////////////////////////////////////////////////
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Licensed under the Universal Permissive License v 1.0 as shown at
http://oss.oracle.com/licenses/upl.
https://oss.oracle.com/licenses/upl.
///////////////////////////////////////////////////////////////////////////////
= Introduction
Expand All @@ -14,21 +14,22 @@ First and foremost, Coherence provides a fundamental service that is responsible
common denominator / building block for all other Coherence services.
This service, referred to as 'service 0' internally, ensures the mesh of members is maintained and responsive,
taking action to collaboratively evict, shun, or in some cases voluntarily depart the cluster when deemed necessary.
As members join and leave the cluster, other Coherence services are notified thus allows those services to react accordingly.
As members join and leave the cluster, other Coherence services are notified thus allowing those services to react accordingly.
NOTE: This part of the Coherence product has been in production for 10+ years, being the subject of some extensive and
NOTE: This part of the Coherence product has been in production for 20+ years, and has been the subject of some extensive and
imaginative testing.
While it has been discussed here it certainly is not something that customers, generally, interact with directly but is
valuable to be aware of.
Coherence services build on top of the clustering service, with the key implementations to be aware of are
Coherence services build on top of the clustering service, with the key implementations to be aware of being
PartitionedService, InvocationService, and ProxyService.
In the majority of cases customers will deal with caches;
a cache will be represented by an implementation of `NamedCache<K,V>`.
Cache is an unfortunate name, as many Coherence customers use Coherence as a system-of-record rather than a lossy store of data.
Cache is an unfortunate name, as many customers use Coherence as a system-of-record rather than a lossy store of data.
A cache is hosted by a service, generally the PartitionedService, and is the entry point to storing, retrieving,
aggregating, querying, and streaming data.
There are a number of features that caches provide:
* Fundamental *key-based access*: get/put getAll/putAll
Expand All @@ -42,11 +43,19 @@ There are a number of features that caches provide:
* *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
* *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
* *Non-blocking / async NamedCache API*
* *C{pp} and .NET clients* - access the same NamedCache API from either C{pp} or .NET
* *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]
* *Portable Object Format* - optimized serialization format, with the ability to navigate the serialized form for optimized queries, aggregations, or data processing
* *Integration with Databases* - Database & third party data integration with CacheStores including both synchronous or asynchronous writes
* *CohQL* - ansi-style query language with a console for adhoc queries
* *Topics* - distributed topics implementation offering pub/sub messaging with the storage capacity the cluster and parallelizable subscribers
* *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
* *coherence-concurrent* - Coherence-backed implementations of types from the `java.util.concurrent` package enabling distributed process coordination through the grid
** *Atomics* - for implementing e.g. atomic counters shared between cluster, with an optional asynchronous API
** *Executors* - for submitting tasks to be executed in the cluster
** *Locks* - for implementing lock-based concurrency control across multiple cluster members
** *Queues* - for implementing blocking queue / dequeue behavior across multiple cluster members
** *Semaphores* - for implementing synchronization of execution across multiple cluster members
* *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
There are also a number of non-functional features that Coherence provides:
Expand All @@ -59,7 +68,7 @@ There are also a number of non-functional features that Coherence provides:
* *Lossy redundancy* - ability to reduce the redundancy guarantee by making backups and/or persistence asynchronous from a client perspective
* *Single Mangement View* - provides insight into the cluster with a single JMX server that provides a view of all members of the cluster
* *Management over REST* - all JMX data and operations can be performed over REST, including cluster wide thread dumps and heapdumps
* *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
* *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]
* *Kubernetes friendly* - seamlessly and safely deploy applications to k8s with our own https://github.com/oracle/coherence-operator[operator]
Expand Down
2 changes: 1 addition & 1 deletion prj/docs/about/03_quickstart.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////////
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Copyright (c) 2000, 2025, Oracle and/or its affiliates.

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

0 comments on commit 2349e29

Please sign in to comment.