| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Added behaviour for msg_store_index and tidied includes, and updated ↵ | Matthew Sackman | 2010-01-19 | 4 | -2/+112 |
| | | | | | makefile appropriately. Good lord it'd be nice if erlang did proper build dependencies... | ||||
| * | documentation tweaks | Matthew Sackman | 2010-01-19 | 1 | -8/+9 |
| | | |||||
| * | Make sure the fhc server is started early on in the boot process | Matthew Sackman | 2010-01-19 | 1 | -0/+5 |
| | | |||||
| * | Of course, there's no reason not to add into the current file cache ↵ | Matthew Sackman | 2010-01-18 | 1 | -5/+9 |
| | | | | | immediately, thus allowing a write followed by a read to have no delay at all | ||||
| * | Of course, we should only delete messages when they're, err, due to be ↵ | Matthew Sackman | 2010-01-18 | 1 | -4/+4 |
| | | | | | deleted... | ||||
| * | Refactored and generally tidied the msg_store. Also added a write-back cache ↵ | Matthew Sackman | 2010-01-17 | 2 | -144/+144 |
| | | | | | for the current file. This means that the clients don't need to go to the server when reading a msg from the current file. Managed to avoid using any further lines! | ||||
| * | Correction of modes in reading | Matthew Sackman | 2010-01-16 | 1 | -1/+1 |
| | | |||||
| * | When publishing delivered, the fact is, the message has already been ↵ | Matthew Sackman | 2010-01-16 | 1 | -1/+1 |
| | | | | | delivered. Thus it should be marked as such, otherwise bad things happen when you eventually try to delete the queue (i.e. crash). | ||||
| * | Inability to do basic maths | Matthew Sackman | 2010-01-16 | 1 | -9/+11 |
| | | |||||
| * | Refactoring of bpq | Matthew Sackman | 2010-01-15 | 2 | -132/+85 |
| | | |||||
| * | Extensive testing suggests the batch size was previous set too high | Matthew Sackman | 2010-01-14 | 1 | -1/+1 |
| | | |||||
| * | Should actually be working on the ratio of betas to betas+alphas. Thus ↵ | Matthew Sackman | 2010-01-14 | 1 | -2/+3 |
| | | | | | subtract out deltacount | ||||
| * | the ratio should always be 1. Hence removed. | Matthew Sackman | 2010-01-13 | 1 | -7/+1 |
| | | |||||
| * | Much better. The reason why batching is important is because if you're ↵ | Matthew Sackman | 2010-01-13 | 3 | -75/+192 |
| | | | | | walking through the bpqueue and doing very little work before stopping then you don't really get the amortised constant time behaviour. But the goal is achieved - throughput is maintained and very slowly diminishes with no major interruptions and the queue gets fuller and the transition is made to betas and then deltas. | ||||
| * | Forgot to remove an io:format | Matthew Sackman | 2010-01-13 | 1 | -2/+1 |
| | | |||||
| * | Mechanism to limit the number of betas which don't have their index on disk ↵ | Matthew Sackman | 2010-01-13 | 3 | -3/+206 |
| | | | | | is now in. Testing showed that if the queue is long, the change in target_ram_msg_count can be large, thus driving the number of ram indices directly off that still doesn't solve the problem. Thus am driving it from publish, with a limit on the maximum amount of work that can be done. This should allow the queue to remain responsive, as it works towards its goal. However, further testing, tuning and thinking is still needed. | ||||
| * | Refactoring of vq - pulled out the inlined block-prefix queue code and ↵ | Matthew Sackman | 2010-01-13 | 3 | -200/+324 |
| | | | | | generally tidied profusely. Also efficiency fix in remove_queue_entries by avoiding an intermediate list (which could potentially be massive). | ||||
| * | Right, getting there - some major reworkings to vq which have fixed bugs. It ↵ | Matthew Sackman | 2010-01-12 | 3 | -360/+467 |
| | | | | | doesn't quite do everything I want it to do it - in particular, on memory reduction, it needs to ensure that the inner queues nearest δ have sufficient non-ram-index msgs, but all thet tests pass and adding that feature shouldn't be too painful. | ||||
| * | some minor refactoring (more to do), and spotted and fixed a race condition | Matthew Sackman | 2010-01-09 | 1 | -20/+38 |
| | | |||||
| * | Scanning the common operation, so that should be prioritied. The open->close ↵ | Matthew Sackman | 2010-01-08 | 1 | -6/+6 |
| | | | | | transition is much rarer (only on GC startup and file deletion) so can be slower. | ||||
| * | Correct the closing mech. Sadly I'm currently scanning the whole table every ↵ | Matthew Sackman | 2010-01-08 | 1 | -22/+17 |
| | | | | | time, which is bad. I might change that to scan every, say, 1000 reads | ||||
| * | Whoops, forgot to remove an io:format | Matthew Sackman | 2010-01-08 | 1 | -1/+0 |
| | | |||||
| * | Msg_store now supports concurrent reads when it is safe, directly from the ↵ | Matthew Sackman | 2010-01-08 | 5 | -75/+282 |
| | | | | | queue. This means that even if the msg_store process is flooded with writes or acks, it won't (necessarily) block queues. This is extremely useful and has substantial benefit when memory has been exhausted and the queue is operating off γ only (effectively, no message content held in ram). | ||||
| * | Toughened up cache accessors and switched to using named tables in prep for ↵ | Matthew Sackman | 2010-01-07 | 3 | -107/+104 |
| | | | | | concurrent readers of msg_store. | ||||
| * | Env var does not need rabbit_ prefix | Matthew Sackman | 2009-12-26 | 2 | -2/+2 |
| | | |||||
| * | Put the default index module (ets) in the .app template, and assume the env ↵ | Matthew Sackman | 2009-12-26 | 2 | -5/+2 |
| | | | | | var exists | ||||
| * | Support pluggable msg_store index module through the ↵ | Matthew Sackman | 2009-12-22 | 2 | -4/+10 |
| | | | | | rabbit_msg_store_index_module rabbit application var | ||||
| * | merging in (and adjustments for startup) from default | Matthew Sackman | 2009-12-22 | 9 | -127/+273 |
| |\ | |||||
| | * | merge bug 22039 into default | Matthew Sackman | 2009-12-22 | 6 | -117/+264 |
| | |\ | |||||
| | | * | Refactor away boot_core_processes. | Tony Garnock-Jones | 2009-12-17 | 2 | -33/+60 |
| | | | | |||||
| | | * | Refactor boot_recovery, boot_tcp_listeners and boot_ssl_listeners | Tony Garnock-Jones | 2009-12-17 | 2 | -40/+39 |
| | | | | |||||
| | | * | Merge default into bug22039 | Tony Garnock-Jones | 2009-12-17 | 9 | -58/+245 |
| | | |\ | |||||
| | | * | | cosmetics (mainly line length, alignment and trailing WS) | Matthew Sackman | 2009-12-16 | 1 | -48/+69 |
| | | | | | |||||
| | | * | | Split up and tweak startup order. | Tony Garnock-Jones | 2009-12-14 | 3 | -50/+48 |
| | | | | | |||||
| | | * | | Switch to explicit MFA, and symbolic boot step names. | Tony Garnock-Jones | 2009-12-14 | 1 | -56/+69 |
| | | | | | | | | | | | | | | | | | | | | | Add comments to sort_boot_steps. Reject duplicate boot step names. | ||||
| | | * | | Move planning code out of activator and into rabbit proper. | Tony Garnock-Jones | 2009-12-14 | 3 | -103/+95 |
| | | | | | |||||
| | | * | | Enforce acyclicity; check presence and export of steps. | Tony Garnock-Jones | 2009-12-14 | 1 | -4/+36 |
| | | | | | |||||
| | | * | | Fixup specs. | Tony Garnock-Jones | 2009-12-14 | 1 | -2/+2 |
| | | | | | |||||
| | | * | | Add "-rabbit_boot_step" module attribute to specify startup sequence. | Tony Garnock-Jones | 2009-12-14 | 3 | -121/+167 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - The plugin activator prepares the startup plan. - This means that it's no longer going to work to run without a boot script. Consequently, I've added a call to rabbitmq-activate-plugins to the Makefile for the 'all' target. - I've refactored the old boot sequence to use the new method for specifying boot steps. I've conservatively put dependencies forcing them into a straight line, as they were before. - Since the plugin activator runs so frequently, I've made it suppress the (spurious) warnings we get about core beam files being out of date on Ubuntu. | ||||
| | | * | | Merge default into bug22039 | Tony Garnock-Jones | 2009-12-14 | 1 | -12/+12 |
| | | |\ \ | |||||
| | | * \ \ | Merge default into bug22039 | Tony Garnock-Jones | 2009-12-14 | 5 | -66/+91 |
| | | |\ \ \ | |||||
| | | * \ \ \ | Merge default into bug22039 | Tony Garnock-Jones | 2009-12-01 | 1 | -19/+6 |
| | | |\ \ \ \ | |||||
| | | * | | | | | Avoid compiler warning about unused term; weirdly, the replaced idiom works ↵ | Tony Garnock-Jones | 2009-11-30 | 1 | -2/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | elsewhere | ||||
| | | * | | | | | Change tactic to examine modules in .app files for rabbit_static_hook_* modules | Tony Garnock-Jones | 2009-11-30 | 1 | -14/+16 |
| | | | | | | | | |||||
| | | * | | | | | Initial stab at the problem | Tony Garnock-Jones | 2009-11-30 | 1 | -10/+30 |
| | | | | | | | | |||||
| * | | | | | | | merged bug 22161 into bug 21673. Lazy, concurrent msg_store GC landed. | Matthew Sackman | 2009-12-20 | 10 | -435/+842 |
| |\ \ \ \ \ \ \ | |||||
| | * | | | | | | | Ensure that :contains calls can't overtake :remove casts. Also modify the ↵ | Matthew Sackman | 2009-12-20 | 2 | -36/+55 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tests slightly. | ||||
| | * | | | | | | | Must start msg_store *before* amqqueue_sup, otherwise on shutdown, there's a ↵ | Matthew Sackman | 2009-12-20 | 1 | -4/+6 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nasty race which blows up the channel on notify_all_down because the msg_store exits wrongly, first, killing the queue process when it calls msg_store:read, and then the channel can't call the queue. Thus start msg_store before queue_sup, and none of this problem exists | ||||
| | * | | | | | | | background lazy GC in and working | Matthew Sackman | 2009-12-20 | 5 | -357/+611 |
| | | | | | | | | | |||||
| | * | | | | | | | merging default/21673 into bug 22161 | Matthew Sackman | 2009-12-19 | 2 | -10/+17 |
| | |\ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | | |||||
