summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* moved functions around in rabbit_mnesiaFrancesco Mazzoli2012-05-181-347/+379
|
* merge defaultFrancesco Mazzoli2012-05-188-104/+87
|\
| * How long have we supported pluggable exchange types now?Simon MacMullen2012-05-181-1/+2
| |
| * don't wait (nearly) forever for mirrored_supervisor migrationsMatthias Radestock2012-05-171-2/+2
| | | | | | | | | | ...and reduce wait time for migrations we expect to fail, so we keep the overall run time short.
| * merge bug24362Tim Watson2012-05-175-48/+40
| |\
| | * start supervisor children as, er, supervisors, not workersMatthias Radestock2012-05-161-2/+3
| | |
| | * expand rabbit_sup API with starting of children that are supervisorsMatthias Radestock2012-05-165-29/+25
| | | | | | | | | | | | and use that API throughout the code where appropriate
| | * cosmeticMatthias Radestock2012-05-162-6/+3
| | |
| | * cosmeticMatthias Radestock2012-05-161-11/+8
| | |
| | * add missing specMatthias Radestock2012-05-161-0/+1
| | |
| * | merge e1311dd42eba into bug24362Tim Watson2012-05-141-1/+1
| | |
| * | merge f6d1609212f9 into bug24362Tim Watson2012-05-141-1/+1
| | |
| * | merge default into this branchTim Watson2012-05-147-37/+46
| |\ \ | | |/
| | * refactorMatthias Radestock2012-05-091-10/+3
| | |
| * | OopsSimon MacMullen2012-05-081-1/+1
| | |
| * | cosmeticMatthias Radestock2012-05-031-13/+6
| | |
| * | Don't use an untrappable kill.Simon MacMullen2012-05-031-1/+1
| | |
| * | Switch to monitoring the overall supervisor.Simon MacMullen2012-05-031-34/+38
| | |
* | | store more info about the cluster on disc, check other nodes before clusteringFrancesco Mazzoli2012-05-154-240/+239
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now the `cluster_nodes.config; doesn't store a "config" anymore, but all the information we need about the cluster nodes. This file is updated whenever a new node comes up. Moreover, this file should be *always* present, and it's set up in `rabbit:prepare/0'. Now that we have this file, the various functions regarding the status of the cluster (`all_clustered_nodes/0', `running_clustered_nodes/0;, etc.) can "work" even when mnesia is down (and when the rode is a ram node). Given the assumption that the status file is up to date, with the status of the cluster (before the node went down if the node is down) a lot of operations become easier. I'd like a review at this point, the best thing is probably to diff directly with default since a lot of previous commits are not relevant anymore. The most noticeable changes compared to default: * `join_cluster' works differently. The nodes provided will be used to "discover" the cluster, and are not used to determine whether the node should be ram or not. The node will be a disc node by default, and can be initialized as RAM with the `--ram' flag. The old `cluster' command is preserved, adapted to work with the new functions while preserving similar semantics (we decide on whether the node is disc or not by looking at the list of nodes provided). * `force_cluster' has been removed. * The `join_cluster' operation will fail if: - The node is currently the only disc node of its cluster - We can't connect to any of the nodes provided - The node is currently already clustered with the cluster of the nodes provided * On default restart RAM nodes try to connect to the nodes that were first given by the user, and are not aware of the changes that might have occurred in the cluster when they were online. Since the cluster status is kept updated on disk now, the RAM node will be aware of changes in the cluster when restarted. * Before starting up mnesia, the node contacts the nodes it thinks it's clustered with, and if the nodes are not clustered with the node anymore the startup procedure fail. We fail only when we know for sure that something is wrong - e.g. it won't fail it it doesn't find any online node Things to do: * Implement `uncluster'/`leave_cluster' to kick out a node from a cluster from another node - this is easy. * Implement something like `change_node_type', since given how `join_cluster' works it is not possible right now. * Rewrite the tests regarding to clustering. * Think hard about what can go wrong regarding the cluster status file and the relevant functions. The stuff in `rabbit_upgrade' is particularly worrying, and I need to make sure that things will work when upgrading rabbitmq, by reading old file or upgrading them. * Split `init_db/4' in various functions. We have much stronger assumptions now, for example we should never need to reset or wipe the schema in there. In general it's an ugly function, expecially the optional upgrade part * Probably something else...
* | | fix leave_cluster, update rabbit_app.inFrancesco Mazzoli2012-05-143-29/+33
| | |
* | | change function to find out about cluster nodesFrancesco Mazzoli2012-05-144-55/+150
| | | | | | | | | | | | | | | | | | | | | | | | See comment above `check_mnesia_running/1' in `rabbit_mnesia'. In short, the function to find out about all/running nodes in the cluster do not work if mnesia is down and the node is a ram node, while we assumed that they would always work. Moreover, the functions to get the cluster disc nodes require mnesia to be up.
* | | reseting when clustering, `reset' now disconnects correctlyFrancesco Mazzoli2012-05-112-52/+42
| | | | | | | | | | | | Also, I check that we're not joining a cluster we're already in.
* | | added `join_cluster', deprecated `cluster, changed the structure of the node ↵Francesco Mazzoli2012-05-113-33/+72
| | | | | | | | | | | | config
* | | remove the bug 24919 stuffFrancesco Mazzoli2012-05-111-15/+0
| | |
* | | merge bug24919Francesco Mazzoli2012-05-1011-112/+101
|\ \ \
| * | | removed `rabbit_mnesia:force_cluster'Francesco Mazzoli2012-05-102-29/+7
| | | | | | | | | | | | | | | | | | | | I'll also have to remove the `Force' parameter from `init_db', fixing bug 24815.
| * | | remove the subscription to the schema tableFrancesco Mazzoli2012-05-101-19/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since dump_tables won't work with the schema table (and works different to what I had understood anyways) I don't think it's worth it to subscribe to the table, and it's probably better to just modify the config file through rabbit_node_monitor.
| * | | dumping schema table on changes in ram nodesFrancesco Mazzoli2012-05-091-0/+19
| | | |
| * | | merge defaultFrancesco Mazzoli2012-05-092-15/+18
| |\ \ \ | | |_|/ | |/| |
| | * | forgot to change the arity of init_db in the exportFrancesco Mazzoli2012-05-041-1/+1
| | | |
| | * | re-added a boolean parameter to init_db to prevent upgradingFrancesco Mazzoli2012-05-042-11/+19
| | | |
| | * | remove the fun argument in `rabbit_mnesia:init_db/3'.Francesco Mazzoli2012-05-042-19/+14
| | | |
| * | | check for a new pid when registered children die in mirrored_supervisor_teststim2012-05-091-1/+1
| | | |
| * | | do not kill the child explicitlytim2012-05-081-1/+1
| | | |
| * | | for bug24362 - assert that worker name is unregistered by the time we get a ↵Tim Watson2012-05-081-6/+19
| |/ / | | | | | | | | | 'DOWN' notification
| * | pmon is very much hipe-worthy.Simon MacMullen2012-05-041-1/+1
| | |
| * | Merged bug24889 into defaultEmile Joubert2012-05-0422-62/+558
| |\ \
| | * | cosmeticMatthias Radestock2012-05-041-9/+5
| | | |
| | * | cosmeticMatthias Radestock2012-05-041-2/+2
| | | |
| | * | Merge bug24729 (again)Simon MacMullen2012-05-035-33/+24
| | |\ \
| | | * \ Merge bug 24901Simon MacMullen2012-05-031-2/+1
| | | |\ \ | | | | |/ | | | |/|
| | | | * Reorder exception contentsEmile Joubert2012-04-231-2/+1
| | | | |
| | | * | Revert 9d59000c4a44, 38eb4652c7e3, f6d1609212f9, e1311dd42eba (timeout ↵Simon MacMullen2012-05-031-2/+2
| | | | | | | | | | | | | | | | | | | | changes for mirrored_sup tests)
| | | * | Revert aa8a9e4d1bb2 (extra debugging for mirrored_supervisor)Simon MacMullen2012-05-031-10/+8
| | | | |
| | | * | cosmeticMatthias Radestock2012-05-032-27/+19
| | | | |
| | | * | Fix for R12B-3 that was broken by bug 24196.Simon MacMullen2012-05-011-2/+2
| | | | |
| | | * | A bit more debugging information on why we might get an error back from the ↵Simon MacMullen2012-05-011-8/+10
| | | | | | | | | | | | | | | | | | | | delegate.
| | * | | Fiddle with commentsSimon MacMullen2012-05-031-6/+7
| | | | |
| | * | | Removed unused types, added dummy -spec to silence compilerFrancesco Mazzoli2012-05-012-5/+7
| | | | |
| | * | | merge defaultFrancesco Mazzoli2012-05-011-1/+4
| | |\ \ \ | | | |/ / | | |/| |