EDITED 2019-02-08

`maxTxFee` is a global variable, used by both the raw transaction and wallet RPCs. It's set from `-maxtxfee`.

~listed in the global help text in init.cpp, but is only set in `WalletInit::ParameterInteraction()`. If the wallet is disabled, then `-maxtxfee` is ignored and the default is used.~

~This behaviour has existed since the mempool was changed to limit acceptance based on `maxTxFee` in https://github.com/bitcoin/bitcoin/commit/fa331db68bcc68e4c93fb45aaa30f911b0ecfe1a.~

~Short-term fix is to move the `-maxtxfee` handling to `InitParameterInteraction()` in init.cpp.~
EDIT: `maxTxFee` initiation bug fixed in #15357 

I don't think we should share this setting between the node and wallet.
nLocalServices = ServiceFlags(nLocalServices | NODE_WITNESS);
    }
    
    if (!CheckDiskSpace( 0,  false)) {
        InitError(strprintf(_("Error: Disk space is low for %s"), GetDataDir()));
        return false;
    }
    if (!CheckDiskSpace( 0,  true)) {
        InitError(strprintf(_("Error: Disk space is low for %s"), GetBlocksDir()));
        return false;
    }
    
    
    if (chainActive.Tip() == nullptr) {
        uiInterface.NotifyBlockTip_connect(BlockNotifyGenesisWait);
    } else {
        fHaveGenesis = true;
    }
    if (gArgs.IsArgSet("-blocknotify"))
        uiInterface.NotifyBlockTip_connect(BlockNotifyCallback);
    std::vector<fs::path> vImportFiles;
    for (const std::string& strFile : gArgs.GetArgs("-loadblock")) {
        vImportFiles.push_back(strFile);
    }
    threadGroup.create_thread(std::bind(&ThreadImport, vImportFiles));
    
    {
        WAIT_LOCK(g_genesis_wait_mutex, lock);