Constructor array 전달 문제

안녕하세요, constructor가 대략 이렇게 생겼는데, array size가 20,30개 였을때는 문제가 없더니 1000개 이상을 하려고 하니

constructor(uint[] memory testarray) {
_testarray = testarray
}

다음과 같은 문제가 발생하네요.

Error: Error: Error: *** Deployment Failed ***

“Test” received a generic error from Geth that
can be caused by hitting revert in a contract constructor or running out of gas.

  • gas required exceeds allowance or always failing transaction.
  • Try: + using the ‘–dry-run’ option to reproduce this failure with clearer errors.
    + verifying that your gas is adequate for this deployment.

transaction hash: 0x4a7a28c86822aecdc08d8ef7e8ae17f7095e511354b30ca7ebfc0cc073e800f7

tx에서는 딱히 에러가 보이진 않는데, 어떤 이슈일까요?

안녕하세요

일단 가스가 부족할수있습니다. 가스 리밋을 올려 시도해보시고

2000개를 한번에 하는것보다 생성자가 아닌

따로 배열을 받는 함수를 만들고 컨트랙트를 배포후

조금씩 나눠서 데이터를 넣으시는게 좋을것같습니다

1 Like

가스는 부족하지 않습니다. 그런데 1000개 정도의 아이템이 어떤 문제를 야기 시키는 걸까요??