diff options
| author | Matthew Sackman <matthew@lshift.net> | 2009-10-13 11:11:16 +0100 |
|---|---|---|
| committer | Matthew Sackman <matthew@lshift.net> | 2009-10-13 11:11:16 +0100 |
| commit | d444fd443b8a324a08add6ab54f6e6889473108e (patch) | |
| tree | 4b0052692e2a05e9e360e1300a6b7304b272ce9d | |
| parent | ff94f3c3a6bff3d3b2e1bc0d256b9bc2951fe9ce (diff) | |
| download | rabbitmq-server-git-d444fd443b8a324a08add6ab54f6e6889473108e.tar.gz | |
factorisation and application of DeMorgan
| -rw-r--r-- | src/rabbit_variable_queue.erl | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl index 47f8fec366..97e8141fe6 100644 --- a/src/rabbit_variable_queue.erl +++ b/src/rabbit_variable_queue.erl @@ -576,26 +576,24 @@ reduce_memory_use(State = _ -> State1 end. -%% Bool PersistentMsgsAlreadyOnDisk IsPersistent | WriteToDisk? +%% Bool IsPersistent PersistentMsgsAlreadyOnDisk | WriteToDisk? %% -----------------------------------------------+------------- -%% false false false | false 1 -%% false false true | true 2 -%% false true false | false 3 -%% false true true | false 4 -%% true false false | true 5 -%% true false true | true 6 -%% true true false | true 7 -%% true true true | false 8 - -%% (Bool and (not PersistentMsgsAlreadyOnDisk)) or | 5 6 -%% (Bool and (not IsPersistent)) or | 5 7 -%% ((not PersistentMsgsAlreadyOnDisk) and IsPersistent) | 2 6 +%% false false false | false 1 +%% false true false | true 2 +%% false false true | false 3 +%% false true true | false 4 +%% true false false | true 5 +%% true true false | true 6 +%% true false true | true 7 +%% true true true | false 8 + +%% (Bool and not (IsPersistent and PersistentMsgsAlreadyOnDisk)) or | 5 6 7 +%% (IsPersistent and (not PersistentMsgsAlreadyOnDisk)) | 2 6 maybe_write_msg_to_disk(Bool, PersistentMsgsAlreadyOnDisk, Msg = #basic_message { guid = MsgId, is_persistent = IsPersistent }) - when (Bool andalso (not PersistentMsgsAlreadyOnDisk)) orelse - (Bool andalso (not IsPersistent)) orelse - ((not PersistentMsgsAlreadyOnDisk) andalso (IsPersistent)) -> + when (Bool andalso not (IsPersistent andalso PersistentMsgsAlreadyOnDisk)) + orelse (IsPersistent andalso not PersistentMsgsAlreadyOnDisk) -> ok = rabbit_msg_store:write(MsgId, ensure_binary_properties(Msg)), true; maybe_write_msg_to_disk(_Bool, _PersistentMsgsAlreadyOnDisk, _Msg) -> |
