Aceasta înseamnă că sunt umplute mai multe blocuri. Și din moment ce toate tranzacțiile nu pot fi incluse imediat în blockchain, apare o pacoste, pe care minerii o numesc „mempool” (un tip de „coadă de tranzacții”).
Minerii aleg de obicei acele tranzacții care au comisioane mai mari și le includ mai întâi în bloc. Tranzacțiile care au comisioane mai mici sunt „trimise” la așa-numita „piață de taxe” și rămân în mempoolul minerului până când este găsit un nou bloc. Dacă tranzacția este trimisă din nou, va trebui să aștepte din nou următorul bloc.
Acest lucru poate duce la o experiență de utilizator mai puțin decât optimă. Tranzacțiile cu comisioane foarte mici pot dura ore sau chiar zile pentru a se confirma și, în unele cazuri, este posibil să nu fie confirmate deloc.
Și iată ce puteți face astăzi pentru a împiedica blocarea tranzacției.
Înainte de a-l trimite
În primii ani ai Bitcoin, majoritatea portofelelor au adăugat o taxă fixă pentru tranzacțiile de ieșire: de obicei 0,1 mBTC. Din moment ce minerii aveau suficient spațiu în blocuri, nu au avut nicio problemă să includă aceste tranzacții în primul bloc pe care au putut să-l extragă. (De fapt, tranzacțiile cu comisioane și mai mici sau chiar fără comisioane au fost incluse în blocuri la fel de repede.)
Odată cu creșterea concurenței pentru spațiul de bloc, taxa fixă de 0,1 mBTC a devenit insuficientă pentru ca o tranzacție să fie imediat inclusă în blocul următor; sunt depășiți de tranzacțiile ale căror comisioane sunt mai mari. Deși este probabil să se confirme o tranzacție cu taxe reduse, poate dura ceva timp.
Încercați să vă măriți comisionul
Dacă doriți ca tranzacțiile dvs. să fie confirmate mai rapid, soluția evidentă este să adăugați o taxă mai mare la tranzacția respectivă. Dacă portofelul dvs. (cu setările implicite) nu adaugă suficient comision, puteți configura această setare manual, atât în setările portofelului, cât și la trimiterea tranzacției (sau ambele.)
Site-uri precum 21.co monitorizează starea rețelei și sugerează ce nivel de comision pe octet de tranzacție va fi suficient și arată, de asemenea, la ce viteză de confirmare a rețelei vă puteți aștepta la diferite niveluri de comisioane atașate.
Dacă doriți ca plata să ajungă în blocul următor sau peste bloc, trebuie să plătiți o taxă relativ mare. Pentru plăți mai puțin urgente, puteți adăuga o taxă mai mică; va dura puțin mai mult pentru a confirma.
Verificați dacă portofelul dvs. acceptă modificări dinamice ale taxelor
În zilele noastre, majoritatea portofelelor acceptă schimbări dinamice ale comisioanelor. În funcție de starea rețelei Bitcoin, aceste portofele includ automat o taxă care va fi suficientă pentru a include tranzacția în blocul următor, sau cel puțin unul dintre blocurile următoare.
Unele portofele vă oferă, de asemenea, opțiunea de a alege prioritatea taxei. Din nou, comisioane mai mari vor permite ca tranzacția să fie confirmată mai rapid, tranzacțiile cu comisioane mici vor dura puțin mai mult.
Dacă tranzacțiile din portofel sunt adesea întârziate în orele de vârf și nu aveți opțiunea de a percepe o taxă mai mare, portofelul dvs. este probabil depășit. Verificați dacă există o actualizare disponibilă sau treceți la un portofel nou.
Luați în considerare trecerea la alt portofel
Când treceți la un portofel nou, atunci, desigur, trebuie să transferați fonduri din portofelul vechi în portofelul nou. Dacă nu te deranjează să cheltuiești puțin, poți transfera fonduri din vechiul tău portofel în noul tău portofel prin intermediul rețelei Bitcoin. În cele din urmă vor ajunge - chiar dacă comisionul este scăzut.
De asemenea, unele portofele vă permit să exportați cheile private sau să utilizați o cheie privată pentru a importa apoi cheile într-un portofel nou. În acest caz, nu va trebui să faceți tranzacții în rețeaua Bitcoin. Folosind noul tău portofel, poți începe tranzacțiile imediat.
După ce l-ai trimis
Dacă ați trimis deja o tranzacție și aceasta se blochează, atunci tranzacția respectivă poate, în unele cazuri, să facă un „salt la coadă”.
Înlocuirea selectivă a comisioanelor
Pentru ca tranzacția dvs. să sară la rând, cel mai simplu mod este să utilizați o opțiune numită Opt-In Replace-by-Fee (Opt-In RBF). Vă oferă posibilitatea de a retrimite aceeași tranzacție, dar cu comisioane mai mari.
În majoritatea cazurilor, atunci când aceeași tranzacție este trimisă în rețea, dar cu taxe mai mari, noua tranzacție este respinsă de rețea. Nodurile Bitcoin decid de obicei că noua tranzacție este o încercare de cheltuire dublă, așa că nu o acceptă sau procesează. Dar atunci când redirecționați o tranzacție folosind opțiunea RBF Opt-In, în esență spuneți rețelei că redirecționați aceeași tranzacție, doar cu o taxă mai mare. Drept urmare, majoritatea nodurilor Bitcoin acceptă noua tranzacție în loc de cea veche; permițând unei noi tranzacții să intre în coadă.
Dacă noua dvs. tranzacție va fi inclusă într-unul dintre blocurile viitoare, va depinde de minerul care numără următorul bloc: nu toți minerii acceptă Opt-In RBF. Cu toate acestea, destul de mulți mineri acceptă și această opțiune, așa că într-un fel sau altul tranzacția ta va fi inclusă în blocurile următoare.
Opt-In RBF este suportat în prezent de două portofele: Electrum și GreenAddress. În funcție de portofel, poate fi necesar să activați Opt-In RBF în setările meniului înainte de a trimite (prima) tranzacție.
Copiii își plătesc părinții
Dacă portofelul tău nu acceptă Opt-In RBF, lucrurile devin puțin mai complicate.
Copiii plătesc pentru părinți (CPFP) poate fi un truc. Folosind CPFP, minerii nu acceptă neapărat acele tranzacții care au cele mai mari comisioane, ci în schimb pot accepta un set de tranzacții care au comisioane în general mai mari.
Fără să devină prea tehnice, majoritatea tranzacțiilor efectuate nu numai că trimit Bitcoin destinatarului, dar îți trimit și schimbarea înapoi. Puteți cheltui această modificare în următoarea tranzacție.
Unele portofele vă oferă opțiunea de a cheltui acea modificare imediat, fără a aștepta confirmări, astfel încât să vă puteți trimite acea modificare într-o nouă tranzacție. De data aceasta, asigurați-vă că includeți o taxă suficient de mare pentru a compensa taxa inițială mică de tranzacție. Minerul în acest caz va lua întregul set de tranzacții și le va confirma pe toate odată.
Dacă portofelul nu vă permite să alegeți ce bitcoini au fost cheltuiți - adică nu puteți confirma unde este modificarea neconfirmată - puteți încerca să vă trimiteți toate fondurile din portofel; în acest caz modificarea va fi inclusă.
Ca și în cazul opt-in RBF, nu toți minerii acceptă în prezent CPFP. Dar sunt suficiente pentru ca tu să fii sigur că tranzacția ta va fi confirmată într-unul din următoarele blocuri.
Sau..
Dacă nici opțiunea de înscriere RBF și nici CPFP nu sunt disponibile, puteți încerca, din punct de vedere tehnic, să transferați tranzacția inițială cu taxe mai mari. Acest lucru este denumit în mod obișnuit „înlocuirea taxei complete” și unii mineri o acceptă. Cu toate acestea, portofelele disponibile nu au această opțiune.
În caz contrar, probabil că va trebui doar să așteptați - ca tranzacția să fie confirmată sau ca bitcoinii să fie returnați în portofel. Este important să rețineți că până când tranzacția este confirmată, bitcoinii sunt din punct de vedere tehnic în portofelul dvs. - pur și simplu nu sunt accesibile prin această metodă. Bitcoin-urile literalmente nu rămân blocate în rețea și nu se pot pierde în ea.
De asemenea, grupul de minerit ViaBTC a început să ofere un „accelerator de tranzacții”. Dacă tranzacția dvs. blocată implică o taxă de cel puțin 0,1 mBTC pe kilobyte, puteți trimite acel ID de tranzacție către ViaBTC, iar grupul îi va acorda o prioritate mai mare decât alte tranzacții. Deoarece ViaBTC controlează aproximativ șapte procente din puterea de hashing a rețelei Bitcoin, există șanse mari ca un bloc care conține tranzacția dvs. să fie găsit în câteva ore. Cu toate acestea, acest serviciu are o limitare de maximum 100 de tranzacții pe oră.
Pentru destinatar
Desigur, tranzacția poate rămâne blocată chiar dacă tu ești destinatarul. Dacă portofelul vă permite să cheltuiți tranzacții neconfirmate, atunci puteți utiliza și metoda CPFP. În același mod ca cel menționat mai sus, vă puteți retrimite bitcoini neconfirmați primiti, cu taxe suficient de mari pentru a compensa taxa inițială scăzută de tranzacție. Dacă noul comision este suficient, tranzacția este de obicei confirmată în blocurile următoare.
De asemenea, este logic să întrebați expeditorul fondurilor dacă este capabil să utilizeze opțiunea Opt-In RBF. Dacă da, el poate retrimite tranzacția cu o taxă mai mare. Desigur, acceleratorul de tranzacții ViaBTC (care a fost menționat mai sus) funcționează și pentru tranzacțiile primite.
Vrei mai multe noutăți?
DRAFT - DRAFT (Articolul este în curs de finalizare)
Recent, sarcina pe rețeaua de difuzare a crescut. În plus, sunt deseori deținute ICO-uri, ceea ce poate crește sarcina în rețea de aproape trei ori.
O creștere a încărcării rețelei poate duce la o situație în care tranzacția dvs. este în starea de așteptare pentru o perioadă foarte lungă de timp.
Cert este că minerii încearcă mai întâi să proceseze cele mai scumpe tranzacții. Prin urmare, tranzacțiile cu costuri mai mari la gaze au șanse mai mari de a fi procesate. Când sarcina rețelei crește tranzacțiile cu costuri reduse de gaz pot aștepta rândul lor câteva zile sau chiar săptămâni.
La momentul scrierii, la încărcare normală a rețelei, numărul de tranzacții în starea de așteptare variază de la 2000 la 4000 de mii. Când cineva începe un ICO, numărul de tranzacții este în așteptare poate crește la 8-11 mii . Imaginea arată un astfel de salt brusc.
Când o tranzacție este în așteptare de foarte mult timp, utilizatorul încearcă să trimită aceeași tranzacție, dar cu mai mult gaz, apoi alta și alta. Sperând că măcar unul dintre ei va trece. Și toate aceste tranzacții rămân în așteptare.
Faptul este că tranzacțiile de la o adresă sunt de obicei procesate în ordinea priorității. Prin urmare, primul nu a fost încă procesat - tranzacție de blocare, restul va astepta.
De ce apare și dispare tranzacția în așteptare, iar timpul de așteptare este resetat la zero?
Când o tranzacție intră în starea în așteptare, aceasta înseamnă că nodul a acceptat tranzacția dvs. pentru procesare. Și acum caută un bloc. Cu toate acestea, blocul poate fi găsit mai rapid de un alt nod care nu conține tranzacția dvs. În acest caz, nodul care v-a preluat tranzacția „o scuipă”, iar acum un alt nod vă poate prelua tranzacția pentru procesare. În acest caz, timpul este resetat la zero.
Cum să împingeți sau să eliminați o tranzacție de blocare
Este de remarcat faptul că așteptarea a 2-3 ore pentru o tranzacție, deși nu este normală, este totuși acceptabilă.
Tranzacțiile dintr-un bloc au propriile numere unice - nonce. Dacă trimiteți două tranzacții în rețea cu aceeași nonce, atunci doar unul dintre ele va fi procesat. Iar celălalt va fi considerat incorect. Prin urmare, este suficient să repetăm tranzacția cu aceeași nonce dar crește costul gazului. În acest caz, nodul va accepta tranzacția cu cel mai mare cost pentru procesare și o va respinge pe cea de blocare ca fiind incorectă. Și ne vom rezolva problema.
Cum să o facă?
Deci, dacă doriți în mod special să ștergeți o tranzacție de blocare, atunci este suficient să trimiteți o tranzacție goală cu un preț ridicat al gazului. Nu există nicio opțiune de a seta prețul gazului în ceață sau portofelul Ethereum. Prin urmare, vom folosi MyEtherWallet.
- Găsiți tranzacția de blocare. Pentru a face acest lucru, accesați etherscan.io și intrați în câmp abordare adresa de la care au fost trimise tranzacțiile și faceți clic pe butonul merge.
- Va apărea o listă cu toate tranzacțiile din contul dvs., faceți clic pe linkul „Txns în așteptare”
- Veți vedea o listă cu toate tranzacțiile în starea de așteptare și va fi afișat și prețul gazului. De regulă, tranzacția de blocare este prima. Așa este, vedem că la prima tranzacție prețul gazului este de 1 Gwei. Iar următorul din rând, deși are un preț al gazului de 21 Gwei, nu va fi procesat până la procesarea tranzacției de blocare. Faceți clic pe linkul de blocare a tranzacției pentru a vedea detaliile.
- Copiați numărul pentru detalii nici unul si adresa din(de fapt aceasta este adresa contului din care ati trimis tranzactia)
- Acum accesați https://www.myetherwallet.com/ și selectați fila Trimite offline(Traducere offline).
- Acum, din toate câmpurile, trebuie să completăm următoarele:
- Acum sarcina noastră este să vă deblocați portofelul într-un mod convenabil pentru dvs. Fă-o singur. După deblocare, veți avea acces la buton genera tranzactie. Apasa pe el. Și apoi faceți clic pe trimite tranzacția.
- În fereastra care apare, faceți clic pe butonul albastru „Yex, sunt sigur!” Faceți tranzacție.”
Tranzacția dvs. ar trebui acum ștearsă după ceva timp. Deschide etherscan.io cu adresa ta și urmărește procesul. Dacă există tranzacții ulterioare cu gaz scăzut, atunci această procedură trebuie efectuată și pentru ei. În exemplul nostru, după o tranzacție cu 1 Gwei, există o tranzacție cu 21 Gwei, așa că trebuie să îl eliminăm doar pe primul.
Tranzacţie este o secvență de operatori de manipulare a datelor executați ca un întreg(totul sau nimic) și baza de date de traducere de la o stare integrală la alta stare integrală.
O tranzacție are patru proprietăți importante cunoscute ca Proprietăți ASID :
(A) Atomicitate . O tranzacție este executată ca o operațiune atomică - fie întreaga tranzacție este executată, fie întreaga tranzacție nu este executată.
(C) Consecvență . O tranzacție mută baza de date dintr-o stare consecventă (integrală) într-o altă stare consecventă (integrală). În cadrul unei tranzacții, consecvența bazei de date se poate deteriora.
(I) Izolație . Tranzacțiile efectuate de diferiți utilizatori nu ar trebui să interfereze între ele (de exemplu, ca și cum ar fi executate în ordine strictă).
(D) Durabilitate . Dacă o tranzacție este finalizată, atunci rezultatele muncii acesteia trebuie salvate în baza de date, chiar dacă sistemul se blochează în momentul următor.
Tranzacția începe de obicei automat când utilizatorul se alătură SGBD și continuă până când apare unul dintre următoarele evenimente:
Comanda COMMIT WORK a fost emisă (comitați tranzacția).
Comanda ROLLBACK WORK a fost emisă.
Utilizatorul a fost deconectat de la SGBD.
A avut loc o defecțiune a sistemului.
Există două opțiuni pentru a finaliza o tranzacție. Eu cad operatori finalizat cu succes și nu au apărut erori software sau hardware în timpul tranzacției, tranzacţie fix.
Efectuarea unei tranzacții- aceasta este o acţiune care asigură record pe disc modificări ale bazei de date care au fost efectuate în timpul executării unei tranzacții.
Pana cand tranzacţie nu este fix, acceptabil anulare aceste schimbări, restaurare Bază de date la starea în care se afla la începutul tranzacției. Efectuarea unei tranzacțiiînseamnă că toate rezultatele tranzacției devin permanente. Ele vor deveni vizibile pentru alte tranzacții numai după curent tranzacţie vor fi înregistrate. Până în acest moment, toate datele afectate de tranzacție vor fi „vizibile” pentru utilizator în starea de la începutul tranzacției curente.
Dacă se întâmplă ceva în timpul executării unei tranzacții care face imposibilă finalizarea acesteia în mod normal, Bază de date trebuie returnat la starea inițială. Rollback tranzacţiile sunt acţiuni care oferă anulare toate modificările de date efectuate de operatori SQLîn corpul tranzacției curente în așteptare.
10. Abordări de bază pentru asigurarea executării paralele a tranzacțiilor. Probleme de execuție paralelă a tranzacțiilor.
Dacă mai mulți utilizatori lucrează cu baza de date în același timp, atunci SGBD nu numai că trebuie să efectueze corect tranzacții individuale și să restabilească starea consecventă a bazei de date după eșecuri, dar este conceput pentru a asigura munca paralelă corectă a tuturor utilizatorilor pe aceleași date. Conform teoriei, fiecare utilizator și fiecare tranzacție ar trebui să aibă proprietatea de izolare, adică ar trebui să fie executate ca și cum un singur utilizator ar lucra cu baza de date. Iar instrumentele moderne DBMS vă permit să izolați utilizatorii unul de celălalt în acest fel. Cu toate acestea, în acest caz există probleme cu încetinirea experienței utilizatorului.
Principalele probleme care apar la executarea tranzacțiilor în paralel pot fi împărțite în 4 tipuri:
Schimbări lipsesc.
Probleme de date intermediare.
Probleme de date inconsecvente.
Probleme cu șirurile fantomă.
Probleme legate de paralelismul tranzacțiilor
Cum pot tranzacțiile diferiților utilizatori să interfereze între ele? Există trei probleme principale ale concurenței:
Problemă cu rezultatele actualizării pierdute .
Problema dependenței neangajate (citind date murdare , lectură neglijentă ).
Rețeaua Bitcoin este în creștere, cursul de schimb este în creștere și tot mai des utilizatorii Bitcoin se confruntă cu o problemă atunci când o tranzacție Bitcoin îngheață. Acestea. Bitcoin-urile par să fi fost trimise, dar ajung la destinatar în cel mult câteva zile. Și cel mai adesea se întâmplă ca tranzacția să „plimbă” prin rețea și să revină în portofel. Apropo, aceasta este și una dintre opțiunile pozitive pentru desfășurarea evenimentelor.
După cum am menționat deja, creșterea numărului de tranzacții în rețeaua Bitcoin a dus la faptul că multe tranzacții „atârnă” neconfirmate timp de câteva zile. Mai mult, chiar și un comision crescut nu va garanta că tranzacția dumneavoastră va fi procesată în câteva ore menționate. Numărul de tranzacții neconfirmate în rețea poate ajunge până la 200.000.
Principalele motive pentru această situație sunt considerate a fi: un atac asupra rețelei Bitcoin și o taxă de tranzacție scăzută, iar atunci pur și simplu manierele nu o procesează.
Înainte de a trimite o plată, vă sfătuiesc să vă uitați la încărcarea rețelei. Acest lucru se poate face, de asemenea. Acolo puteți vedea și prețul recomandat pe octet.
Dar nu ai fi ajuns la acest articol dacă nu ai fi pus întrebarea pe care am făcut-o eu titlul. Deci, ce să faci dacă tranzacția este blocată? Există un serviciu special pentru tranzacțiile „împingere blocate”.
Pentru a face acest lucru, trebuie să obțineți HASH-ul tranzacției dvs. (mai jos este un exemplu despre cum să faceți acest lucru pe blockchain):
Nu am rescris intenționat, ci am copiat informații de pe forum. Totul este descris acolo într-o formă destul de accesibilă. Dacă aveți întrebări, adresați-le în comentarii, vom rezolva.