Транзакция без газа, но газ используется меньше лимита газа

У меня есть этот метод на контракте, который я тестирую на ринкеби.

function addMatch(string _name, uint _fixtureId, uint8 _home, uint8 away, uint _start) public onlyOwner returns (uint8) {
    require(_home < NUM_TEAMS && _away < NUM_TEAMS && _home != _away);
    require(_start >= now);
    Match memory newMatch = Match({
        home: _home,
        away: _away, 
        fixtureId: uint2str(_fixtureId),
        winner: 0, 
        start: _start, 
        name: _name
    });
    uint8 matchId = uint8(matches.push(newMatch));
    string memory url = strConcat(
        "json(https://api.basketball-matches.org/[my api key]/", 
        newMatch.fixtureId,
        ").[?(@.status=='FINISHED')].result[scoreHome,scoreAway]");
    bytes32 oraclizeId = oraclize_query(_start + QUERY_INTERVAL, "URL", url);
    oraclizeIds[oraclizeId] = matchId;
    emit MatchCreated(matchId);
    return matchId;
}

Независимо от того, насколько я установил лимит газа, транзакция все равно не выполняется, однако значение gasUsed, отображаемое при сканировании эфира, меньше, чем gasLimit (которое я установил на лимит сети). Кто-нибудь знает, в чем может быть проблема. Я использую web3 и использую инфуру через трюфельный HDWallet.

введите описание изображения здесь

Попытка оценить стоимость газа с помощью web3 просто выдает ошибку. Ошибка, возвращаемая при вызове этого метода в блокчейне:

Error: Transaction ran out of gas. Please provide more gas:
Может быть, одно из ваших обязательных предложений прерывает транзакцию
@gisdev_p, кажется, был, забыл о часовых поясах, но зачем выдавать ошибку об отсутствии газа, требует ли потреблять весь оставшийся газ? Кроме того, не забудьте сделать свой комментарий ответом, чтобы я мог дать вам представителя
Он не должен потреблять весь газ, и я не думаю, что он потребляет. По крайней мере, на скриншоте вашего вопроса используемый газ отличается и намного меньше, чем максимальный газ.
Странная ошибка для возврата в таком случае, но спасибо за вашу помощь

Ответы (1)

Проверьте параметры вызова вашей функции, похоже, что одно из ваших обязательных предложений прерывает транзакцию.