|
|
@ -278,13 +278,14 @@ transaction(EtsTabKeys, MFAOrFun, TimeOut) -> |
|
|
|
try |
|
|
|
EtsTabValue = #{OneGetKey => getEtsTabValue(OneEtsTab, OneKey, OneDefValue) || {OneEtsTab, OneKey} = OneGetKey := OneDefValue <- KeysMap}, |
|
|
|
case transactionApply(MFAOrFun, EtsTabValue) of |
|
|
|
{ok, Ret, ChangeEtsTab} -> |
|
|
|
[changeEtsTabValue(OneEtsTab, OneKey, ChangeValue) || {OneEtsTab, OneKey} := ChangeValue <- ChangeEtsTab], |
|
|
|
{alterTab, AlterTab} -> |
|
|
|
[changeEtsTabValue(OneEtsTab, OneKey, ChangeValue) || {OneEtsTab, OneKey} := ChangeValue <- AlterTab], |
|
|
|
ok; |
|
|
|
{alterTab, Ret, AlterTab} -> |
|
|
|
[changeEtsTabValue(OneEtsTab, OneKey, ChangeValue) || {OneEtsTab, OneKey} := ChangeValue <- AlterTab], |
|
|
|
Ret; |
|
|
|
{ok, Ret} -> |
|
|
|
Ret; |
|
|
|
{error, Err} -> |
|
|
|
Err |
|
|
|
OtherRet -> |
|
|
|
OtherRet |
|
|
|
end |
|
|
|
catch |
|
|
|
throw:Throw -> Throw; |
|
|
|