메인 콘텐츠로 건너뛰기

트랜잭션 풀에서 멈춘 트랜잭션

OP Chain은 EIP-1559를 사용하지만 L1 Ethereum과는 다른 파라미터를 사용합니다. 그 결과, L1의 기본 수수료(base fee)는 12초 동안 최대 12.5%까지 증가할 수 있는 반면(단일 30M gas 블록의 경우), L2 기본 수수료는 최대 77%까지 증가할 수 있습니다(30M gas 블록 6개의 경우). 그러나 같은 12초 동안 감소 폭은 여전히 최대 12.5%에 불과합니다(모든 블록이 비어 있는 경우). 트랜잭션에 지정된 gas당 최대 수수료가 블록 기본 수수료보다 낮으면, 기본 수수료가 트랜잭션에 지정된 값 아래로 떨어질 때까지 트랜잭션이 포함되지 않습니다. 이 경우 일부 사용자는 트랜잭션이 멈춘 것처럼 보일 수 있습니다. ETH가 손실되지는 않지만, 트랜잭션이 스스로 처리되지는 않습니다. 사용자와 지갑 운영자가 즉시 적용할 수 있는 해결 방법이 있으며, 프로토콜 수준의 수정은 4분기 말까지 적용될 것으로 예상합니다.

권장 사항

트랜잭션의 gas당 최대 수수료를 0.1 gwei와 같이 비교적 높은 값으로 설정하세요. 공식에 의해 결정되는 동일한 기본 수수료가 블록 내 모든 트랜잭션에 부과되므로, 이렇게 해도 트랜잭션 비용이 증가하지 않습니다. L2 gas 비용을 절약하려면 최대 우선순위 수수료(max priority fee)를 최소화해야 합니다. 또한 현재 기본 수수료가 0.1 gwei에 근접하거나 그보다 높다면, 트랜잭션 생성부터 서명 및 제출까지의 시간 동안 기본 수수료가 더 빠르게 증가할 수 있으므로 L1 Ethereum에서보다 더 높은 기본 수수료 배수를 사용자에게 제안하는 것이 좋습니다.

지갑 개발자를 위한 권장 사항

일반적으로 지갑은 트랜잭션에 포함될 기본 우선순위 수수료와 최대 수수료를 결정하는 역할을 하므로, 위의 권장 사항을 그대로 적용할 수 있습니다.

앱 개발자를 위한 권장 사항

앱 개발자는 일반적으로 지갑의 기본 권장값을 재정의할 수 있습니다 (예: ethers 참조). 모든 지갑이 권장 사항에 맞게 업그레이드되지 않은 상황에서는, 앱이 현재 기본 수수료를 가져와 이를 바탕으로 값을 권장하는 것이 합리적입니다.

사용자를 위한 권장 사항

사용자는 트랜잭션 필드에 대한 최종 결정권자입니다. 트랜잭션을 제출할 때 gas 수수료가 너무 낮게 설정되어 트랜잭션 풀(mempool이라고도 함)에서 멈추는 경우가 있습니다. 해당 트랜잭션을 처리되게 하려면 동일한 nonce로 다른 트랜잭션을 제출하여 취소할 수 있습니다. 이 방법은 수수료를 높이므로 sequencer가 mempool에서 더 빨리 처리하게 됩니다.

입금(디파짓) 트랜잭션에는 L2에서 chainId가 없음

입금 트랜잭션(deposit transaction)은 블록 도출(derivation) 과정의 일부로 L2 블록체인에 추가되는 트랜잭션입니다. 이러한 트랜잭션은 더미 주소에서 발생하며 서명이 없습니다. Ethereum에서는 chainID가 서명의 일부로 인코딩되므로, 이러한 트랜잭션에는 복구 가능한 chainID가 없습니다. 입금 트랜잭션의 유일한 출처는 블록 도출 과정이므로 이는 문제가 되지 않습니다. chainID를 복구할 필요가 없어야 합니다.