Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
Openfire
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
Openfire
Commits
8b91a78e
Commit
8b91a78e
authored
Feb 08, 2018
by
Greg Thomas
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
OF-1475: Update to Hazelcast 3.9.2.
parent
f961503d
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
33 additions
and
41 deletions
+33
-41
hazelcast-cache-config.xml
src/plugins/hazelcast/classes/hazelcast-cache-config.xml
+7
-10
hazelcast-3.9.2.jar
src/plugins/hazelcast/lib/hazelcast-3.9.2.jar
+0
-0
hazelcast-cloud-3.5.1.jar
src/plugins/hazelcast/lib/hazelcast-cloud-3.5.1.jar
+0
-0
plugin.xml
src/plugins/hazelcast/plugin.xml
+3
-3
pom.xml
src/plugins/hazelcast/pom.xml
+2
-2
readme.html
src/plugins/hazelcast/readme.html
+21
-26
No files found.
src/plugins/hazelcast/classes/hazelcast-cache-config.xml
View file @
8b91a78e
...
@@ -14,10 +14,10 @@
...
@@ -14,10 +14,10 @@
~ See the License for the specific language governing permissions and
~ See the License for the specific language governing permissions and
~ limitations under the License.
~ limitations under the License.
-->
-->
<hazelcast
xmlns=
"http://www.hazelcast.com/schema/config"
<hazelcast
xsi:schemaLocation=
"http://www.hazelcast.com/schema/config hazelcast-config-3.5.xsd
"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance
"
x
mlns=
"http://www.hazelcast.com/schema/config"
x
si:schemaLocation=
"http://www.hazelcast.com/schema/config
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance
"
>
http://www.hazelcast.com/schema/config/hazelcast-config-3.9.xsd
"
>
<group>
<group>
<name>
openfire
</name>
<name>
openfire
</name>
<password>
openfire
</password>
<password>
openfire
</password>
...
@@ -190,10 +190,9 @@
...
@@ -190,10 +190,9 @@
penalty due to invalidations on the other cluster members.
penalty due to invalidations on the other cluster members.
-->
-->
<near-cache>
<near-cache>
<
max-size>
1000
</max-size
>
<
eviction
eviction-policy=
"LRU"
max-size-policy=
"ENTRY_COUNT"
size=
"1000"
/
>
<time-to-live-seconds>
0
</time-to-live-seconds>
<time-to-live-seconds>
0
</time-to-live-seconds>
<max-idle-seconds>
600
</max-idle-seconds>
<max-idle-seconds>
600
</max-idle-seconds>
<eviction-policy>
LRU
</eviction-policy>
<invalidate-on-change>
true
</invalidate-on-change>
<invalidate-on-change>
true
</invalidate-on-change>
</near-cache>
</near-cache>
</map>
</map>
...
@@ -457,9 +456,8 @@
...
@@ -457,9 +456,8 @@
<time-to-live-seconds>
21600
</time-to-live-seconds>
<time-to-live-seconds>
21600
</time-to-live-seconds>
<eviction-policy>
LRU
</eviction-policy>
<eviction-policy>
LRU
</eviction-policy>
<near-cache>
<near-cache>
<
max-size>
10000
</max-size
>
<
eviction
eviction-policy=
"LRU"
max-size-policy=
"ENTRY_COUNT"
size=
"10000"
/
>
<max-idle-seconds>
1800
</max-idle-seconds>
<max-idle-seconds>
1800
</max-idle-seconds>
<eviction-policy>
LRU
</eviction-policy>
<invalidate-on-change>
true
</invalidate-on-change>
<invalidate-on-change>
true
</invalidate-on-change>
</near-cache>
</near-cache>
</map>
</map>
...
@@ -470,9 +468,8 @@
...
@@ -470,9 +468,8 @@
<time-to-live-seconds>
900
</time-to-live-seconds>
<time-to-live-seconds>
900
</time-to-live-seconds>
<eviction-policy>
LRU
</eviction-policy>
<eviction-policy>
LRU
</eviction-policy>
<near-cache>
<near-cache>
<
max-size>
10000
</max-size
>
<
eviction
eviction-policy=
"LRU"
max-size-policy=
"ENTRY_COUNT"
size=
"10000"
/
>
<max-idle-seconds>
60
</max-idle-seconds>
<max-idle-seconds>
60
</max-idle-seconds>
<eviction-policy>
LRU
</eviction-policy>
<invalidate-on-change>
true
</invalidate-on-change>
<invalidate-on-change>
true
</invalidate-on-change>
</near-cache>
</near-cache>
</map>
</map>
...
...
src/plugins/hazelcast/lib/hazelcast-3.
5.1
.jar
→
src/plugins/hazelcast/lib/hazelcast-3.
9.2
.jar
View file @
8b91a78e
No preview for this file type
src/plugins/hazelcast/lib/hazelcast-cloud-3.5.1.jar
deleted
100644 → 0
View file @
f961503d
File deleted
src/plugins/hazelcast/plugin.xml
View file @
8b91a78e
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<name>
Hazelcast plugin
</name>
<name>
Hazelcast plugin
</name>
<description>
Adds clustering support
</description>
<description>
Adds clustering support
</description>
<author>
Tom Evans
</author>
<author>
Tom Evans
</author>
<version>
2.
2.4
</version>
<version>
2.
3.0-SNAPSHOT
</version>
<date>
10/26/2017
</date>
<date>
mm/dd/2018
</date>
<minServerVersion>
4.
2
.0
</minServerVersion>
<minServerVersion>
4.
0
.0
</minServerVersion>
</plugin>
</plugin>
src/plugins/hazelcast/pom.xml
View file @
8b91a78e
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
<parent>
<parent>
<artifactId>
plugins
</artifactId>
<artifactId>
plugins
</artifactId>
<groupId>
org.igniterealtime.openfire
</groupId>
<groupId>
org.igniterealtime.openfire
</groupId>
<version>
4.
3.0-SNAPSHOT
</version>
<version>
4.
2.0
</version>
</parent>
</parent>
<groupId>
org.igniterealtime.openfire.plugins
</groupId>
<groupId>
org.igniterealtime.openfire.plugins
</groupId>
<artifactId>
hazelcast
</artifactId>
<artifactId>
hazelcast
</artifactId>
...
@@ -31,7 +31,7 @@
...
@@ -31,7 +31,7 @@
<dependency>
<dependency>
<groupId>
com.hazelcast
</groupId>
<groupId>
com.hazelcast
</groupId>
<artifactId>
hazelcast
</artifactId>
<artifactId>
hazelcast
</artifactId>
<version>
3.
5.1
</version>
<version>
3.
9.2
</version>
</dependency>
</dependency>
</dependencies>
</dependencies>
...
...
src/plugins/hazelcast/readme.html
View file @
8b91a78e
...
@@ -31,12 +31,12 @@
...
@@ -31,12 +31,12 @@
}
}
TT
{
TT
{
font-family
:
courier
new
;
font-family
:
courier
new
,
monospaced
,
sans-serif
;
font-weight
:
bold
;
font-weight
:
bold
;
color
:
#060
;
color
:
#060
;
}
}
PRE
{
PRE
{
font-family
:
courier
new
;
font-family
:
courier
new
,
monospaced
,
sans-serif
;
font-size
:
100%
;
font-size
:
100%
;
}
}
#datatable
TH
{
#datatable
TH
{
...
@@ -47,9 +47,6 @@
...
@@ -47,9 +47,6 @@
#datatable
TD
{
#datatable
TD
{
background-color
:
#FAF6EF
;
background-color
:
#FAF6EF
;
}
}
#datatable
.name
{
background-color
:
#DCE2F5
;
}
</style>
</style>
</head>
</head>
<body>
<body>
...
@@ -61,11 +58,11 @@ servers together in a cluster. By running Openfire as a cluster, you can
...
@@ -61,11 +58,11 @@ servers together in a cluster. By running Openfire as a cluster, you can
distribute the connection load among several servers, while also providing
distribute the connection load among several servers, while also providing
failover in the event that one of your servers fails. This plugin is a
failover in the event that one of your servers fails. This plugin is a
drop-in replacement for the original Openfire clustering plugin, using the
drop-in replacement for the original Openfire clustering plugin, using the
open source
<a
href=
"http://www.hazelcast.org"
>
Hazelcast
</a>
data distribution
open source
<a
href=
"http://www.hazelcast.org"
>
Hazelcast
In-Memory Data Grid
</a>
data distribution
framework in lieu of an expensive proprietary third-party product.
framework in lieu of an expensive proprietary third-party product.
</p>
</p>
<p>
<p>
The current Hazelcast release is version 3.
5.1
.
The current Hazelcast release is version 3.
9.2
.
</p>
</p>
<h3>
Clustering vs. Federation
</h3>
<h3>
Clustering vs. Federation
</h3>
<p>
XMPP is designed to scale in ways that are similar to email. Each Openfire
<p>
XMPP is designed to scale in ways that are similar to email. Each Openfire
...
@@ -146,31 +143,32 @@ cluster. Practically speaking, all the members of the cluster need to be running
...
@@ -146,31 +143,32 @@ cluster. Practically speaking, all the members of the cluster need to be running
same version of the plugin to prevent various errors and data synchronization issues.
same version of the plugin to prevent various errors and data synchronization issues.
</p>
</p>
<h3>
Option 1: Offline
</h3>
<h3>
Option 1: Offline
</h3>
<p><
b>
NOTE:
</b
>
This upgrade procedure is neat and tidy, but will incur a brief service outage.
<p><
strong>
NOTE:
</strong
>
This upgrade procedure is neat and tidy, but will incur a brief service outage.
</p>
</p>
<ol>
<ol>
<li>
Shut down Openfire on all servers in the cluster.
</li>
<li>
Shut down Openfire on all servers in the cluster.
</li>
<li>
For the first server in the cluster, perform the following steps:
</li>
<li>
For the first server in the cluster, perform the following steps:
<ol
type=
"a"
>
<ol
type=
"a"
>
<li>
Remove the existing
<code>
plugins/hazelcast.jar
</code></li>
<li>
Remove the existing
<code>
plugins/hazelcast.jar
</code></li>
<li>
Remove (recursively) the
<code>
plugins/hazelcast
</code>
directory
</li>
<li>
Remove (recursively) the
<code>
plugins/hazelcast
</code>
directory
</li>
<li>
Copy the updated
<code>
hazelcast.jar
</code>
into the
<code>
plugins
</code>
directory
</li>
<li>
Copy the updated
<code>
hazelcast.jar
</code>
into the
<code>
plugins
</code>
directory
</li>
<li>
Restart Openfire to unpack and install the updated plugin
</li>
<li>
Restart Openfire to unpack and install the updated plugin
</li>
</ol>
</ol>
</li>
<li>
Repeat these steps for the remaining servers in the cluster.
</li>
<li>
Repeat these steps for the remaining servers in the cluster.
</li>
</ol>
</ol>
<h3>
Option 2: Online
</h3>
<h3>
Option 2: Online
</h3>
<p><
b>
NOTE:
</b
>
Using this approach you should be able to continue servicing
<p><
strong>
NOTE:
</strong
>
Using this approach you should be able to continue servicing
XMPP connections during the upgrade.
XMPP connections during the upgrade.
</p>
</p>
<ol>
<ol>
<li>
Shut down Openfire on all servers
<
b>
except one
</b
>
.
</li>
<li>
Shut down Openfire on all servers
<
strong>
except one
</strong
>
.
</li>
<li>
Using the Plugins page from the online server, remove the existing Hazelcast plugin.
</li>
<li>
Using the Plugins page from the online server, remove the existing Hazelcast plugin.
</li>
<li>
Upload the new Hazelcast plugin and confirm it is installed (refresh the page if necessary)
</li>
<li>
Upload the new Hazelcast plugin and confirm it is installed (refresh the page if necessary)
</li>
<li>
Use the "Offline" steps above to upgrade and restart the remaining servers.
</li>
<li>
Use the "Offline" steps above to upgrade and restart the remaining servers.
</li>
</ol>
</ol>
<h3>
Option 3: Split-Brain
</h3>
<h3>
Option 3: Split-Brain
</h3>
<p><
b>
NOTE:
</b
>
Use this approach if you only have access to the Openfire console.
<p><
strong>
NOTE:
</strong
>
Use this approach if you only have access to the Openfire console.
Note however that users may not be able to communicate with each other during the upgrade
Note however that users may not be able to communicate with each other during the upgrade
(if they are connected to different servers).
(if they are connected to different servers).
</p>
</p>
...
@@ -181,35 +179,32 @@ clustering for all members of the cluster.</li>
...
@@ -181,35 +179,32 @@ clustering for all members of the cluster.</li>
<li>
After upgrading the plugin on all servers, use the Clustering page to enable clustering.
<li>
After upgrading the plugin on all servers, use the Clustering page to enable clustering.
This will activate clustering for all members of the cluster.
</li>
This will activate clustering for all members of the cluster.
</li>
</ol>
</ol>
<a
name=
"config"
/
>
<a
name=
"config"
></a
>
<h2>
Configuration
</h2>
<h2>
Configuration
</h2>
<p>
There are several configuration options built into the Hazelcast plugin
<p>
There are several configuration options built into the Hazelcast plugin
as Openfire system properties:
as Openfire system properties:
</p>
</p>
<ol>
<ol>
<li><i>
hazelcast.startup.delay.seconds
</i>
(5): Number of seconds
<li><em>
hazelcast.startup.retry.count
</em>
(1): Number of times to retry
to wait before launching the Hazelcast plugin. This allows Openfire to
deploy any other plugins before initializing the cluster caches, etc.
</li>
<li><i>
hazelcast.startup.retry.count
</i>
(1): Number of times to retry
initialization if the cluster fails to start on the first attempt.
</li>
initialization if the cluster fails to start on the first attempt.
</li>
<li><
i>
hazelcast.startup.retry.seconds
</i
>
(10): Number of seconds to wait
<li><
em>
hazelcast.startup.retry.seconds
</em
>
(10): Number of seconds to wait
between subsequent attempts to start the cluster.
</li>
between subsequent attempts to start the cluster.
</li>
<li><
i>
hazelcast.max.execution.seconds
</i
>
(30): Maximum time to wait
<li><
em>
hazelcast.max.execution.seconds
</em
>
(30): Maximum time to wait
when running a synchronous task across members of the cluster.
</li>
when running a synchronous task across members of the cluster.
</li>
<li><
i>
hazelcast.config.xml.filename
</i
>
(hazelcast-cache-config.xml): Name
<li><
em>
hazelcast.config.xml.filename
</em
>
(hazelcast-cache-config.xml): Name
of the Hazelcast configuration file. By overriding this value you can easily
of the Hazelcast configuration file. By overriding this value you can easily
install a custom cache configuration file in the Hazelcast plugin /classes/
install a custom cache configuration file in the Hazelcast plugin /classes/
directory, in the directory named via the
<
i>
hazelcast.config.xml.directory
</i
>
directory, in the directory named via the
<
em>
hazelcast.config.xml.directory
</em
>
property (described below), or in the classpath of your own custom plugin.
</li>
property (described below), or in the classpath of your own custom plugin.
</li>
<li><
i>
hazelcast.config.xml.directory
</i
>
({OPENFIRE_HOME}/conf): Directory
<li><
em>
hazelcast.config.xml.directory
</em
>
({OPENFIRE_HOME}/conf): Directory
that will be added to the plugin's classpath. This allows a custom Hazelcast
that will be added to the plugin's classpath. This allows a custom Hazelcast
configuration file to be located outside the Openfire home directory.
</li>
configuration file to be located outside the Openfire home directory.
</li>
<li><
i>
hazelcast.config.jmx.enabled
</i
>
(false): Enables JMX support for
<li><
em>
hazelcast.config.jmx.enabled
</em
>
(false): Enables JMX support for
the Hazelcast cluster if JMX has been enabled via the Openfire admin console.
the Hazelcast cluster if JMX has been enabled via the Openfire admin console.
Refer to the
<a
href=
"http://docs.hazelcast.org/docs/3.
5/manual/html/monitoringwithjmx.html
"
>
Refer to the
<a
href=
"http://docs.hazelcast.org/docs/3.
9.2/manual/html-single/index.html#monitoring-with-jmx
"
>
Hazelcast JMX docs
</a>
for additional information.
</li>
Hazelcast JMX docs
</a>
for additional information.
</li>
</ol>
</ol>
<p>
The Hazelcast plugin uses the
<a
href=
"http://docs.hazelcast.org/docs/3.
5/manual/html/configurationoverview.html
"
>
<p>
The Hazelcast plugin uses the
<a
href=
"http://docs.hazelcast.org/docs/3.
9.2/manual/html-single/index.html#configuring-declaratively
"
>
XML configuration builder
</a>
to initialize the cluster from the XML file described above.
XML configuration builder
</a>
to initialize the cluster from the XML file described above.
By default the cluster members will attempt to discover each other via multicast at the
By default the cluster members will attempt to discover each other via multicast at the
following location:
following location:
...
@@ -235,7 +230,7 @@ following alternative:
...
@@ -235,7 +230,7 @@ following alternative:
<
/join
>
<
/join
>
...
...
</pre>
</pre>
<p>
Please refer to the
<a
href=
"http://docs.hazelcast.org/docs/3.
5/manual/html-single/
"
>
<p>
Please refer to the
<a
href=
"http://docs.hazelcast.org/docs/3.
9.2/manual/html-single/index.html
"
>
Hazelcast reference manual
</a>
for more information.
Hazelcast reference manual
</a>
for more information.
</p>
</p>
<h3>
A Word About Garbage Collection
</h3>
<h3>
A Word About Garbage Collection
</h3>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment