Skip to content

SENDER_NOT_A_MEMBER When setting consent #139

@om26er

Description

@om26er

That is an interesting error because the API to set consent only takes the delegate address, which I assume cannot be used to determine if the caller really is a member.

https://github.com/crossbario/xbr-protocol/blob/825d54c9e222582dfae60504f6827ed561dd1d49/contracts/XBRMarket.sol#L422
Below are the logs that I see. Note: this is likely NOT a regression, rather the API was not completed (?)

Traceback (most recent call last):
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks
    current.result = callback(current.result, *args, **kw)
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/internet/defer.py", line 1475, in gotResult
    _inlineCallbacks(r, g, status)
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/internet/defer.py", line 1416, in _inlineCallbacks
    result = result.throwExceptionIntoGenerator(g)
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/python/failure.py", line 512, in throwExceptionIntoGenerator
    return g.throw(self.type, self.value, self.tb)
--- <exception caught here> ---
  File "/home/om26er/scm/crossbario/crossbarfx/crossbarfx/edge/worker/xbr/_marketmaker.py", line 2580, in set_consent
    _txn_hash = await deferToThread(self._send_setConsent, _market_oid.bytes, delegate, delegate_type,
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/python/threadpool.py", line 250, in inContext
    result = inContext.theWork()
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/python/threadpool.py", line 266, in <lambda>
    inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/python/context.py", line 122, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/twisted/python/context.py", line 85, in callWithContext
    return func(*args,**kw)
  File "/home/om26er/scm/crossbario/crossbarfx/crossbarfx/edge/worker/xbr/_marketmaker.py", line 461, in _send_setConsent
    txn_hash = self._w3.eth.sendRawTransaction(signed_txn.rawTransaction)
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/web3/eth.py", line 390, in sendRawTransaction
    return self.web3.manager.request_blocking(
  File "/home/om26er/scm/crossbario/xbr-www/venv/lib/python3.8/site-packages/web3/manager.py", line 153, in request_blocking
    raise ValueError(response["error"])
builtins.ValueError: {'message': 'VM Exception while processing transaction: revert SENDER_NOT_A_MEMBER', 'code': -32000, 'data': {'0x2f5fe22160bd9c082e44eff39f7dbc3e883f9910dd8e8fe0315288e351b62955': {'error': 'revert', 'program_counter': 1892, 'return': '0x08c379a00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001353454e4445525f4e4f545f415f4d454d42455200000000000000000000000000', 'reason': 'SENDER_NOT_A_MEMBER'}, 'stack': 'c: VM Exception while processing transaction: revert SENDER_NOT_A_MEMBER\n    at Function.c.fromResults (/app/ganache-core.docker.cli.js:2:257479)\n    at w.processBlock (/app/ganache-core.docker.cli.js:17:178165)\n    at process._tickCallback (internal/process/next_tick.js:68:7)', 'name': 'c'}}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions