| ID |
Priority (H/M/L) |
Review |
Status |
| 1 |
0.5 M |
Removal of old get* Methods from TransactionLog |
|
| 2 |
0.5 M |
Create Abstract BaseTransactionLog class to hold commonalities with existing TLogs |
|
| 3 |
0.5 M |
Refactor Ref Counting out into BaseTransactionLog |
|
| 4 |
0.6 |
StoreContext update, initially to include the dequeue messageIds as per BDBStore |
|
| 5 |
0.6 |
StoreContext -> convert -> Transaction and use that for operation.(commit,abort...) |
|
| 6 |
0.6 |
Reference Count to use AtomicInts to reduce memory usage. |
|
| 7 |
0.5 |
Rename flow/recover -> unload/load |
Done |
| 8 |
0.5 |
FlowableQueueEntryList extends QueueEntryList, but there are no unflowable lists, and there shouldn't be in the future either. (AS) |
Done |
| 9 |
0.5 NTH |
Extract flow strategy in to a separate interface |
|
| 10 |
0.6 |
QueueEntryImpl allows direct access to the ContentHeader via the Filterable Interface, need an improved way of doing selectors that doesn't always require the message to be pulled from disk. Some checks can be done with data already in memory with QueueEntry; MessageID |
|
| 11 |
0.6 |
NoLocal requires message to be pulled in to memory. |
|
| 12 |
0.5 M |
Linux ext3 means 31998 queues max per vhost per instance. as the dir is currently created even if it is not needed. |
|
| 13 |
0.5 H |
getMessage contract broken MUST NEVER return null |
|
| 14 |
0.5 H |
getMessage should do a load, remember gap between load and purger |
|
| 15 |
0.5 H |
document reuse of setDelivered |
|
| 16 |
0.5 H |
is load() thread safe |
| 17 |
0.5 H |
Document atomicity of memory counting |
|
| 18 |
0.5 H |
Document test cases , plausable , implausable |
|
| 19 |
0.5 H |
_priorityListsindex.memoryUsed() + requriedSize is not threadSafe. Currently hard to reason about. |
| 20 |
0.5 |
Comments would help |
| 21 |
0.5 H |
PriorityQueueEntryList add() not thread safe. Reclaiming memory and then setting later is not atomic. |
| 22 |
0.5 M |
PriorityQueueEntryList _disabled -> move to isFlowed and name it better as the queue is not disabled. Only FtD is. |
| 23 |
|
non-atomic get Methods in PriorityQueueEntryList |
| 24 |
0.5 H |
setMemoryUsageMaximum / setMemoryUsageMinimum : not ThreadSafe - synchronize |
| 25 |
JIRA |
Need to be better at stop(), decide what we actually want to do on AMQQueue.stop(). |
| 26 |
JIRA |
TransactionLog, RoutingTable interfaces separated but not actually split out the implementations. |
| 27 |
0.5 |
VirtualHost:L208 : initialiseRoutingTable(hostConfig) should be done when transactionLog != RoutingTable |
| 28 |
|
BDBMS : linked list per message |
| 29 |
0.5 |
BDBMS : _dequeueTxMap should move to StoreContext to remove synchronized |
| 30 |
|
BDBMS : In simple case where there is only one copy of message can do delete in same transactions |
| 31 |
0.5 H |
BDBMS : Enqueue has no rollback operation. |
| 32 |
0.5 |
BDBMS : StoreContext needs enqueue/dequeue added. |