Clebert Suconic
9768017530
[maven-release-plugin] prepare release 2.16.0
2020-11-02 17:45:38 -05:00
Clebert Suconic
28919b6ad8
[maven-release-plugin] prepare for next development iteration
2020-10-30 10:16:29 -04:00
Clebert Suconic
af5ca9f1e6
[maven-release-plugin] prepare release 2.16.0
2020-10-30 10:16:17 -04:00
Emmanuel Hugonnet
fdfc58171b
[ARTEMIS-2939]: Artemis should not delete corrupt log files.
...
* Moving corrupted journal files to the attic folder.
Jira: https://issues.apache.org/jira/browse/ARTEMIS-2939
2020-10-20 18:39:06 -04:00
franz1981
a680f7d52e
ARTEMIS-2928 blocking CallbackCache can be replaced with a JCTools lock-free queue
2020-10-06 07:14:24 +02:00
Domenico Francesco Bruscino
32bf9680f2
[maven-release-plugin] prepare for next development iteration
2020-08-24 16:03:24 +02:00
Domenico Francesco Bruscino
a549fcedde
[maven-release-plugin] prepare release 2.15.0
2020-08-24 16:03:12 +02:00
franz1981
a6bf7d0e04
ARTEMIS-2837 Bursts of open files under high load
...
This would prevent to push a new opened file if there
is already one available to be consumed
2020-08-17 13:01:41 -04:00
franz1981
851aef1172
Revert "ARTEMIS-2837 Avoiding bursts on writes and pending callbacks"
...
This reverts commit 1761f763
2020-08-17 13:01:41 -04:00
franz1981
7902dd1757
ARTEMIS-2849 Optimize zeroing of buffers while writing the ASYNCIO journal
2020-07-23 15:44:52 -04:00
Clebert Suconic
6690ba1d24
[maven-release-plugin] prepare for next development iteration
2020-07-09 12:49:08 -04:00
Clebert Suconic
a76f41a7ed
[maven-release-plugin] prepare release 2.14.0
2020-07-09 12:48:54 -04:00
Clebert Suconic
1761f76308
ARTEMIS-2837 Avoiding bursts on writes and pending callbacks
2020-07-08 23:08:27 -04:00
Robbie Gemmell
d2c46762e8
ARTEMIS-2109: fix javadoc errors, remove doclint config for JDK8, remove superfluous plugin versions, update to 3.0.1 javadoc plugin
...
Using 3.0.1 like the current apache parent pom [not being used], and also as newer ones break build.
2020-06-11 18:50:01 +01:00
Emmanuel Hugonnet
efe0f468de
ARTEMIS-2109: Updating the build to be able to execute it on Java 11 and Java 8.
2020-06-11 18:50:01 +01:00
Clebert Suconic
faa83b2ba6
[maven-release-plugin] prepare for next development iteration
2020-05-16 18:38:47 -04:00
Clebert Suconic
5f49d89264
[maven-release-plugin] prepare release 2.13.0
2020-05-16 18:38:34 -04:00
Clebert Suconic
c99fcd501b
[maven-release-plugin] prepare for next development iteration
2020-05-15 16:42:54 -04:00
Clebert Suconic
47fafac760
[maven-release-plugin] prepare release 2.13.0
2020-05-15 16:42:41 -04:00
Francesco Nigro
4e1af3aea3
ARTEMIS-2762 JournalRecord is using too much memory to track JournalFile updates
2020-05-15 09:21:33 -04:00
Clebert Suconic
3541ebf218
ARTEMIS-2732 Cleanup on testsuite logging
2020-04-22 23:08:46 -04:00
Clebert Suconic
11a3e810bb
[maven-release-plugin] prepare for next development iteration
2020-04-21 17:06:21 -04:00
Clebert Suconic
30272e0c2f
[maven-release-plugin] prepare release 2.12.0
2020-04-21 17:06:08 -04:00
Clebert Suconic
d231e2ac63
[maven-release-plugin] prepare for next development iteration
2020-04-16 16:16:41 -04:00
Clebert Suconic
9636f4a3b0
[maven-release-plugin] prepare release 2.12.0
2020-04-16 16:16:28 -04:00
Clebert Suconic
af796d5ce4
ARTEMIS-2701 Improving DLQ/check over previously removed records
2020-04-06 12:25:35 -04:00
Clebert Suconic
03fb630f73
ARTEMIS-1975 Fixing LargeMessage encoding for replication
2020-03-25 16:16:05 -04:00
Clebert Suconic
31c945f8b0
ARTEMIS-1975 Fixing encodesize cached on AMQP Large Message
...
Encoding ahead is broken with AMQP Large Message
This is still part of ARTEMIS-1975
2020-03-24 15:51:46 -04:00
Clebert Suconic
ddd8ed4402
ARTEMIS-1975 Real Large Message support into AMQP
...
This is a Large commit where I am refactoring largeMessage Body out of CoreMessage
which is now reused with AMQP.
I had also to fix Reference Counting to fix how Large Messages are Acked
And I also had to make sure Large Messages are transversing correctly when in cluster.
2020-02-25 15:25:01 +01:00
Francesco Nigro
5897909dc9
ARTEMIS-2617 use core pools to reduce GC on journal loading
2020-02-12 13:29:51 -05:00
Francesco Nigro
fa0c187ae6
ARTEMIS-2602 Reduce number of copies for non JDBC Journal
2020-01-18 18:45:12 +01:00
Francesco Nigro
b10d765139
ARTEMIS-2602 load surviving records into SparseArrayLinkedList
2020-01-17 14:31:52 -05:00
Francesco Nigro
4cc6464ddd
ARTEMIS-2602 Improve Journal loading heap usage
2020-01-17 14:31:52 -05:00
Justin Bertram
97735ca72c
[maven-release-plugin] prepare for next development iteration
2020-01-10 09:00:58 -06:00
Justin Bertram
25a947f6cb
[maven-release-plugin] prepare release 2.11.0
2020-01-10 08:57:46 -06:00
Clebert Suconic
91f4d0a633
[maven-release-plugin] prepare for next development iteration
2019-09-23 11:19:54 -04:00
Clebert Suconic
86a975fdad
[maven-release-plugin] prepare release 2.10.1
2019-09-23 11:19:42 -04:00
Francesco Nigro
f51c799ac0
ARTEMIS-1811 NIO Seq File should use RandomAccessFile with heap buffers
...
It use RandomAccessFile to allow using heap buffers without additional
copies and/or leaks of direct buffers, as performed by FileChannel JDK
implementation (see https://bugs.openjdk.java.net/browse/JDK-8147468 )
2019-09-23 10:55:20 -04:00
Clebert Suconic
5016f69daa
[maven-release-plugin] prepare for next development iteration
2019-08-26 10:42:13 -04:00
Clebert Suconic
f092d5396a
[maven-release-plugin] prepare release 2.10.0
2019-08-26 10:42:01 -04:00
Clebert Suconic
aa5d76e1bb
ARTEMIS-2414 AIOSequentialFile was ignoring sync and leaking files
2019-07-30 11:03:06 -04:00
Wei Yang
edace8845e
ARTEMIS-2414 Sync before closing file in case data loss
2019-07-29 14:44:26 -04:00
Clebert Suconic
ebbc500b82
NO-JIRA Duplicate Call on getEncodeSize
2019-07-16 15:15:43 -04:00
yang wei
dd62be1602
ARTEMIS-2414 Sync before closing file in case data loss
2019-07-15 23:53:44 +01:00
Francesco Nigro
4445261f34
ARTEMIS-2382 Reclaimer doesn't need to be instantiatable
2019-06-17 22:31:30 -04:00
brusdev
9b52547ff7
ARTEMIS-2371 Message with huge header shuts broker down
...
Add max record size check before adding a record to prevent that the
broker shuts down, when there is one really large header sent with the
message. Add message size check before allocating large message resource
if it can't be stored.
2019-06-10 17:36:18 -04:00
Justin Bertram
dbb2b54fa7
[maven-release-plugin] prepare for next development iteration
2019-05-29 22:02:00 -05:00
Justin Bertram
88c686cc99
[maven-release-plugin] prepare release 2.9.0
2019-05-29 21:59:18 -05:00
Clebert Suconic
2ae732cfc8
[maven-release-plugin] prepare for next development iteration
2019-05-16 09:58:27 -04:00
Clebert Suconic
481b9824a8
[maven-release-plugin] prepare release 2.8.1
2019-05-16 09:58:15 -04:00
Clebert Suconic
56152a9e7c
[maven-release-plugin] prepare for next development iteration
2019-05-02 16:39:10 -04:00
Clebert Suconic
a8e7f9d07a
[maven-release-plugin] prepare release 2.8.0
2019-05-02 16:38:58 -04:00
Jiri Danek
f7a36300ef
ARTEMIS-2320 Fix IntLongMath errorprone warning
...
Expression of type int may overflow before being assigned to a long
(see https://errorprone.info/bugpattern/IntLongMath )
2019-04-29 11:27:29 +01:00
Clebert Suconic
228f6af4ca
[maven-release-plugin] prepare for next development iteration
2019-04-25 16:52:09 -04:00
Clebert Suconic
09d2ba18a7
[maven-release-plugin] prepare release 2.8.0
2019-04-25 16:51:57 -04:00
Clebert Suconic
516b1a1b9f
[maven-release-plugin] prepare for next development iteration
2019-03-14 12:41:04 -04:00
Clebert Suconic
c3eb6c12ad
[maven-release-plugin] prepare release 2.7.0
2019-03-14 12:40:52 -04:00
Clebert Suconic
828a4856da
ARTEMIS-2274 Fix on Journal buffer overflow with almost large messages
2019-03-13 14:56:46 -04:00
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
061fb2787e
ARTEMIS-1977 Stripping activemq-artemis as a separated proejct
2019-03-07 11:34:15 -05:00
Francesco Nigro
4da9d84311
ARTEMIS-2239 Zero-copy NIO/MAPPED TimedBuffer
...
NIO/MAPPED journal types can use directly the buffer of TimedBuffer
to perform file writes, avoiding an expensive copy + zeroing.
2019-02-14 00:20:51 +00:00
Clebert Suconic
05d893036e
ARTEMIS-2200 NPE fix
...
This was a typo on my last commit around ARTEMIS-2200
2019-01-17 21:51:30 -05:00
Justin Bertram
57aacf784c
NO-JIRA fix lgtm.com warnings
...
Warnings enumerated at
https://lgtm.com/projects/g/apache/activemq-artemis/alerts/?mode=tree&severity=warning
2019-01-17 22:30:28 +00:00
Clebert Suconic
b3f0a87e0d
ARTEMIS-2200 NPE when calling journal.delete from Multiple Threads
2019-01-17 15:38:51 -05:00
Francesco Nigro
702f445205
ARTEMIS-2200 NPE while dropping/failing large messages on paging
...
Large messages pendingRecordID is not accessed atomically, leading
to races that would lead to records that cannot been found on the
journal for deletion: it would lead to cause NPE that won't clean
the pending tasks on the current OperationContextImpl.
Adding a cleanup on error of those tasks and avoiding the race
to happen by adding proper synchronization will both enforce
correct clean up when something bad happen and avoid NPE.
2019-01-17 14:35:25 -05:00
Francesco Nigro
1c0ef5d7f7
ARTEMIS-2196 Avoid creating RandomAccessFile when FileChannel is needed
2018-12-14 15:10:30 -06:00
feuillemorte
a3001fd9bd
ARTEMIS-2201 Added tests on DEFAULT_JOURNAL_FILE_OPEN_TIMEOUT value
2018-12-14 11:32:13 +01:00
Francesco Nigro
2967df6a99
ARTEMIS-1996 MappedSequentialFileFactory may cause DirectByteBuffer off-heap memory leaks
...
Compaction is now reusing direct ByteBuffers on both
reading and writing with explicit and deterministic
release to avoid high peak of native memory utilisation
after compaction.
2018-10-22 09:16:15 +02:00
Francesco Nigro
cae253d136
ARTEMIS-2131 Error compacting journal
...
Compaction cannot free a sliced view of a ByteBuffer on Java >=9:
the fix is using the original ByteBuffer instead of the slice
to perform a file write and allow it to be correctly released by
the Cleaner.
2018-10-17 20:49:50 -04:00
Clebert Suconic
6b1abd1aad
ARTEMIS-2053 avoiding data loss after compacting
2018-08-26 18:17:29 -04:00
Clebert Suconic
63e6cd98f8
ARTEMIS-2046 Fixing issues with JournalStorageManager.stop in replication, JDBC and shared storage
2018-08-20 21:25:57 -04:00
Justin Bertram
0ae7d32532
ARTEMIS-2014 Treat inability to create directory for paging as critial
2018-08-07 11:09:46 -05:00
Clebert Suconic
56be281aaf
ARTEMIS-1989 Replication catch up leaking files
...
Related commit that broke this at 837694e705
2018-07-25 15:03:57 +01:00
yang wei
1d5128839f
ARTEMIS-1923 fix constructing binding journalimpl bug
...
Clebert Suconic ammended this commit by adding a test and getter properties to satisfy the test
This closes #2133
2018-06-12 12:30:25 -04:00
Clebert Suconic
af56b67e38
[maven-release-plugin] prepare for next development iteration
2018-05-16 11:03:26 -04:00
Clebert Suconic
bcaa11c2ee
[maven-release-plugin] prepare release 2.6.0
2018-05-16 11:03:14 -04:00
Kui LIU
be6705afac
ARTEMIS-1822: Change the method name 'lookupRecord' to 'containsRecord'.
...
The method is named "lookupRecord".
"lookupRecord" seems to find a related record.
But the method is checking whether recordsSnapshot contains the id or not.
Thus, the method name "containsRecord" is more intuitive than "lookupRecord".
2018-04-26 21:25:37 -04:00
Clebert Suconic
4dd594f38b
ARTEMIS-618 Using proper block size on Native One Mega Buffer
...
This buffer is used on fill
2018-04-05 10:49:57 -05:00
Clebert Suconic
65db317176
NO-JIRA Providing information about failure on test
...
Travis CI has been reporting test failures.
Looking on logs I could see a critical failure happening but not much information on why.
This will help identify further issues.
2018-04-04 16:05:48 -04:00
Clebert Suconic
920af19adb
[maven-release-plugin] prepare for next development iteration
2018-03-12 12:46:27 -04:00
Clebert Suconic
5f5b1dcf8f
[maven-release-plugin] prepare release 2.5.0
2018-03-12 12:46:16 -04:00
Clebert Suconic
c77fa6c897
NO-JIRA Test tweaks
...
small fix and System.out
2018-02-20 23:44:16 -05:00
Clebert Suconic
0273e3e4ff
NO-JIRA Fixing a deadlock during #tearDown and TimedBuffer.stop
2018-02-20 15:42:27 -05:00
Christopher L. Shannon (cshannon)
ea70af15a3
ARTEMIS-1663 - Add new message count and size metrics
...
Adding new metrics for tracking message counts and sizes on a Queue.
This includes tracking metrics for pending, delivering and scheduled
messages. The paging store also tracks message size now.
2018-02-08 11:35:12 -05:00
Francesco Nigro
78a2e3a8f0
ARTEMIS-1643 Compaction must check against NULL records while replaying
...
JournalCompactor.UpdateCompactCommand::execute is checking if updateRecord is null to avoid on replay under huge load that will be thrown AMQ142028.
2018-01-31 10:34:16 +08:00
Clebert Suconic
61a1123ee1
ARTEMIS-1613 Integrating JDBC into CLI (create print-data and exp)
2018-01-18 20:55:00 -06:00
shoukun
c4bfb9521f
ARTEMIS-1570 Flush appendExecutor before take journal snapshot
...
When live start replication, it must make sure there is
no pending write in message & bindings journal, or we may
lost journal records during initial replication.
So we need flush append executor after acquire StorageManager's
write lock, before Journal's write lock.
Also we set a 10 seconds timeout when flush, the same as
Journal::flushExecutor. If we failed to flush in 10 seconds,
we abort replication, backup will try again later.
Use OrderedExecutorFactory::flushExecutor to flush executor
2018-01-18 13:16:27 -05:00
Justin Bertram
94b53c67c0
ARTEMIS-1406 removing impossible instanceof
2018-01-03 10:50:13 +08:00
Clebert Suconic
f9d101d0a1
ARTEMIS-1531 Adding timedbuffer operations on critical analyzer
...
Also, making TimedBuffer.stop() synchronized to avoid issues during device outages
2017-11-29 18:09:00 -05:00
Justin Bertram
55d7260a07
ARTEMIS-1510 refactor Maven poms
...
Clean up unused declared dependencies and undeclared dependencies which
are pulled in transitively.
2017-11-13 17:03:35 -05:00
Francesco Nigro
3950169c21
ARTEMIS-1471 Needs Bounds Checking on writes for MappedSequentialFile
...
The MappedSequentialFile relies on the assumption that any writers
won't exceed the maximum capacity of the file, leaving the JVM to crash otherwise.
This commit adds proper bounds checking on write operations (and position changes too)
in order to provide recoverable effects if such scenario should occour.
In addition are provided minor fixes on Mapped and Nio SequentialFile::fill behaviour
to match the original contract.
2017-11-06 13:52:57 -05:00
Justin Bertram
8703d9d51d
[maven-release-plugin] prepare for next development iteration
2017-11-01 00:38:57 -05:00
Justin Bertram
ec63189a0a
[maven-release-plugin] prepare release 2.4.0
2017-11-01 00:38:56 -05:00
Justin Bertram
a44b9d5edf
[maven-release-plugin] prepare for next development iteration
2017-10-31 12:09:43 -05:00
Justin Bertram
34a7431d1b
[maven-release-plugin] prepare release 2.4.0
2017-10-31 12:07:55 -05:00
Clebert Suconic
2bf690e21b
ARTEMIS-1489 Adding Timed Buffer into Critical Analyzer
2017-10-31 08:33:44 -05:00
Clebert Suconic
febd1f509c
NO-JIRA Individualizing Loggers on TimedBuffer
2017-10-23 14:53:02 -04:00
Francesco Nigro
f5dfbf7f12
ARTEMIS-1474 TimedBuffer improved doc and refactored dead brenches on methods
2017-10-23 14:44:09 -04:00
Clebert Suconic
d190b611be
ARTEMIS-1452 Improvements to IO parameters and options
...
- it is now possible to disable the TimedBuffer
- this is increasing the default on libaio maxAIO to 4k
- The Auto Tuning on the journal will use asynchronous writes to simulate what would happen on faster disks
- If you set datasync=false on the CLI, the system will suggest mapped and disable the buffer timeout
This closes #1436
This commit superseeds #1436 since it's now disabling the timed buffer through the CLI
2017-10-09 14:32:04 -04:00
Clebert Suconic
ba1323c8b2
ARTEMIS-1455 Fixing issues on Large Message conversion
2017-10-09 14:32:03 -04:00
Martyn Taylor
988c91557d
ARTEMIS-1444 Support Messages > JournalBufferSize in all Protocols
2017-10-09 12:50:38 -04:00
Clebert Suconic
30ba65a082
NO-JIRA: Fixing the testsuite on Page.finalize()
2017-10-07 12:05:55 -04:00
Clebert Suconic
bb554e5264
ARTEMIS-1397 Removing Netty Copied classes
...
instead of duplicating a buffer from Netty, this will use an existing Wrapped Unpooled Buffer
Which will in turn use Unsafe Properly.
2017-10-02 17:06:06 -04:00
Ryan Yeats
420421c90b
ARTEMIS-1397 remove package private access to netty
2017-10-02 09:33:47 -04:00
Clebert Suconic
aa3e8941d1
ARTEMIS-1442 Shutdown server if can't move file on journal
2017-09-29 11:35:47 -04:00
Martyn Taylor
520a40b1a1
ARTEMIS-1418 AIO Shutdown on IOError and logging
2017-09-13 16:09:21 +01:00
Francesco Nigro
35c3475092
ARTEMIS-1401 Numerical overflow fix when using System::nanoTime
2017-09-07 10:40:14 -04:00
Clebert Suconic
c8982d775b
[maven-release-plugin] prepare for next development iteration
2017-09-05 17:03:48 -04:00
Clebert Suconic
84d5ac65b4
[maven-release-plugin] prepare release 2.3.0
2017-09-05 17:03:37 -04:00
Clebert Suconic
ed1b268d42
[maven-release-plugin] prepare for next development iteration
2017-08-31 13:48:09 -04:00
Clebert Suconic
21f2a4a52c
[maven-release-plugin] prepare release 2.3.0
2017-08-31 13:47:57 -04:00
Martyn Taylor
652573a5a9
ARTEMIS-1354 Critical IO Error on AIO write failure
2017-08-17 12:29:13 -04:00
Michael André Pearce
684dd24cc7
ARTEMIS-1335 Update Netty to 4.1.14
...
Update Netty to 4.1.14
2017-08-09 15:20:49 -04:00
Clebert Suconic
1ace306121
ARTEMIS-1328 Improving direct delivery check
...
Instead of wait to flush an executor,
I have added a method isFlushed() which will just translate to the
state on the OrderedExecutor.
In the case another executor is provided (for tests) there's a delegate
into normal executors.
2017-08-08 14:00:58 -04:00
Francesco Nigro
74f243cc4d
ARTEMIS-1312 TimedBuffer doubled timeout with blocking flush
2017-08-01 11:52:28 -04:00
Francesco Nigro
567bfe3b9b
ARTEMIS-1312 TimedBuffer doubled timeout with blocking flush
2017-08-01 06:34:25 -04:00
Clebert Suconic
fdad83be22
[maven-release-plugin] prepare for next development iteration
2017-07-24 21:21:18 -04:00
Clebert Suconic
71b1cc2a20
[maven-release-plugin] prepare release 2.2.0
2017-07-24 21:21:06 -04:00
Clebert Suconic
ad372ec98e
ARTEMIS-1294 Using older sleep on TimedBuffer
...
And also adding test
2017-07-18 16:01:51 -04:00
Francesco Nigro
3dc9566fb6
ARTEMIS-1294 Reverted TimedBuffer timeout policy
2017-07-18 10:23:02 -04:00
Clebert Suconic
31d5758885
ARTEMIS-1288 crash during compact control files issues
...
The system would become irresponsive if crashed right at the
control file writing.
2017-07-13 17:12:58 -04:00
Clebert Suconic
7fd17f407f
ARTEMIS-1269 Simple Actor to replace certain executions
...
This is replacing an executor on ServerSessionPacketHandler
by a this actor.
This is to avoid creating a new runnable per packet received.
Instead of creating new Runnable, this will use a single static runnable
and the packet will be send by a message, which will be treated by a listener.
Look at ServerSessionPacketHandler on this commit for more information on how it works.
2017-07-11 14:22:36 -04:00
Clebert Suconic
89e84e1320
ARTEMIS-1269 Fixing blocked replication
...
If replication blocked anything on the journal
the processing from clients would be blocked
and nothing would work.
As part of this fix I am using an executor on ServerSessionPacketHandler
which will also scale better as the reader from Netty would be feed immediately.
2017-07-06 19:04:48 -04:00
Francesco Nigro
7075e2e457
ARTEMIS-1266 Mapped Journal refactoring
...
The MAPPED journal refactoring include:
- simplified lifecycle and logic (eg fixed file size with single mmap memory region)
- supports for the TimedBuffer to coalesce msyncs (via Decorator pattern)
- TLAB pooling of direct ByteBuffer like the NIO journal
- remove of old benchmarks and benchmark dependencies
2017-06-30 16:17:19 +02:00
Francesco Nigro
9f8a14440b
ARTEMIS-1223 OutOfDirectMemoryError raised from TimedBuffer
...
Force allocation of direct ByteBuffer with Cleaner to help GC on tests.
2017-06-27 12:45:26 -04:00
Andy Taylor
fbe27682a1
ARTEMIS-1237 - Hard coded timeout on Journal file open
...
Make timeout configurable
https://issues.apache.org/jira/browse/ARTEMIS-1237
2017-06-22 10:48:09 -04:00
Jiri Danek
3d4e907a1b
NO-JIRA fix typos
2017-06-21 11:16:29 -04:00
Michael Andre Pearce
c65ea783ea
ARTEMIS-1189 - Fix checkstyle violations post checkstyle upgrade
...
After upgrade of checkstyle, resolve violations
remove checkstyle override added as temp measure at point of upgrade forced by sevntu
2017-05-30 13:40:00 -04:00
Clebert Suconic
dc26ac96b4
ARTEMIS-1156: moving our collections on its own package
2017-05-12 10:06:05 -04:00
Michael André Pearce
c1d55aa84f
ARTEMIS-1156: FIX: Long Autoboxing occurring on Hot Path
...
Building on ARTEMIS-905 JCtools ConcurrentMap replacement first proposed but currently parked by @franz1981, replace the collections with primitive key concurrent collections to avoid auto boxing.
The goal of this is to reduce/remove autoboxing on the hot path.
We are just adding jctools to the broker (should not be in client dependencies)
Like wise targeting specific use case with specific implementation rather than a blanket replace all.
Using collections from Bookkeeper, reduces outside tlab allocation, on resizing compared to JCTools, which occurs frequently on testing.
2017-05-12 10:05:51 -04:00
Clebert Suconic
ce61d20f5a
[maven-release-plugin] prepare for next development iteration
2017-05-08 15:20:12 -04:00
Clebert Suconic
64e8f015ee
[maven-release-plugin] prepare release 2.1.0
2017-05-08 15:20:01 -04:00
Francesco Nigro
21c9ed85cf
ARTEMIS-1151 Adapting TimedBuffer and NIO Buffer Pooling
...
- NIO/ASYNCIO new TimedBuffer with adapting batch window heuristic
- NIO/ASYNCIO improved TimedBuffer write monitoring with
lightweight concurrent performance counters
- NIO/ASYNCIO journal/paging operations benefit from less buffer copy
- NIO/ASYNCIO any buffer copy is always performed with raw batch copy
using SIMD instrinsics (System::arrayCopy) or memcpy under the hood
- NIO improved clear buffers using SIMD instrinsics (Arrays::fill) and/or memset
- NIO journal operation perform by default TLABs allocation pooling (off heap)
retaining only the last max sized buffer
- NIO improved file copy operations using zero-copy FileChannel::transfertTo
- NIO improved zeroing using pooled single OS page buffer to clean the file
+ pwrite (on Linux)
- NIO deterministic release of unpooled direct buffers to avoid OOM errors
due to slow GC
- Exposed OS PAGE SIZE value using Env class
2017-05-08 11:55:28 -04:00
Clebert Suconic
36c9659279
[maven-release-plugin] prepare for next development iteration
2017-05-05 22:11:09 -04:00
Clebert Suconic
7b5082639f
[maven-release-plugin] prepare release 2.1.0
2017-05-05 22:10:58 -04:00
Francesco Nigro
2cdc62572b
ARTEMIS-1136 Improve UnpooledUnsafeDirectByteBufWrapper
2017-05-01 10:09:33 -04:00
Clebert Suconic
0a0955d0cc
ARTEMIS-1117 Improving IO Resilience Part II
...
https://issues.apache.org/jira/browse/ARTEMIS-1117
2017-04-18 11:34:09 -04:00
Francesco Nigro
23ba3e27d9
ARTEMIS-1117 Improving IO Failure resilience Part I
...
Me (Clebert) and Francesco worked independently here.
I am keeping Francesco's changes on a separate commit
https://issues.apache.org/jira/browse/ARTEMIS-1117
2017-04-18 11:34:09 -04:00
Clebert Suconic
ee261e736c
ARTEMIS-1114 Improving some comment
2017-04-14 18:08:37 -04:00
Clebert Suconic
ddacda5062
ARTEMIS-1114 Missing records after compacting
...
This is fixing an issue introduced on 4b47461f03
(ARTEMIS-822)
The Transactions were being looked up without the readLock and some of the controls for Read and Write lock
were broken after this.
2017-04-14 01:13:46 -04:00
Clebert Suconic
75a4162a36
NO-JIRA: logger on Exception
2017-03-14 09:50:19 -04:00
Martyn Taylor
c40823e5ec
[maven-release-plugin] prepare for next development iteration
2017-03-10 14:54:33 +00:00
Martyn Taylor
70e319d6e3
[maven-release-plugin] prepare release 2.0.0
2017-03-10 14:52:26 +00:00
Martyn Taylor
f1a5f1caf9
Revert "[maven-release-plugin] prepare release 2.0.0"
...
This reverts commit 057047499b
.
2017-03-10 14:45:29 +00:00
Martyn Taylor
1964abe567
Revert "[maven-release-plugin] prepare for next development iteration"
...
This reverts commit 9a52f51c9f
.
2017-03-10 14:44:58 +00:00
Martyn Taylor
9a52f51c9f
[maven-release-plugin] prepare for next development iteration
2017-03-10 11:36:36 +00:00
Martyn Taylor
057047499b
[maven-release-plugin] prepare release 2.0.0
2017-03-10 11:25:47 +00:00
Clebert Suconic
fe0ca4d84f
ARTEMIS-1009 Pure Message Encoding.
...
with this we could send and receive message in their raw format,
without requiring conversions to Core.
- MessageImpl and ServerMessage are removed as part of this
- AMQPMessage and CoreMessage will have the specialized message format for each protocol
- The protocol manager is now responsible to send the message
- The message will provide an encoder for journal and paging
2017-03-05 23:08:53 -05:00
Jiri Danek
a7a0535afa
NO-JIRA Fixing typos in log messages, test names and comments
...
Related to ARTEMIS-387 (fowardingAddress)
2017-02-20 20:54:45 -05:00
Clebert Suconic
c60c92697f
ARTEMIS-937 no sync on AIO shouldn't use O_DIRECT
2017-02-03 11:47:28 -05:00
Francesco Nigro
aacddfda61
ARTEMIS-906 Memory Mapped JournalType
2017-02-03 09:04:57 -05:00
Clebert Suconic
ce035a8084
ARTEMIS-937 Implementing proper alignment and adding perf-journal tool to validate the journal syncs
2017-02-03 09:04:56 -05:00
Martyn Taylor
6682072da6
Major Version Bump 2.0.0 After Major Arch Change
2016-12-09 18:43:15 +00:00
Martyn Taylor
89e6ec36bb
ARTEMIS-780 Implement MaxConsumers and DeleteOnNoConsumers
2016-12-09 18:43:15 +00:00
Clebert Suconic
ebbc91c728
[maven-release-plugin] prepare for next development iteration
2016-12-06 16:59:52 -05:00
Clebert Suconic
5bcbea2517
[maven-release-plugin] prepare release 1.5.1
2016-12-06 09:47:43 -05:00
Dmitrii Tikhomirov
3995319dca
ARTEMIS-865 Remove e.printStackTrace() from code
2016-11-23 11:15:54 -05:00
Clebert Suconic
f2db1c4337
[maven-release-plugin] prepare for next development iteration
2016-11-03 15:35:05 -04:00
Clebert Suconic
13a8a2bd40
[maven-release-plugin] prepare release 1.5.0
2016-11-03 15:34:54 -04:00
Clebert Suconic
5e5ac0f057
ARTEMIS-832 Openwire was ignoring data syncs.
...
I'm also adding the possibility of sync on libaio, and not only relay on write-cache
2016-11-02 13:17:12 -05:00
Clebert Suconic
7eadff7681
ARTEMIS-822 Injecting IO Pools into and from ArtemisServerImpl
...
https://issues.apache.org/jira/browse/ARTEMIS-822
2016-10-31 11:34:27 -04:00
Clebert Suconic
6afde8f45a
ARTEMIS-822 Review journal threading model
...
https://issues.apache.org/jira/browse/ARTEMIS-822
2016-10-28 16:54:59 -04:00
barreiro
4b47461f03
ARTEMIS-822 Add executor service to JournalImpl for append operations and remove synchronization
...
https://issues.apache.org/jira/browse/ARTEMIS-822
2016-10-28 16:54:59 -04:00
Ravi Soni
b4924ce73b
ARTEMIS-831 avoid shutting down the server after interrupted threads on
...
divert (copy and rename)
probably introduced at ARTEMIS-322
2016-10-28 16:28:57 -04:00
Ville Skyttä
ddd1559fbe
javadoc: Fix doclint empty <p> warnings
2016-10-10 10:02:49 +02:00
Clebert Suconic
ec48f9ed00
ARTEMIS-765 Improve Checkstyle
2016-09-30 11:12:09 -04:00
Clebert Suconic
f8278ec99c
ARTEMIS-727 Improving Thread usage on JDBC
...
https://issues.apache.org/jira/browse/ARTEMIS-727
2016-09-12 14:32:40 -04:00
Clebert Suconic
505b732843
[maven-release-plugin] prepare for next development iteration
2016-09-06 12:17:31 -04:00
Clebert Suconic
b305e231ec
[maven-release-plugin] prepare release 1.4.0
2016-09-06 12:17:08 -04:00
Ville Skyttä
d5242978d5
for and while loop to foreach conversions
2016-08-25 14:22:32 -04:00
Clebert Suconic
a3840c23c3
[maven-release-plugin] prepare for next development iteration
2016-08-16 11:59:55 -04:00
Clebert Suconic
d38ef19bf6
[maven-release-plugin] prepare release 1.4.0
2016-08-16 11:59:36 -04:00
Ville Skyttä
429e1e84d4
Remove unnecessary casts
2016-07-28 18:12:59 +03:00
Ville Skyttä
39edf958a1
Add missing @Override annotations
2016-07-19 16:09:12 +01:00
Francesco Nigro
36555a10c5
ARTEMIS-623/ARTEMIS-622 Added memory mapped impl of Sequential File + benchs.
...
Added experimental GCFree Journal impl + benchs + Sequentially Encoded Aligned Binary Protocol.
https://issues.apache.org/jira/browse/ARTEMIS-622
https://issues.apache.org/jira/browse/ARTEMIS-623
2016-07-11 13:36:47 -04:00
barreiro
b8d6a374a0
More changes on the reclaimer for better performance
2016-07-05 23:28:00 -04:00
Ville Skyttä
3923ae45f4
Fix checkstyle redundant modifier violations
2016-06-13 20:03:54 +03:00
Martyn Taylor
9ae39f663f
[maven-release-plugin] prepare for next development iteration
2016-06-09 12:52:56 +01:00
Martyn Taylor
221039e353
[maven-release-plugin] prepare release 1.3.0
2016-06-09 12:49:13 +01:00
Martyn Taylor
319439ab27
[maven-release-plugin] prepare for next development iteration
2016-06-09 12:25:19 +01:00
Martyn Taylor
2c5ab446be
[maven-release-plugin] prepare release 1.3.0
2016-06-09 12:24:48 +01:00
Martyn Taylor
4a07091718
[maven-release-plugin] prepare for next development iteration
2016-06-09 11:25:03 +01:00
Martyn Taylor
93cf7b4b9b
[maven-release-plugin] prepare release 1.3.0
2016-06-09 11:23:03 +01:00
Martyn Taylor
4574b3ee13
[maven-release-plugin] prepare for next development iteration
2016-06-08 11:03:35 +01:00
Martyn Taylor
2b3d22c5cc
[maven-release-plugin] prepare release 1.3.0
2016-06-08 11:02:14 +01:00
barreiro
3f131fc594
Rework journal reclaimer
2016-05-23 18:25:23 -04:00
Martyn Taylor
c9b953433e
ARTEMIS-513 Add JDBC Sequential File Factory Impl
2016-05-04 12:24:25 +01:00
Clebert Suconic
7bebe507cf
Individualizing loggers on journal
2016-04-28 14:37:23 -04:00
Clebert Suconic
e81fa5c359
ARTEMIS-490 Fixing LargeMessage copy through replication
...
this will fix cases like DLQ and Diverts
2016-04-19 15:00:09 +01:00
Clebert Suconic
d6c7e30594
ARTEMIS-484 Large Message Loss on Initial replication
...
https://issues.apache.org/jira/browse/ARTEMIS-484
The File copy after the initial synchronization on large messages was broken.
On this commit we fix how the buffer is cleaned up before each read since
a previously unfinished body read would make the buffer dirty.
I'm keeping also lots of Traces I have added to debug this issue, so they will
be useful if anything like this happens again.
2016-04-14 18:55:01 -04:00
Dominik Pospisil
078d38bc37
[ARTEMIS-444] Extend AIOSequentialFileFactory to check underlying FS
2016-04-04 12:23:36 -04:00
jbertram
e64ecf5523
ARTEMIS-422 support appendRollbackRecord
2016-02-25 13:31:19 -06:00
Ville Skyttä
3f20e0d19a
Remove redundant type parameters
2016-01-25 12:10:25 -05:00
Clebert Suconic
928ec603aa
Removing invalid System.exit
2016-01-23 16:42:37 -05:00
Clebert Suconic
85a2c191cf
ARTEMIS-353 retrying after interrupts on the native layer because of jmap issuing weird interrupts
...
https://issues.apache.org/jira/browse/ARTEMIS-353
2016-01-20 17:50:56 -05:00
Martyn Taylor
4922a7618a
Bump to next version to 1.3.0-SNAPSHOT
2016-01-20 17:25:07 +00:00
Tom Jenkinson
7b164e45c3
ARTEMIS-351 throw an exception if we get an IOException
2016-01-19 13:02:57 -05:00
Martyn Taylor
9b351d8236
ARTEMIS-27 / ARTEMIS-338 Refactor Journal Encodings into new package
2016-01-13 09:38:08 -05:00
Clebert Suconic
7820fd6d60
ARTEMIS-332 avoid shutting down the server after interrupted threads on paging
2016-01-07 16:08:38 -05:00
Clebert Suconic
96849a42b7
ARTEMIS-332 - Duplicate delivery over Bridges under OME scenarios, paging and other failures
...
https://issues.apache.org/jira/browse/ARTEMIS-332
2016-01-04 20:49:28 -05:00