Commit Graph

6403 Commits

Author SHA1 Message Date
Francesco Nigro 89c02f1cc0 ARTEMIS-2211 Refactor ByteBuffer pooling, alignment and zeroing
Refactored thread local ByteBuffer pooling, alignment
and zeroing in order to avoid duplicate code and
improve code coverage with tests.
In addition are being provided faster branchless
alignment operations and optional zeroing of
pooled ByteBuffers for both ASYNCIO and
NIO/MAPPED journal types.
2019-03-12 18:32:53 -04:00
Clebert Suconic eca3c6ccd3 This closes #2391 2019-03-12 18:24:57 -04:00
Chao Wang 33b67b42d8 NO-JIRA add page decoding test for large message with no persistence 2019-03-12 18:24:56 -04:00
Clebert Suconic c7fa858eb5 This closes #2466 2019-03-12 17:58:40 -04:00
onlyMIT 971f673c60 ARTEMIS-2206 The MQTT consumer reconnection caused the queue to not be cleared, and caused Artemis broker to throw a NullPointerException.
When the MQTT consumer client (cleanSession property set to true) reconnected, there are certain probabilities that these two bugs will occur.
This is because the MQTT consumer client thinks that its connection has been disconnected and triggers reconnection, but the MQTT connection is still alive at Artemis broker. This bug occurs when new and old connections occur while operating the same queue for unsafe behavior.
2019-03-12 17:51:12 -04:00
Clebert Suconic 2a3ce34a58 This closes #2559 2019-03-12 16:27:58 -04:00
Francesco Nigro 39fd58f719 ARTEMIS-2258 The FileLockNodeManager directory should be configurable 2019-03-12 16:15:24 -04:00
Michael Andre Pearce ed05bbf348 This closes #2528 2019-03-12 19:57:31 +00:00
onlyMIT 4484d05cf0 ARTEMIS-2226 last consumer connection should close the previous consumer connection
Multiple consumers using the same clientId in the cluster, the last consumer connection should close the previous consumer connection!

ARTEMIS-2226 last consumer connection should close the previous consumer connection

to address apache-rat-plugin:0.12:check

ARTEMIS-2226 last consumer connection should close the previous consumer connection

to address checkstyle

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

add javadoc
2019-03-12 19:57:31 +00:00
Clebert Suconic 1c637c1a2e This closes #2561 2019-03-12 15:54:56 -04:00
yang wei c1dcd4bec9 ARTEMIS-2259 Client session not exist if reattach on new connection timeout 2019-03-12 15:54:56 -04:00
Michael Andre Pearce 201d76bbd7 This closes #2580 2019-03-12 19:54:39 +00:00
Michael André Pearce fafbd7e2e5 ARTEMIS-1604 Artemis deadlock using MQTT Protocol
Address code review comment not address when PR was merged.
2019-03-12 19:53:07 +00:00
Clebert Suconic ef7d9800be This closes #2571 2019-03-12 14:53:58 -04:00
Erik Östlund a760b8bb30 NO-JIRA Added Javadoc reference to the documentation 2019-03-12 14:53:37 -04:00
Clebert Suconic 751323e3fe This closes #2575 2019-03-12 14:50:32 -04:00
Rico Neubauer 6216e81637 ARTEMIS-2269 Using karaf.etc for config location
Karaf config should use predefined etc-dir instead of hard-coded etc
2019-03-12 14:50:31 -04:00
Clebert Suconic e2b71b1df9 This closes #2578 2019-03-12 14:48:40 -04:00
Abdullah Asaad 54380633e5 NO-JIRA Fix documentation typos 2019-03-12 14:48:40 -04:00
Clebert Suconic 2aa12ffc37 This closes #2577 2019-03-12 12:41:00 -04:00
Francesco Nigro 5b2c47567d ARTEMIS-1604 Artemis deadlock using MQTT Protocol
MQTT shouldn't support direct deliveries
2019-03-12 12:36:25 -04:00
Clebert Suconic 0872f749a9 ARTEMIS-1604 Using default supportDirectDelivery=false
This is to avoid races setting it to false on protocols that won't support direct Deliver
2019-03-11 14:40:42 +01:00
Francesco Nigro c83fce8db4 ARTEMIS-1604 Artemis deadlock using MQTT Protocol
Direct and async deliveries lock QueueImpl::this and
ServerConsumerImpl::this in different order causing deadlock:
has been introduced a deliverLock to prevent both type of delivers
to concurrently happen, making irrelevant the lock ordering.
2019-03-11 14:35:39 +01:00
Clebert Suconic a6dc57967b This closes #2576 2019-03-08 15:17:49 -05:00
Michael André Pearce aa36f62c9f ARTEMIS-2271 - Upgrade to Netty Libs to Latest 4.1.34.FINAL
Also upgrade netty-tcnative along with it.
2019-03-08 17:41:36 +00:00
Clebert Suconic 7fceaeb6c0 This closes #2568 2019-03-08 12:12:09 -05:00
Keith Wall 95bcfaeb70 ARTEMIS-2262: Correlate management response messages with the request 2019-03-08 12:11:58 -05:00
Clebert Suconic 5af589d5d7 This closes #2573 2019-03-07 14:37:00 -05:00
Michael André Pearce 4a5af776d8 ARTEMIS-2265 Support Federated Queues and Addresses
Implement Federated Queue (builds on recent consumer priority)
Implement Federated Address (builds on recent queue level auto-delete)
Add Functional Tests
Add Failure Tests (remote and local shutdowns)
Add Documentation
2019-03-07 14:37:00 -05:00
Clebert Suconic 2cdb0670fd This closes #2570 2019-03-07 11:34:16 -05:00
Clebert Suconic 061fb2787e ARTEMIS-1977 Stripping activemq-artemis as a separated proejct 2019-03-07 11:34:15 -05:00
Clebert Suconic 9e22a048b6 This closes #2546 2019-03-05 15:27:08 -05:00
andytaylor f99db14c3a ARTEMIS-2249 - update cpp example to use correct client libs
https://issues.apache.org/jira/browse/ARTEMIS-2249
2019-03-05 15:27:08 -05:00
Clebert Suconic 3bfeaa4cd5 This closes #2572 2019-03-05 15:16:36 -05:00
Francesco Nigro 4ea9d25ca9 ARTEMIS-2264 PurgeOnNoConsumers prevent removal of messages with replication
Added test reproducer and changed Queue::isDurableMessage usages into
Queue::isDurable to allow acks to hit the journal and being
correctly replicated across nodes.
2019-03-05 15:16:36 -05:00
Clebert Suconic 2a92f2977a This closes #2574 2019-03-04 16:19:34 -05:00
Adrien Ferré 3ab8bf7858 NO-JIRA modified ubuntu install instructions for libaio 2019-03-04 16:19:21 -05:00
Clebert Suconic ea7a9acdda This closes #2569 2019-02-27 09:41:37 -05:00
Michael André Pearce 9b01e9521c ARTEMIS-2263 Support queue level auto-delete configuration
Add ability to configure when creating auto created queues at the queue level
Add support for configuring message count check
Add test cases
Update docs
2019-02-27 08:13:19 +00:00
Clebert Suconic 4c84b119cc This closes #2565 2019-02-25 20:12:21 -05:00
Clebert Suconic da3d7a2940 ARTEMIS-2243 Fixing ClassLoding and dependency to security domain on method parameter 2019-02-25 20:12:20 -05:00
Clebert Suconic 299e444009 This closes #2567 2019-02-25 20:11:04 -05:00
Clebert Suconic 9f6f36d041 ARTEMIS-2183 Fixing RefsOperation on consumers and adding test 2019-02-25 17:23:47 -05:00
Otavio R. Piske a1d10c02f9 ARTEMIS-2183 Useless statement in public synchronized List
Ensures that the returned list returns the refsToAck list instead of
trying to add all items of itself

This closes 2566
2019-02-25 17:23:34 -05:00
Michael Andre Pearce 0cf29fefc8 This closes #2563 2019-02-23 05:50:57 +00:00
Michael André Pearce 33d9edf525 NO-JIRA Document reloading when using modularised broker.xml 2019-02-23 05:50:56 +00:00
Michael Andre Pearce 073eef4291 This closes #2562 2019-02-23 05:45:59 +00:00
Michael André Pearce ffa5a3718f NO-JIRA Document reloading when using modularised broker.xml
Add docs to clarify the need to touch broker.xml for modularised config to reload
2019-02-23 05:44:08 +00:00
Clebert Suconic 35e0b3fca2 This closes #2529 2019-02-22 10:19:52 -05:00
Otavio R. Piske b0a148158d ARTEMIS-2260 Refactor the library build code
This refactoring changes the native library build code to allow cross-compilation
and brings the following changes:

- Fix the link target to the one that was actually found by find_library

- Replace add definitions with standard CMake C flags handling options. Among
other things, this allow greater control over which compiler flags are used
and makes it easier to turn on/off debug flags by manipulating the
CMAKE_USER_C_FLAGS variable as documented in the README

- Updates the CMake scripts to allow cross-compilation of the artemis
native library into x86 32-bit code when building on a x86 64-bit system

- Updates the library documentation

- Defines C99 as the C standard in use so that the native library code can be
compiled in older GCC versions

- Renames the readme file so it can be better visualized on the web
2019-02-22 10:18:51 -05:00