{"action":"created","issue":{"url":"https://api.github.com/repos/vrexlab/dyverse-bounty/issues/1","repository_url":"https://api.github.com/repos/vrexlab/dyverse-bounty","labels_url":"https://api.github.com/repos/vrexlab/dyverse-bounty/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/vrexlab/dyverse-bounty/issues/1/comments","events_url":"https://api.github.com/repos/vrexlab/dyverse-bounty/issues/1/events","html_url":"https://github.com/vrexlab/dyverse-bounty/issues/1","id":392298620,"node_id":"MDU6SXNzdWUzOTIyOTg2MjA=","number":1,"title":"For loop could exceed block gas limit","user":{"login":"pauliax","id":22328890,"node_id":"MDQ6VXNlcjIyMzI4ODkw","avatar_url":"https://avatars1.githubusercontent.com/u/22328890?v=4","gravatar_id":"","url":"https://api.github.com/users/pauliax","html_url":"https://github.com/pauliax","followers_url":"https://api.github.com/users/pauliax/followers","following_url":"https://api.github.com/users/pauliax/following{/other_user}","gists_url":"https://api.github.com/users/pauliax/gists{/gist_id}","starred_url":"https://api.github.com/users/pauliax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pauliax/subscriptions","organizations_url":"https://api.github.com/users/pauliax/orgs","repos_url":"https://api.github.com/users/pauliax/repos","events_url":"https://api.github.com/users/pauliax/events{/privacy}","received_events_url":"https://api.github.com/users/pauliax/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-12-18T19:21:48Z","updated_at":"2018-12-20T05:39:44Z","closed_at":null,"author_association":"NONE","body":"contract KydyOwnership\r\nfunction tokensOfOwner\r\n\r\n`for (kydyId = 1; kydyId <= totalKydys; kydyId++)`\r\n\r\nBe careful when using loops, as if it iterates through many items, the execution may exceed the block gas limit, consume all the gas provided and fail. Carefully test how many items at maximum you can pass to such functions to make it successful. totalKydys eventually could grow so large as to make future operations of the contract cost too much gas to fit in a block. Also, take into consideration that test networks (example, Rinkeby) could have different block gas limit than the main network.\r\n"},"comment":{"url":"https://api.github.com/repos/vrexlab/dyverse-bounty/issues/comments/448880204","html_url":"https://github.com/vrexlab/dyverse-bounty/issues/1#issuecomment-448880204","issue_url":"https://api.github.com/repos/vrexlab/dyverse-bounty/issues/1","id":448880204,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0ODg4MDIwNA==","user":{"login":"ouoabcde","id":17924874,"node_id":"MDQ6VXNlcjE3OTI0ODc0","avatar_url":"https://avatars1.githubusercontent.com/u/17924874?v=4","gravatar_id":"","url":"https://api.github.com/users/ouoabcde","html_url":"https://github.com/ouoabcde","followers_url":"https://api.github.com/users/ouoabcde/followers","following_url":"https://api.github.com/users/ouoabcde/following{/other_user}","gists_url":"https://api.github.com/users/ouoabcde/gists{/gist_id}","starred_url":"https://api.github.com/users/ouoabcde/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ouoabcde/subscriptions","organizations_url":"https://api.github.com/users/ouoabcde/orgs","repos_url":"https://api.github.com/users/ouoabcde/repos","events_url":"https://api.github.com/users/ouoabcde/events{/privacy}","received_events_url":"https://api.github.com/users/ouoabcde/received_events","type":"User","site_admin":false},"created_at":"2018-12-20T05:39:44Z","updated_at":"2018-12-20T05:39:44Z","author_association":"CONTRIBUTOR","body":"Oh, I didn't try that much yet. I read the link, and there says,\r\n---\r\nCalling doWork(10000) as a transaction (on Ropsten) fails with an Out of Gas error - e.g.:\r\nhttps://ropsten.etherscan.io/tx/0xfe95eb83600b9a49f73c4dc536a55f2fd30b6c12864c00016ee278be23a1023b\r\n\r\nCalling doWork(10000) as a call (rather than transaction) works regardless of what value you pass to doWork.\r\n---\r\nAccording to this, `tokensOfOwner` function would pass with no error no matter what the value is. Because this function is `view` type which is just for `call`. So I think there would be no problem on this."}}
{"actor":{"display_login":"ouoabcde"}}