امروز جمعه ۱ آبان ۱۴۰۵

منتظر صدای گرمتان هستیم :)

آخرین به روز رسانی :

نویسنده: Reza

دسته بندی: آموزش اتریوم

4 دقیقه زمان مطالعه

چرا تراکنش ناموفق اتریوم کارمزد دارد؟ روش پیگیری

تراکنش ناموفق اتریوم؛ پردازش شبکه و مصرف گس

تراکنش ناموفق اتریوم اگر داخل بلاک ثبت و اجرا شده باشد، بابت گس مصرف شده هزینه دارد. این هزینه بابت پردازش شبکه است، نه تضمین موفق شدن انتقال. اما خطایی که پیش از ارسال یا ثبت تراکنش رخ می دهد، لزوماً کارمزد شبکه ندارد. برای تشخیص، باید وضعیت همان شناسه تراکنش را بررسی کنید، نه فقط پیام کیف پول را.

اکسنوین را بیشتر در گوگل ببینید

افزودن به گوگل

مثلاً «ارسال ناموفق بود» در برنامه می تواند به قطع اینترنت اشاره کند. در مقابل، وضعیت Fail در مرورگر بلاکچین یعنی تراکنش ثبت شده ولی نتیجه موردنظر اجرا نشده است. این دو وضعیت را نباید یکی دانست.

انجام محاسبات قرارداد هوشمند و مصرف گس اتریوم

چرا تراکنش ناموفق اتریوم گس مصرف می کند؟

گس واحد اندازه گیری کار محاسباتی اتریوم است. وقتی قرارداد هوشمند، یعنی برنامه ای روی بلاکچین، دستور شما را بررسی و اجرا می کند، منابع شبکه مصرف می شود. اگر اجرای دستور در میانه راه متوقف شود، کار انجام شده رایگان نمی شود.

در تراکنش معمولی روی شبکه اصلی اتریوم، هزینه با ETH پرداخت می شود. این موضوع برای انتقال توکن ها نیز مهم است: داشتن توکن به تنهایی جای موجودی لازم برای گس را نمی گیرد. مطابق راهنمای رسمی متامسک درباره تراکنش ناموفق، این مبلغ درآمد کیف پول متامسک نیست که پشتیبانی آن بتواند پس بدهد.

بررسی تراکنش ثبت شده با اجرای ناموفق در اتریوم

اول وضعیت را درست تشخیص دهید

وضعیتمعنی عملیدرباره کارمزد
ارسال نشده یا ردشده پیش از ثبتدرخواست هنوز به تراکنش ثبت شده تبدیل نشده استاز پیام خطای برنامه نمی توان کسر گس را نتیجه گرفت
Pendingتراکنش منتظر ورود به بلاک استهزینه نهایی اجرای آن هنوز مشخص نشده است
Fail یا Reverted در بلاکاجرای تراکنش ناموفق بوده استگس مصرف شده هزینه دارد
Dropped & Replacedنسخه دیگری جای تراکنش قبلی را گرفته استشناسه جایگزین را جداگانه بررسی کنید
Successاجرای تراکنش ثبت شده موفق بوده استکارمزد در رسید شبکه قابل مشاهده است

در نمایشگر کوچک، جدول را به چپ و راست بکشید.

در حالت جایگزینی، تراکنش قدیمی که وارد زنجیره نشده، هزینه اجرای جداگانه ای ندارد. نسخه جایگزین ممکن است ثبت شود و کارمزد داشته باشد. توضیح رسمی Etherscan درباره Dropped & Replaced کمک می کند هزینه دو شناسه را اشتباهی با هم جمع نکنید.

نانس شماره ترتیب تراکنش های خروجی یک حساب است. جایگزینی معمولاً با همان نانس انجام می شود. برای فهمیدن این وضعیت نیازی به دست کاری دستی نانس ندارید؛ ابتدا لینک تراکنش جایگزین و نتیجه آن را بخوانید.

پیگیری تراکنش ناموفق در Etherscan

  1. شبکه را مشخص کنید. این راهنما درباره شبکه اصلی اتریوم است. دارایی با نماد ETH ممکن است در شبکه دیگری هم باشد؛ مرورگر همان شبکه لازم است.
  2. شناسه تراکنش را از مبدأ بردارید. معمولاً با نام Transaction Hash یا TXID نمایش داده می شود. شماره سفارش صرافی الزاماً شناسه بلاکچین نیست.
  3. شناسه را در Etherscan جست وجو کنید. نشانی فرستنده و مقصد را با درخواست خود تطبیق دهید.
  4. Status و شماره بلاک را بخوانید. برای Fail، پیام خطا را نیز یادداشت کنید. Pending را شکست خورده فرض نکنید.
  5. Transaction Fee را بررسی کنید. این مبلغ را از مقدار دارایی مورد انتقال جدا نگه دارید. Gas Used و Effective Gas Price برای بررسی محاسبه مفیدند.

اگر شناسه پیدا نشد، یک نتیجه قطعی مانند «پول از بین رفته» نگیرید. ممکن است شبکه اشتباه انتخاب شده باشد یا برداشت هنوز از مبدأ ارسال نشده باشد. ابتدا شبکه و خود شناسه را دوباره بررسی کنید؛ سپس از پشتیبانی مبدأ وضعیت ارسال روی زنجیره را بخواهید.

برای آشنایی با بخش های مرورگر، راهنمای بررسی تراکنش اتریوم را ببینید. هدف اینجا تشخیص علت کسر هزینه است، نه تغییر تنظیمات پیشرفته کیف پول.

نمایش مفهومی گس مصرف شده و بخش استفاده نشده بودجه گس

آیا کل سقف گس از حساب کم می شود؟

خیر؛ Gas Limit سقف واحدهای گس مجاز است، نه مبلغی که در همه حالت ها حتماً پرداخت می کنید. هزینه اجرا از گس مصرف شده و قیمت مؤثر آن به دست می آید. بخش استفاده نشده سقف گس، هزینه کار انجام نشده محسوب نمی شود. در خطای Out of Gas ممکن است کل گس در اختیار اجرا مصرف شود.

در یک مثال کاملاً فرضی، اگر تراکنشی ۴۰٬۰۰۰ واحد گس مصرف کند و قیمت مؤثر هر واحد ۵ gwei باشد، هزینه برابر با ۲۰۰٬۰۰۰ gwei یا ۰٫۰۰۰۲ ETH است. این عدد نرخ فعلی شبکه یا پیشنهاد کارمزد نیست؛ فقط روش محاسبه را نشان می دهد.

طبق مستندات رسمی گس اتریوم، هر gwei یک میلیاردم ETH است. همچنین تمام هزینه به اعتبارسنج نمی رسد: بخش پایه سوزانده می شود و انعام اولویت به اعتبارسنج می رسد. به همین دلیل عبارت «همه کارمزد را کیف پول برداشت کرده» توصیف درستی نیست.

دو خطای رایج که راه حل یکسان ندارند

Out of Gas: سقف محاسبات کافی نبوده

این خطا یعنی اجرای تراکنش بیش از گس مجاز نیاز داشته است. تغییر دستی سقف به عددی پایین برای ارزان کردن عملیات می تواند نتیجه معکوس بدهد: اجرای ناموفق و هزینه بدون رسیدن به هدف.

پیش از تلاش مجدد، برآورد کیف پول و مستندات همان برنامه را بررسی کنید. افزایش قیمت هر واحد گس با افزایش تعداد واحدهای مجاز تفاوت دارد؛ پرداخت قیمت بیشتر، کمبود Gas Limit را خودبه خود رفع نمی کند.

Reverted: شرط قرارداد برقرار نبوده

گاهی سقف گس کافی است، اما قرارداد اجرای دستور را نمی پذیرد. برای نمونه، شرطی که برنامه برای انجام عملیات گذاشته برقرار نیست. در این حالت فقط بیشترکردن کارمزد لزوماً مسئله را حل نمی کند.

راهنمای خطاهای Etherscan بین این وضعیت ها تفاوت می گذارد. پیام خطای همان تراکنش، موجودی لازم و شرایط عملیات را بررسی کنید. اگر توضیح روشن نیست، متن خطا را برای پشتیبانی رسمی برنامه بفرستید؛ تکرار بی دلیل می تواند هزینه دیگری ایجاد کند.

با اصل دارایی و عملیات قبلی چه می شود؟

وقتی اجرای یک تراکنش ریورت می شود، تغییرات همان اجرا برمی گردد؛ هزینه گس استثناست. بنابراین شکست یک انتقال معمولی به معنای انتقال موفق اصل مبلغ به گیرنده نیست.

بااین حال، چند کلیک در یک برنامه ممکن است چند تراکنش مستقل ساخته باشد. فرض کنید ابتدا اجازه استفاده از توکن را داده اید و بعد عملیات بعدی شکست خورده است. شکست مرحله دوم را نباید به معنی لغوشدن خودکار تراکنش موفق اول گرفت. هر شناسه را جداگانه بررسی کنید.

مقایسه وضعیت ارسال و ثبت تراکنش اتریوم

پیش از تلاش دوباره چه چیزهایی را چک کنیم؟

  • آیا تراکنش واقعاً ناموفق است یا هنوز Pending است؟
  • آیا مقصد، شبکه و مقدار با درخواست شما مطابقت دارند؟
  • آیا ETH لازم برای کارمزد در همان شبکه وجود دارد؟
  • آیا علت خطا مشخص و برطرف شده است؟
  • آیا مبلغ پیشنهادی و سقف هزینه را پیش از تأیید خوانده اید؟

برای پیگیری، شناسه، نام شبکه، زمان تقریبی و متن خطا معمولاً اطلاعات مفیدی هستند. عبارت بازیابی و کلید خصوصی لازم نیست و نباید برای پشتیبانی ارسال شود.

اگر مسئله شما نه شکست تراکنش، بلکه زیادبودن هزینه عملیات موفق است، راهنمای کاهش کارمزد اتریوم موضوع مناسب تری است. این دو مسئله را جدا حل کنید: اول دلیل خطا، بعد انتخاب روش متناسب با هزینه و نیاز خود.

برای آشنایی با مسیر خرید، صفحه خرید اتریوم در اکسنوین را ببینید. شبکه انتقال و شرایط همان دارایی را پیش از ادامه بررسی کنید.

سؤال های متداول

آیا کارمزد تراکنش ناموفق اتریوم برمی گردد؟

برای تراکنشی که در بلاک ثبت و اجرا شده اما شکست خورده، گس مصرف شده به طور معمول برنمی گردد. خطای پیش از ثبت یا تراکنش جایگزین شده وضعیت متفاوتی دارد؛ رسید همان شناسه را بررسی کنید.

آیا Pending همان تراکنش ناموفق است؟

خیر. Pending یعنی تراکنش هنوز منتظر ثبت در بلاک است. Fail نتیجه اجرای ناموفق یک تراکنش ثبت شده است.

چرا با داشتن توکن، انتقال انجام نمی شود؟

در تراکنش معمولی شبکه اصلی اتریوم، کارمزد با ETH پرداخت می شود. موجودی توکن به تنهایی جای ETH لازم برای گس را نمی گیرد؛ البته علت دقیق را باید از پیام خطا تشخیص داد.

آیا زیادکردن کارمزد همیشه مشکل را حل می کند؟

خیر. کمبود Gas Limit با قیمت گس متفاوت است و خطای قرارداد هم ممکن است به شرط اجرای عملیات مربوط باشد. ابتدا علت همان خطا را مشخص کنید.

آیا صرافی یا کیف پول می تواند گس شبکه را پس بدهد؟

کارمزد شبکه با هزینه خدمات صرافی متفاوت است. درباره گس مصرف شده تراکنش ثبت شده، وعده بازپرداخت از طرف کیف پول را فرض نکنید؛ هزینه خدمات را باید با شرایط همان ارائه دهنده بررسی کرد.

Fire0
Face With Open Mouth0
Star Struck0
Rocket0
Thumbs Down0

برچسب ها

مسیر مطالعه پیشنهادی

مقالات مرتبط

دیدگاه خود را بنویسید