Commit Graph

6470 Commits

Author SHA1 Message Date
Clebert Suconic 7a463f038a This closes #2329 2018-09-26 09:19:41 -04:00
Timothy Bish a851a8f93f ARTEMIS-2096 Refactor AMQMessage abstraction
Major refactoring of the AMQPMessage abstraction to resolve
some issue of message corruption still present in the code and
improve the API handling of message changes and re-encoding.

Improves handling of decoding of message sections limiting the
work to only the portions needed and ensuring the state data
is always updated with what has been done.  Fixes issues of
corrupt state on copy of message or other changes in filters.
2018-09-26 09:19:40 -04:00
Clebert Suconic 2453978f41 This closes #2172 2018-09-25 18:07:32 -04:00
Justin Bertram 9c62531c2f ARTEMIS-1961 track routed and unrouted messages sent to an address 2018-09-25 18:07:32 -04:00
Michael Andre Pearce a9916adcb4 This closes #2327 2018-09-21 22:38:51 +01:00
Justin Bertram 9c8df7b3c5 NO-JIRA update stomp doc a/b default behavior 2018-09-21 13:39:29 -05:00
Clebert Suconic 5d91f24d3a This closes #2316 2018-09-21 11:50:38 -04:00
Justin Bertram 07e14c1582 ARTEMIS-2087 support masked passwords in management.xml 2018-09-21 11:50:38 -04:00
Clebert Suconic cf525f014b This closes #2325 2018-09-21 09:49:53 -04:00
Francesco Nigro 3112b4f3db ARTEMIS-2093 NPE thrown by NettyConnector::createConnection
Given that NettyConnector::createConnection isn't happening on the
channel's event loop, it could race with a channel close event, that
would clean the whole channel pipeline, leading to a NPE while
trying to use a configured channel handler of the pipeline.
2018-09-21 15:06:53 +02:00
Clebert Suconic bd0f11498c This closes #2324 2018-09-19 16:19:45 -04:00
yang wei d868563e7b ARTEMIS-2092 fix first page messages lost on server crash bug 2018-09-19 16:19:45 -04:00
Clebert Suconic 94bd8ed77e This closes #2318 2018-09-19 15:32:03 -04:00
Francesco Nigro cfa3290209 ARTEMIS-2090 JDBC Journal is not deleting TX records
JDBCJournalImpl::cleanupTxRecords is not committing
the deleteJournalTxRecords statement leaving the
TX records into the journal
2018-09-19 15:32:03 -04:00
Michael Andre Pearce 46dfb8abef This closes #2322 2018-09-18 12:34:31 +01:00
Justin Bertram 5c8fcc19fd ARTEMIS-1991 document advanced destination options 2018-09-18 12:34:30 +01:00
Martyn Taylor 076c9791a4 This closes #2317 2018-09-18 11:46:47 +01:00
Francesco Nigro ead9b00757 ARTEMIS-2089 DB2 sending larger message (1MB) crashes the whole server
It declares JDBC journal Blobs for IBM DB2 DBMS matching max-blob-size
in order to allow to store data with size > 1 MB ie the default BLOB
capacity
2018-09-18 11:46:47 +01:00
andytaylor 4cbc387782 This closes #2315 ARTEMIS-1919 implement SNI properly 2018-09-18 08:00:05 +01:00
Justin Bertram c60d17884a ARTEMIS-1919 implement SNI properly 2018-09-18 08:00:05 +01:00
Roddie Kieley 50b18dfbbc NO-JIRA: ScaleDownTest checkstyle error fix
Empty space removed that produced a checkstyle error.
2018-09-17 14:53:22 -04:00
Clebert Suconic d6bdb1a7fd This closes #2202 2018-09-14 14:49:42 -04:00
Roddie Kieley 34df9679d7 ARTEMIS-2000: For ScaleDown set the RoutingType header property on the message
so if the address does not exist on the other end it will be created correctly.

Test added by Andy Taylor (commit squash during rebase on #2202)
2018-09-14 14:48:09 -04:00
Clebert Suconic 86c4d1b85b This closes #2306 2018-09-13 16:22:29 -04:00
andytaylor 82795b7bff ARTEMIS-1898 - make sure tosend credits on rejected messages
And also to run the credit runnables once memory is free in fail mode

https://issues.apache.org/jira/browse/ARTEMIS-1898
2018-09-13 16:22:28 -04:00
Clebert Suconic 51f4bf0f9e This closes #2314 2018-09-13 15:46:51 -04:00
Clebert Suconic ed71e090d1 ARTEMIS-2086 Removing HDR Histogram option 2018-09-13 15:46:50 -04:00
Clebert Suconic a68eaf4e70 ARTEMIS-2074 Fix test 2018-09-13 15:44:47 -04:00
Clebert Suconic bf0eede933 This closes #2293 2018-09-13 09:19:08 -04:00
andytaylor 3b34127bb3 ARTEMIS-2075 - allow Extra backups to try to replicate more than once
https://issues.apache.org/jira/browse/ARTEMIS-2075
2018-09-13 10:02:45 +01:00
Clebert Suconic ec24ee4561 This closes #2307 2018-09-12 20:59:13 -04:00
Francesco Nigro 7e09e1b350 ARTEMIS-2070 broker can reduce buffer copies with large messages 2018-09-12 20:59:12 -04:00
Clebert Suconic 49a364e801 This closes #2310 2018-09-12 20:50:00 -04:00
Clebert Suconic 6361079aa0 ARTEMIS-2084: Failover will not work with network cable disconnect on core protocol 2018-09-12 19:59:00 -04:00
Clebert Suconic 25a7d3bffc ARTEMIS-2074 Fixing Covery scan findings 2018-09-12 18:33:08 -04:00
Clebert Suconic 576f67c7c2 This closes #2308 2018-09-12 17:56:48 -04:00
Timothy Bish 369e475af6 ARTEMIS-2083 Decode only the relavent portions of the message
Ensure that the Body of the message is never decoded in the partial
decode phase of the message processing and also gaurd against the
decode of ApplicationProperties which should be done lazily.  Add
lazy decode of DeliveryAnnotations as they are not used at present.
2018-09-12 16:50:00 -04:00
Clebert Suconic 21190aabbc This closes #2309 2018-09-12 16:48:28 -04:00
Timothy Bish 5dbd0a74d2 NO-JIRA Fix condition timeouts to avoid spurious failures
The waits for expiration are set at the same value as the expiration
interval default to in the test support setup so on some runs there is a
race when waiting for the message to expire and the expiry task.
2018-09-12 16:48:28 -04:00
Clebert Suconic 5d69e3594f ARTEMIS-2074 Fixing RA properties 2018-09-12 16:47:24 -04:00
Clebert Suconic a7b9551f74 This closes #2284 2018-09-12 12:23:49 -04:00
Timothy Bish d1939620c0 ARTEMIS-2067 Clean up some code in the AMQP protocol handling paths
Cleans up some of the code on the proton event handler, most noteable:

1. Fix IOCallback creation on each outbound send, use single instance
as the handler only ever does a flush and has no attached state.
2. Fix redundent locking and unlocking of connection lock on the event
path that already ensures that lock is held.
3. Set presettle state on the server sender at attach as it cannot
change afterwards so checking on every message is not needed.
4. Improve buffer type checking on receive to reduce amount of work
2018-09-12 12:23:49 -04:00
Clebert Suconic a478eafe9f This closes #2292 2018-09-11 17:04:01 -04:00
Clebert Suconic d2d9a0e634 ARTEMIS-2074 URI not transposing ServerLocator on ConnectionFactory
This closes #2286
As it superceedes it
2018-09-11 17:04:01 -04:00
Clebert Suconic 5b52780c6a This closes #2294 2018-09-11 16:36:45 -04:00
Francesco Nigro 3c7252adbc ARTEMIS-2068 save reading any file to get AMQP large msg size
ServerJMSBytesMessage::getBodyLength can save reading
the whole large message file by reading just its
file size
2018-09-11 16:36:45 -04:00
Clebert Suconic 0f8942b66a This closes #2299 2018-09-11 16:35:15 -04:00
Francesco Nigro 7a7304bb28 ARTEMIS-2078 AMQP large msg aren't consumed by clusters without persistence
NullStorageLargeServerMessage is not correctly exposing its body buffer
to allow CoreAmqpConverter to convert it into an AMQPMessage
2018-09-11 16:35:15 -04:00
Clebert Suconic ff0e7ef4b3 This closes #2304 2018-09-11 16:17:45 -04:00
Timothy Bish e065e3e960 ARTEMIS-2082 Reset buffer valid flag after re-encoding the message
Once a re-encode of the message is done the buffer is not being marked
as valid and so subsequent checks on the buffer are all assuming the
message data is not valid and re-encoding over and over.  This can lead
to poor performance in some cases and corrupted data in others.
2018-09-11 15:45:51 -04:00