From 511358f58d4eb7470df3d28fc9cd0ffb86d04f74 Mon Sep 17 00:00:00 2001 From: sonofmom Date: Tue, 7 Jul 2020 00:50:18 +0200 Subject: [PATCH 1/2] Add Node name for safe parallel execution --- mytoncore.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/mytoncore.py b/mytoncore.py index a3e774b2..32944650 100644 --- a/mytoncore.py +++ b/mytoncore.py @@ -142,6 +142,7 @@ def __init__(self): self.adnlAddr = None self.tempDir = None self.validatorWalletName = None + self.nodeName = None self.liteClient = LiteClient() self.validatorConsole = ValidatorConsole() @@ -169,6 +170,9 @@ def Refresh(self): self.adnlAddr = local.db.get("adnlAddr") self.validatorWalletName = local.db.get("validatorWalletName") + self.nodeName = local.db.get("nodeName") + if self.nodeName is None: + self.nodeName="" liteClient = local.db.get("liteClient") if liteClient is not None: @@ -660,7 +664,7 @@ def AttachAdnlAddrToValidator(self, adnlAddr, key, endWorkTime): def CreateConfigProposalRequest(self, offerHash, validatorIndex): local.AddLog("start CreateConfigProposalRequest function", "debug") - fileName = self.tempDir + "_validator-to-sign.req" + fileName = self.tempDir + self.nodeName + "_validator-to-sign.req" args = ["config-proposal-vote-req.fif", "-i", validatorIndex, offerHash] result = self.fift.Run(args) fileName = Pars(result, "Saved to file ", '\n') @@ -678,7 +682,7 @@ def CreateConfigProposalRequest(self, offerHash, validatorIndex): def CreateElectionRequest(self, wallet, startWorkTime, adnlAddr, maxFactor): local.AddLog("start CreateElectionRequest function", "debug") - fileName = self.tempDir + str(startWorkTime) + "_validator-to-sign.bin" + fileName = self.tempDir + self.nodeName + str(startWorkTime) + "_validator-to-sign.bin" args = ["validator-elect-req.fif", wallet.addr, startWorkTime, maxFactor, adnlAddr, fileName] result = self.fift.Run(args) fileName = Pars(result, "Saved to file ", '\n') @@ -704,7 +708,7 @@ def GetValidatorSignature(self, validatorKey, var1): def SignElectionRequestWithValidator(self, wallet, startWorkTime, adnlAddr, validatorPubkey_b64, validatorSignature, maxFactor): local.AddLog("start SignElectionRequestWithValidator function", "debug") - fileName = self.tempDir + str(startWorkTime) + "_validator-query.boc" + fileName = self.tempDir + self.nodeName + str(startWorkTime) + "_validator-query.boc" args = ["validator-elect-signed.fif", wallet.addr, startWorkTime, maxFactor, adnlAddr, validatorPubkey_b64, validatorSignature, fileName] result = self.fift.Run(args) validatorPubkey = Pars(result, "validator public key ", '\n') @@ -715,7 +719,7 @@ def SignElectionRequestWithValidator(self, wallet, startWorkTime, adnlAddr, vali def SignFileWithWallet(self, wallet, filePath, addr, gram): local.AddLog("start SignFileWithWallet function", "debug") seqno = self.GetSeqno(wallet) - resultFilePath = self.tempDir + wallet.name + "_wallet-query" + resultFilePath = self.tempDir + self.nodeName + wallet.name + "_wallet-query" args = ["wallet.fif", wallet.path, addr, seqno, gram, "-B", filePath, resultFilePath] result = self.fift.Run(args) resultFilePath = Pars(result, "Saved to file ", ")") @@ -753,7 +757,7 @@ def GetReturnedStake(self, fullElectorAddr, wallet): def RecoverStake(self): local.AddLog("start RecoverStake function", "debug") - resultFilePath = self.tempDir + "recover-query" + resultFilePath = self.tempDir + self.nodeName + "recover-query" args = ["recover-stake.fif", resultFilePath] result = self.fift.Run(args) resultFilePath = Pars(result, "Saved to file ", '\n') @@ -878,7 +882,7 @@ def ReturnStake(self): def SaveElectionVarsToJsonFile(self, **kwargs): local.AddLog("start SaveElectionVarsToJsonFile function", "debug") - fileName = self.tempDir + str(kwargs.get("startWorkTime")) + "_ElectionEntry.json" + fileName = self.tempDir + self.nodeName + str(kwargs.get("startWorkTime")) + "_ElectionEntry.json" wallet = kwargs.get("wallet") account = kwargs.get("account") arr = {"wallet":wallet.__dict__, "account":account.__dict__} @@ -1156,7 +1160,7 @@ def GetOffers(self): def SignProposalVoteRequestWithValidator(self, offerHash, validatorIndex, validatorPubkey_b64, validatorSignature): local.AddLog("start SignProposalVoteRequestWithValidator function", "debug") - fileName = self.tempDir + "_vote-msg-body.boc" + fileName = self.tempDir + self.nodeName + "_vote-msg-body.boc" args = ["config-proposal-vote-signed.fif", "-i", validatorIndex, offerHash, validatorPubkey_b64, validatorSignature, fileName] result = self.fift.Run(args) fileName = Pars(result, "Saved to file ", '\n') @@ -1291,7 +1295,7 @@ def NewDomain(self, domain): raise Exception("NewDomain error: domain is busy") #end if - fileName = self.tempDir + "_dns-msg-body.boc" + fileName = self.tempDir + self.nodeName + "_dns-msg-body.boc" args = ["auto-dns.fif", dnsAddr, "add", subdomain, expireInSec, "owner", wallet.addr, "cat", catId, "adnl", domain["adnlAddr"], "-o", fileName] result = self.fift.Run(args) resultFilePath = Pars(result, "Saved to file ", ')') From 23c7cdfcdbada65481c3afbdeacb04d3066a67fe Mon Sep 17 00:00:00 2001 From: sonofmom Date: Tue, 7 Jul 2020 18:04:57 +0200 Subject: [PATCH 2/2] Add underscore to node name for better file system names --- mytoncore.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mytoncore.py b/mytoncore.py index 32944650..b6d577a0 100644 --- a/mytoncore.py +++ b/mytoncore.py @@ -173,6 +173,8 @@ def Refresh(self): self.nodeName = local.db.get("nodeName") if self.nodeName is None: self.nodeName="" + else: + self.nodeName = self.nodeName + "_" liteClient = local.db.get("liteClient") if liteClient is not None: