Which version of the Solidity compiler are you using? We currently do not support some of the latest opcodes for returning dynamic length data. If you are using that feature in Solidity then it will either have behavior as you experienced, or the contract will crash with an invalid opcode exception
Posts made by qtum-earlz
RE: Contracts calling other contracts
RE: MainNet Wallet Froze During Sync - At a Stand-Still
First, are you using the latest Qtum wallet? We had a bug previously where syncing could sometimes stop.
Second, if you need to have a proxy configured, make sure to configure it in the settings of the wallet. If you do not need a proxy or are not sure, then you do not need to worry about this.
Third, what OS and version of Qtum Core are you using?
RE: Please Help I have lost my QTUM
Are you capable of signing a message or otherwise capable of proving that you own the Exodus address? We can recover it, but that aspect is important. We can't do anything without proof that you own the address. Please email with all the info [email protected] and cc [email protected]
RE: Hi I'm in the same situation, did you ever figure out how to get your tokens back?
You're going to have to give us more details as to what happened
RE: Smart contract and stake delegation
Hi, This is something I've personally thought a lot about. It's a very powerful concept. I have some rough drafts of some ideas on how this could be possible, but it requires some extensions to both our PoSv3 consensus model, and to either the EVM, or later VMs. The way I imagine it could work would basically making it so that block creation and staking rewards are separated. The idea basically being you can park your coins in a provably secure smart contract, then trusted/semi-trusted partners use the coins in the smart contract to create stake blocks, and then finally the block creators and funders share the 4 Qtum block reward (probably 50/50).
The one concern is that is still to be reconciled is malicious parties using these pooled funds in order to create multiple blocks or attacking the network in some way. Hence, I think there will still be some trust involved. Regardless, with how the AAL is structured, this is definitely possible with some extensions, the hard part is making sure it doesn't allow attackers to gain an advantage. We have some rough ideas, but it's not been fully designed yet. It is definitely our goal to allow this though eventually.
Dev Update Week of June 12th
Week of June 12th:
Changes made through this week to the core wallet:
- [Consensus/PoS] Made sure that a PoS block's coinstake tx was only check if the block contained at least 2 transactions
- [Consensus/EVM] Made EVM gas behavior to work as expected regardless of the Qtum gas price
- [GUI/Qt] Changed blockchain size warning from 122Gb to 1Gb
- [Misc/EVM] Cleaned up the EVM's use of cout and stdout so that all log messages are put in a log file, rather than logged to the console
- [Consensus] Added consensus rule that a block may have a timestamp more than 15 seconds into the network time
- [Consensus/PoS] Changed some PoS support functions to use safer and more effecient data from the block header, rather than relying on block body data
- [Consensus/EVM] Added a consensus rule that a single contract execution can create no more than 1000 vouts.
- [Staker/PoS] Completely reworked the PoS staker so that it looks forward in time for valid stakes, only processes transactions after a stake is found, prepares a block up to 96 seconds before publishing it, and made it aware of time limits for PoS as well as fully aware of the cost of including contract transactions in blocks
- [Misc] Some refactoring and code clean up that does not affect logic
- [Misc] Renamed OP_TXHASH to OP_SPEND, as OP_TXHASH is no longer a represenative name for it's purpose
In-progress work and soon to be fixed bugs:
- [RPC/EVM] The default gas limits in the RPC interface are too small to do anything significant with
- [Staker/PoS] Staking (or PoW mining) on OSX does not properly construct blocks that contain contracts, resulting in rejected blocks. This does not affect Linux