Onbevestigde transactie, of het retourneren van cryptocurrency uit de vergetelheid. Wat moet u doen als u een onbevestigde Bitcoin-transactie heeft? Waarom de transactie niet is bevestigd

Het Bitcoin-netwerk groeit, de wisselkoers stijgt en steeds vaker worden Bitcoin-gebruikers geconfronteerd met een probleem wanneer een Bitcoin-transactie vastloopt. Die. Bitcoins lijken verzonden, maar bereiken de ontvanger op zijn best binnen een paar dagen. En meestal gebeurt het dat de transactie door het netwerk ‘loopt’ en terugkeert naar de portemonnee. Dit is trouwens ook een van de positieve opties voor de ontwikkeling van evenementen.

Zoals ik al opmerkte, heeft de toename van het aantal transacties in het Bitcoin-netwerk ertoe geleid dat veel transacties meerdere dagen onbevestigd “hangen”. Bovendien garandeert zelfs een hogere commissie niet dat uw transactie binnen de aangegeven paar uur wordt verwerkt. Het aantal onbevestigde transacties op het netwerk kan oplopen tot 200.000.

De belangrijkste redenen voor deze situatie worden beschouwd als: een aanval op het Bitcoin-netwerk en lage transactiekosten, en dan verwerken de manieren het eenvoudigweg niet.

Voordat u een betaling verzendt, raad ik u aan om naar de netwerkbelasting te kijken. Dit kan ook. Daar kunt u ook de adviesprijs per byte zien.

Maar je zou niet naar dit artikel zijn gekomen als je niet de vraag had gesteld die ik de titel heb gemaakt. Dus, wat te doen als de transactie vastloopt? Er is een speciale service voor het “pushen van vastgelopen” transacties.

Om dit te doen, moet u de HASH van uw transactie verkrijgen (hieronder ziet u een voorbeeld van hoe u dit op de blockchain kunt doen):

Ik heb bewust de informatie van het forum niet herschreven, maar gekopieerd. Alles wordt daar in een redelijk toegankelijke vorm beschreven. Als je vragen hebt, stel ze dan in de reacties, dan lossen we het op.

ONTWERP - ONTWERP (Het artikel wordt momenteel afgerond)

Onlangs is de belasting van het omroepnetwerk toegenomen. Daarnaast worden er vaak ICO’s gehouden, waardoor de belasting van het netwerk bijna drie keer kan toenemen.

Een toename van de netwerkbelasting kan ertoe leiden dat uw transactie heel lang in de status 'in behandeling' blijft.

Feit is dat miners eerst de duurste transacties proberen te verwerken. Transacties met hogere gaskosten hebben daardoor een grotere kans om verwerkt te worden. Wanneer de netwerkbelasting toeneemt, kunnen transacties met lage gaskosten plaatsvinden kunnen enkele dagen of zelfs weken op hun beurt wachten.

Op het moment van schrijven varieert het aantal transacties in de lopende status bij normale netwerkbelasting van 2000 tot 4000 duizend. Wanneer iemand een ICO start, is het aantal transacties dat in behandeling is kan toenemen tot 8-11 duizend . De afbeelding toont zo'n scherpe sprong.

Wanneer een transactie al heel lang in behandeling is, probeert de gebruiker dezelfde transactie te verzenden, maar met meer gas, en dan nog een en nog een. In de hoop dat tenminste één van hen zal slagen. En al deze transacties blijven hangende.

Feit is dat transacties vanaf een adres doorgaans in volgorde van prioriteit worden verwerkt. Daarom is de allereerste nog niet verwerkt - transactie vergrendelen, de rest wacht.

Waarom verschijnt en verdwijnt de lopende transactie en wordt de wachttijd op nul gezet?

Wanneer een transactie de status 'in behandeling' krijgt, betekent dit dat het knooppunt uw transactie voor verwerking heeft geaccepteerd. En nu is hij op zoek naar een blok. Het blok kan echter sneller gevonden worden door een ander knooppunt waar jouw transactie niet in staat. In dit geval “spuugt het knooppunt dat uw transactie heeft ontvangen het uit” en nu kan een ander knooppunt uw transactie ter verwerking aannemen. In dit geval wordt de tijd op nul gezet.

Hoe u een vergrendelingstransactie kunt pushen of verwijderen

Het is vermeldenswaard dat 2-3 uur wachten op een transactie, hoewel niet normaal, nog steeds acceptabel is.

Transacties in een blok hebben hun eigen unieke nummers - nonce. Als u twee transacties met hetzelfde naar het netwerk verzendt nonce, dan wordt er slechts één verwerkt. En de andere wordt als onjuist beschouwd. Daarom is het voor ons voldoende om de transactie met hetzelfde te herhalen nonce maar verhogen de gaskosten. In dit geval zal het knooppunt de transactie met de hoogste verwerkingskosten accepteren en de blokkerende transactie als onjuist afwijzen. En wij zullen ons probleem oplossen.

Hoe dit te doen?

Als u dus specifiek een blokkerende transactie wilt verwijderen, volstaat het om een ​​lege transactie met een hoge benzineprijs te verzenden. Er is geen optie om de prijs van gas in de mist- of ethereum-portemonnee vast te stellen. Daarom zullen we MyEtherWallet gebruiken.

  1. Zoek de vergrendelingstransactie. Ga hiervoor naar etherscan.io en voer het veld in adres het adres waarvandaan de transacties zijn verzonden en klik op de knop gaan.
  2. Er verschijnt een lijst met alle transacties van uw account. Klik op de link 'In afwachting van Txns'
  3. U ziet een lijst met alle transacties in de status 'in behandeling' en de gasprijs wordt ook weergegeven. In de regel is de sluittransactie de eerste. Dat klopt, we zien dat bij de eerste transactie de gasprijs 1 Gwei bedraagt. En de volgende in de rij, hoewel deze een gasprijs van 21 Gwei heeft, zal niet worden verwerkt totdat de vergrendelingstransactie is verwerkt. Klik op de hash-link van de vergrendelingstransactie om de details te bekijken.
  4. Kopieer het nummer voor meer informatie geen en adres van(eigenlijk is dit het adres van de rekening waarvan u de transactie heeft verzonden)
  5. Ga nu naar https://www.myetherwallet.com/ en selecteer het tabblad Offline verzenden(Offlinevertaling).
  6. Nu moeten we uit alle velden het volgende invullen:
  7. Nu is het onze taak om uw portemonnee te ontgrendelen op een manier die voor u handig is. Doe het zelf. Na het ontgrendelen heb je toegang tot de knop transactie genereren. Klik erop. En klik vervolgens op transactie verzenden.
  8. In het venster dat verschijnt, klikt u op de blauwe knop “Ja, ik weet het zeker!” Transactie uitvoeren."

Uw transactie zou nu na enige tijd moeten worden verwijderd. Open etherscan.io met uw adres en bekijk het proces. Mochten er vervolgtransacties met laag gas plaatsvinden, dan dient deze procedure ook daarvoor te worden uitgevoerd. In ons voorbeeld is er na een transactie met 1 Gwei een transactie met 21 GWei, dus we hoeven alleen de eerste te verwijderen.

Veel mensen zijn waarschijnlijk al het probleem van bevroren speelballen tegengekomen (tijdens het verzenden en ontvangen).
In de meeste gevallen komt dit door netwerkspam en lage kosten voor mijnwerkers (hierna commissie genoemd).
Voordat ik bitcoins verzend, raad ik u aan om naar de staat van het netwerk te kijken en de commissie in te stellen die deze diensten aanbevelen:
https://btc.com/stats/unconfirmed-tx

Als het zo is dat u een commissie heeft verzonden die lager is dan de aanbevolen commissie, of als uw transactie simpelweg onbevestigd is gebleven en niet in de blokkering is opgenomen, gebruik dan deze service om te “pushen”:

Neem uw e(id) transactie:
Voorbeeld:

En voer hier het ID in:


Opmerking!

Wanneer het netwerk overbelast is, is het niet altijd mogelijk om Bitcoin de eerste keer met succes in te voeren via deze dienst.

Mogelijk ontvangt u een bericht als dit:

Inzendingen overschrijden de limiet. Probeer het later.

Klik om uit te vouwen...

Je moet rijden totdat je de status: Succesvol krijgt.

Hierna wordt uw transactie opgepakt en in het blok opgenomen voor verwerking.

Wat moet u doen als uw Bitcoin-transactie niet wordt bevestigd ("vastgelopen")?

In eerste instantie kun je gewoon wachten. Als er meerdere uren (of zelfs dagen) zijn verstreken en je het wachten beu bent, dan zijn er verschillende opties:

  1. Maak een dubbele uitgave. Kenmerken: kan alleen door de afzender worden gedaan.
  2. Gebruik CPFP. Kenmerken: kan worden gedaan door de ontvanger en meestal door de afzender.
  3. Gebruik vervangend tarief. Kenmerken: alleen de afzender kan en als hij dit vooraf heeft geregeld; niet alle portemonnees kunnen dat.
  4. Gebruik de "accelerator" van viabtc. Kenmerken: de ontvanger en de afzender kunnen dat wel, maar de dienst is vaak overbelast en er zijn beperkingen aan de transactie.
Hoe maak je een doublespend (dubbele uitgaven)?

We gaan te werk volgens het volgende algoritme (het algoritme wordt beschreven voor de Bitcoin Core-portemonnee; voor andere portemonnees zijn de acties vergelijkbaar, maar de opdrachten zullen anders zijn):

SpoilerDoel"> Spoiler: algoritme

1) Zorg ervoor dat het op bevestiging wacht. Om dit te doen, kopieert u uw transactie-ID en plakt u deze in de zoekbalk van de blockchain.info-service (evenals bitaps.com, blocktrail.com/BTC of iets dergelijks). Vervolgens zoeken we naar de regel “onbevestigde transactie”. Gevonden? Dit betekent dat de transactie wacht op bevestiging.
Opmerking. We kijken niet naar de “Geschatte bevestigingstijd” op de pagina met uw blockchain.info-transactie - we weten niet wat daar staat.

2) Sluit nu de portemonnee en start deze vanaf de opdrachtregel met de parameter -zapwallettxes en wacht tot deze wordt geopend. Wanneer de portemonnee start, verdwijnen alle onbevestigde transacties ervan (maar ze staan ​​nog steeds op het netwerk!). Voor bitcoin core 0.14 moet u het mempool.dat-bestand hernoemen of verplaatsen voordat u het start (de mempool in deze versie wordt opgeslagen in een bestand en de oude transactie blijft daar).
Opmerking. Waarom niet met de parameter -salvagewallet? -zapwallettxes heeft geen invloed op uw sleutelnamen, maar -salvagewallet zal ze verwijderen. Ook crasht de bitcoin core soms tijdens het draaien met - salvagewallet en dan wordt uw wallet.dat beschadigd. Het is waar dat er vooraf een kopie naast wordt gemaakt.

3) Nu kunt u een nieuwe transactie aanmaken en niet vergeten een passende commissie in te stellen. Maar! Omdat uw oude transactie nog online staat, kan deze ooit onverwacht worden bevestigd. Als dit u niet bevalt, moet bij de nieuwe transactie ten minste één van de invoergegevens overeenkomen met een van de invoergegevens van de oude. Om dit te doen, kijkt u naar de kolom “inputs” op uw transactiepagina op de website blocktrail.com/BTC of een analoog, en vult u de exacte grootte van de input in speelballen in. Daarna, wanneer u een transactie in de portemonnee aanmaakt, klikt u op de knop "invoer...", zoekt u exact hetzelfde aantal speelballen in de lijst en selecteert u deze (als er meerdere zijn, selecteert u vervolgens met dezelfde ontvangst adres en tijd). Hierna selecteren we nog wat inputs zodat het totaalbedrag groter is dan het transactiebedrag met de toekomstige commissie; Het is beter om met een reserve te kiezen. Vul vervolgens zoals gewoonlijk alle velden in (vergeet de commissie niet!) en verzend.


Hoe CPFP gebruiken? Wat moet ik doen als ik niet de afzender, maar de ontvanger van de transactie ben?

Er bestaat zo'n methode en deze is geschikt voor ontvangers; Het is ook geschikt voor de afzender als uw transactie “wijziging” had (meestal is dat zo). Deze methode is iets duurder en hoeveel pools deze ondersteunen is onbekend (vanaf begin 2017 ondersteunen minstens twee pools deze). U kunt het CPFP-mechanisme (kind betaalt voor ouder) proberen. Om dit te doen, moet u een van de opbrengsten van de problematische transactie uitgeven met een commissie die voldoende is voor beide transacties tegelijk: de nieuwe en de oude. Dat wil zeggen, u creëert eenvoudigweg een transactie met één invoer (dit zou een van de problematische uitvoer moeten zijn, bijvoorbeeld verandering) en stuurt de bitcoins naar uzelf. Stel de commissie zo in dat deze voor beide tegelijk voldoende is: om dit te doen, telt u hun omvang bij elkaar op, vermenigvuldigt u met het getal uit de paragraaf "Hoe kiest u een adequate commissie?", deelt u deze door de grootte van de nieuwe in kilobytes en voer dit in de kolom ‘aangepaste transactiekosten’ in bij het verzenden van de transactie. Meer details voor de Bitcoin Core-portemonnee onder de spoiler:

SpoilerTarget">Spoiler

Stel dat u de ontvanger bent en 0,08500148 btc zou moeten ontvangen. Om CPFP te gebruiken, klikt u in Bitcoin Core op "Instellingen" -> "Opties" -> "Portefeuille" ("Instellingen" -> "Opties" -> "Portefeuille"); vink de vakjes aan voor 'Muntcontrolefuncties inschakelen' en 'Onbevestigd wisselgeld uitgeven' als deze niet zijn aangevinkt (dan kunt u ze verwijderen); Sluit nu het instellingenvenster en klik op “Verzenden”, klik vervolgens op de knop “Ingangen...” en controleer het bedrag 0,08500148; vervolgens “OK”, voer uw adres in als ontvanger; hoeveelheid ingesteld op 0,08500148 en het selectievakje “kosten aftrekken van bedrag”; stel de commissie “selectief” (“aangepast”), “per kilobyte” (“per kilobyte”) in en schrijf deze op basis van 2 transacties met behulp van de formule ((grootte van de oude transactie)/(grootte van de nieuwe transactie) + 1 )*(adequate commissie voor kilobyte of beter). Verzenden.

Alle. Nu wacht je. De pools die dit plan ‘begrijpen’ zullen graag beide transacties tegelijk accepteren. Dit gaat misschien niet zo snel als er maar weinig van dergelijke pools zijn.


Hoe een transactie annuleren? Kan een transactie zichzelf annuleren?

Zodra een transactie is bevestigd (opgenomen in een blok), kan deze niet meer worden teruggedraaid of teruggedraaid. Om een ​​onbevestigde transactie te annuleren, moet u een transactie aanmaken die ermee concurreert en ervoor zorgen dat deze in de blokkering wordt opgenomen - zie punt (2) van het antwoord op de vraag “Wat te doen als de Bitcoin-transactie die u heeft verzonden niet is bevestigd ( "vast")?". In ieder geval is hier geen garantie op succes.

Een onbevestigde transactie zelf kan niet worden geannuleerd; alleen de weergave in uw portemonnee kan veranderen. Zie vervolgens het antwoord op de vraag "Mijn transactie was een aantal dagen onbevestigd en verdween toen en het geld werd teruggestuurd. Nu is alles in orde en kan ik het geld gewoon opnieuw sturen?"

Mijn transactie bleef enkele dagen onbevestigd, verdween toen en het geld werd teruggegeven. Nu is alles in orde en kan ik het geld gewoon opnieuw sturen?

Nee! Uw oude transactie staat nog online en kan onverwachts worden bevestigd. Om dit te voorkomen, zie punt (2) van het antwoord op de vraag “Wat te doen als de door u verzonden Bitcoin-transactie niet is bevestigd (“vastgelopen”)?” (onder de spoiler). Als u van gedachten verandert over het maken van die vertaling, kunt u de vertaling zelf maken.

Hoe kunt u zich beschermen tegen bevroren transacties?

  1. Stel een adequate commissie in.
  2. Schakel het mechanisme voor vervangen door kosten in uw portemonnee in en markeer alle transacties als vervangbaar als uw portemonnee dit ondersteunt (electrum lijkt dit te ondersteunen). Hierdoor kunt u de commissie eenvoudig verhogen als er zich een probleem voordoet.

Dit betekent dat er meer blokken gevuld zijn. En omdat niet alle transacties direct in de blockchain kunnen worden opgenomen, ontstaat er overlast, die miners een ‘mempool’ (een soort ‘transactiewachtrij’) noemen.

Mijnwerkers kiezen meestal die transacties met hogere commissies en nemen deze als eerste op in het blok. Transacties met lagere kosten worden “verzonden” naar de zogenaamde “vergoedingsmarkt” en blijven in de miner-mempool totdat er een nieuw blok wordt gevonden. Als de transactie opnieuw wordt verzonden, zal deze opnieuw moeten wachten op het volgende blok.

Dit kan resulteren in een minder dan optimale gebruikerservaring. Het kan uren of zelfs dagen duren voordat transacties met zeer lage kosten worden bevestigd, en in sommige gevallen wordt deze mogelijk helemaal niet bevestigd.

En dit is wat u vandaag kunt doen om te voorkomen dat uw transactie vastloopt.

Voordat u het verzendt

Tijdens de beginjaren van Bitcoin voegden de meeste portemonnees een vast bedrag toe voor uitgaande transacties: doorgaans 0,1 mBTC. Omdat de mijnwerkers voldoende ruimte in de blokken hadden, hadden ze er geen probleem mee om deze transacties op te nemen in het eerste blok dat ze konden minen. (In feite werden transacties met nog lagere kosten of zelfs zonder kosten net zo snel in blokken opgenomen.)

Door de toenemende concurrentie om blokruimte werd de vaste vergoeding van 0,1 mBTC onvoldoende om een ​​transactie onmiddellijk in het volgende blok te laten opnemen; ze worden voorbijgestreefd door transacties waarvan de kosten hoger zijn. Hoewel het waarschijnlijk is dat een deal met lage kosten wordt bevestigd, kan dit enige tijd duren.

Probeer uw commissie te verhogen

Als u wilt dat uw transacties sneller worden bevestigd, is de voor de hand liggende oplossing om hogere kosten aan die transactie toe te voegen. Als uw portemonnee (met standaardinstellingen) niet genoeg commissie toevoegt, kunt u deze instelling handmatig configureren, zowel in de portemonnee-instellingen als bij het verzenden van de transactie (of beide).

Sites zoals 21.co houden de toestand van het netwerk in de gaten en suggereren welk commissieniveau per byte transactie voldoende zal zijn, en laten ook zien welke snelheid van netwerkbevestigingen u kunt verwachten bij verschillende commissieniveaus.

Als je wilt dat de betaling in het volgende blok of aan de overkant van het blok terechtkomt, moet je een relatief hoog bedrag betalen. Voor minder urgente betalingen kunt u een lager tarief in rekening brengen; het duurt alleen iets langer om te bevestigen.

Controleer of uw portemonnee dynamische tariefwijzigingen ondersteunt

Tegenwoordig ondersteunen de meeste portemonnees dynamische veranderingen in commissies. Op basis van de staat van het Bitcoin-netwerk omvatten deze portemonnees automatisch een vergoeding die voldoende zal zijn om de transactie in het volgende blok, of in ieder geval een van de volgende blokken, op te nemen.

Sommige portemonnees bieden u ook de mogelijkheid om voorrang op de kosten te kiezen. Nogmaals, hogere kosten zorgen ervoor dat de transactie sneller kan worden bevestigd, terwijl transacties met lage kosten iets langer duren.

Als transacties vanuit uw portemonnee tijdens piekuren vaak vertraging oplopen en u niet de mogelijkheid heeft om hogere kosten in rekening te brengen, is uw portemonnee waarschijnlijk verouderd. Controleer of er een update beschikbaar is of stap over naar een nieuwe portemonnee.

Overweeg om over te stappen naar een andere portemonnee

Wanneer u overstapt naar een nieuwe portemonnee, dan moet u uiteraard geld overboeken van uw oude portemonnee naar de nieuwe portemonnee. Als u het niet erg vindt om wat geld uit te geven, kunt u via het Bitcoin-netwerk geld overboeken van uw oude portemonnee naar uw nieuwe portemonnee. Ze zullen uiteindelijk arriveren, ook al is de commissie laag.

Bij sommige portemonnees kunt u ook uw privésleutels exporteren of een privésleutelzaadje gebruiken en de sleutels vervolgens in een nieuwe portemonnee importeren. In dit geval hoeft u geen transacties uit te voeren op het Bitcoin-netwerk. Met uw nieuwe portemonnee kunt u onmiddellijk transacties starten.

Nadat je het hebt verzonden

Als u al een transactie heeft verzonden en deze loopt vast, dan kan die transactie in sommige gevallen een "wachtrijsprong" maken.

Selectieve vervanging van commissies

Om uw transactie in lijn te krijgen, is de eenvoudigste manier het gebruik van een optie genaamd Opt-In Replace-by-Fee (Opt-In RBF). Het geeft u de mogelijkheid om dezelfde transactie opnieuw te verzenden, maar tegen hogere kosten.

In de meeste gevallen, wanneer dezelfde transactie via het netwerk wordt verzonden, maar tegen hogere kosten, wordt de nieuwe transactie door het netwerk afgewezen. Bitcoin-knooppunten besluiten meestal dat de nieuwe transactie een poging tot dubbele uitgave is, dus accepteren of verwerken ze deze niet. Maar wanneer u een transactie doorstuurt met behulp van de RBF Opt-In-optie, vertelt u het netwerk in feite dat u dezelfde transactie doorstuurt, alleen tegen een hogere vergoeding. Als gevolg hiervan accepteren de meeste Bitcoin-knooppunten de nieuwe transactie in plaats van de oude; waardoor een nieuwe transactie in de wachtrij kan springen.

Of uw nieuwe transactie wordt opgenomen in een van de komende blokken, hangt af van de miner die het volgende blok telt: niet alle miners ondersteunen Opt-In RBF. Er zijn echter ook nogal wat miners die deze optie ondersteunen, dus op de een of andere manier wordt uw transactie opgenomen in de komende blokken.

Opt-In RBF wordt momenteel ondersteund door twee portemonnees: Electrum en GreenAddress. Afhankelijk van de portemonnee moet u mogelijk Opt-In RBF inschakelen in de menu-instellingen voordat u uw (eerste) transactie verzendt.

Kinderen betalen voor hun ouders

Als uw portemonnee Opt-In RBF niet ondersteunt, wordt het iets ingewikkelder.

Kinderen betalen voor ouders (CPFP) kan een gimmick zijn. Door CPFP te gebruiken accepteren mijnwerkers niet noodzakelijkerwijs de transacties met de hoogste kosten, maar kunnen ze in plaats daarvan een reeks transacties accepteren die over het algemeen hogere kosten met zich meebrengen.

Zonder al te technisch te worden, sturen de meeste uitgaande transacties niet alleen Bitcoin naar de ontvanger, maar sturen ze ook wisselgeld naar u terug. Dit wisselgeld kunt u besteden bij uw volgende transactie.

Sommige portemonnees bieden u de mogelijkheid om dat wisselgeld meteen uit te geven zonder op bevestigingen te wachten, zodat u dat wisselgeld in een nieuwe transactie naar uzelf kunt sturen. Zorg er deze keer voor dat u een vergoeding meetelt die groot genoeg is om de aanvankelijk lage transactiekosten te compenseren. De mijnwerker neemt in dit geval de volledige reeks transacties en bevestigt ze allemaal in één keer.

Als u in de portemonnee niet kunt kiezen welke bitcoins zijn uitgegeven (wat betekent dat u niet kunt bevestigen waar het onbevestigde wisselgeld is), kunt u proberen al het geld in de portemonnee naar uzelf te sturen; in dit geval wordt de wijziging doorgevoerd.

Net als bij Opt-In RBF ondersteunen momenteel niet alle mijnwerkers CPFP. Maar ze zijn voldoende om er zeker van te zijn dat uw transactie in een van de volgende blokken wordt bevestigd.

Of..

Als noch de Opt-In RBF noch de CPFP-optie beschikbaar zijn, kunt u technisch gezien nog steeds proberen de oorspronkelijke transactie tegen hogere kosten door te geven. Dit wordt gewoonlijk "vervanging van de volledige vergoeding" genoemd en sommige mijnwerkers accepteren dit. Beschikbare portemonnees hebben deze optie echter niet.

Anders zult u waarschijnlijk gewoon moeten wachten tot de transactie wordt bevestigd of totdat de bitcoins in uw portemonnee worden teruggestort. Het is belangrijk op te merken dat totdat de transactie is bevestigd, de bitcoins technisch gezien in uw portemonnee zitten; ze zijn gewoon niet toegankelijk via deze methode. Bitcoins blijven letterlijk niet hangen in het netwerk en kunnen er ook niet in verdwalen.

Ook begon de mijnpool van ViaBTC een ‘transactieversneller’ aan te bieden. Als uw vastgelopen transactie een vergoeding van minimaal 0,1 mBTC per kilobyte met zich meebrengt, kunt u dat transactie-ID indienen bij ViaBTC en de pool zal er een hogere prioriteit aan geven dan andere transacties. Omdat ViaBTC zo'n zeven procent van de hashing power van het Bitcoin-netwerk in handen heeft, is de kans groot dat er binnen een paar uur een block met daarin jouw transactie wordt gevonden. Deze dienst heeft echter een beperking van maximaal 100 transacties per uur.

Voor de ontvanger

Natuurlijk kan de transactie vastlopen, zelfs als u de ontvanger bent. Als u met uw portemonnee onbevestigde transacties kunt uitgeven, kunt u ook de CPFP-methode gebruiken. Op vrijwel dezelfde manier als hierboven vermeld, kunt u inkomende onbevestigde bitcoins opnieuw naar uzelf verzenden, tegen kosten die hoog genoeg zijn om de aanvankelijk lage transactiekosten te compenseren. Als de nieuwe vergoeding voldoende is, wordt de transactie meestal in de volgende blokken bevestigd.

Het is ook zinvol om de afzender van het geld te vragen of hij gebruik kan maken van de Opt-In RBF-optie. Als dat zo is, kan hij de transactie opnieuw verzenden tegen een hogere vergoeding. Uiteraard werkt de transactieversneller ViaBTC (die hierboven werd genoemd) ook voor inkomende transacties.

Wilt u meer nieuws?

Transactie is een reeks gegevensmanipulatie-operatoren die worden uitgevoerd als één geheel(alles of niets) en het vertalen van de database van de ene integrale toestand naar de andere integrale toestand.

Een transactie heeft vier belangrijke eigenschappen, ook wel bekend als: ASID-eigenschappen :

    (A) Atomiciteit . Een transactie wordt uitgevoerd als een atomaire operatie: de gehele transactie wordt uitgevoerd, of de gehele transactie wordt niet uitgevoerd.

    (C) Consistentie . Een transactie verplaatst de database van de ene consistente (integrale) staat naar een andere consistente (integrale) staat. Binnen een transactie kan de consistentie van de database afnemen.

    (I) Isolatie . Transacties van verschillende gebruikers mogen elkaar niet hinderen (bijvoorbeeld alsof ze in strikte volgorde worden uitgevoerd).

    (D) Duurzaamheid . Als een transactie is voltooid, moeten de resultaten van zijn werk in de database worden opgeslagen, zelfs als het systeem het volgende moment crasht.

De transactie start doorgaans automatisch wanneer de gebruiker lid wordt van het DBMS en gaat door totdat een van de volgende gebeurtenissen plaatsvindt:

    Het COMMIT WORK-commando is uitgegeven (commiteer de transactie).

    Het ROLLBACK WORK-commando is uitgegeven.

    De verbinding tussen de gebruiker en het DBMS is verbroken.

    Er heeft zich een systeemfout voorgedaan.

Er zijn twee opties om een ​​transactie te voltooien. Als alles exploitanten succesvol afgerond en er zijn geen software- of hardwarefouten opgetreden tijdens de transactie, transactie vast.

Een transactie plegen- dit is een actie die ervoor zorgt dossier op schijf wijzigingen in de database die zijn aangebracht tijdens de uitvoering van een transactie.

Tot transactie niet opgelost, acceptabel annulering deze veranderingen, restauratie databases naar de staat waarin deze zich bevond bij aanvang van de transactie. Een transactie plegen betekent dat alle resultaten van de transactie permanent worden. Ze worden pas na de huidige transactie zichtbaar voor andere transacties transactie zal worden opgenomen. Tot nu toe zullen alle gegevens die door de transactie worden beïnvloed, "zichtbaar" zijn voor de gebruiker in de staat aan het begin van de huidige transactie.

Als er tijdens de transactie iets gebeurt waardoor het onmogelijk is om deze normaal af te ronden, database moet in de oorspronkelijke staat worden teruggebracht. Terugdraaien transacties zijn acties die zorgen voor annulering alle gegevenswijzigingen die door operators zijn aangebracht SQL in de hoofdtekst van de huidige lopende transactie.

10. Basisbenaderingen om parallelle uitvoering van transacties te garanderen. Problemen met parallelle uitvoering van transacties.

Als meerdere gebruikers tegelijkertijd met de database werken, moet het DBMS niet alleen individuele transacties correct uitvoeren en de consistente status van de database herstellen na storingen, maar is het ook ontworpen om correct parallel werk van alle gebruikers op dezelfde gegevens te garanderen. Volgens de theorie zou elke gebruiker en elke transactie de eigenschap van isolatie moeten hebben, dat wil zeggen dat ze moeten worden uitgevoerd alsof er maar één gebruiker met de database werkt. En met moderne DBMS-tools kun je op deze manier gebruikers van elkaar isoleren. In dit geval zijn er echter problemen met het vertragen van de gebruikerservaring.

De belangrijkste problemen die zich voordoen bij het parallel uitvoeren van transacties kunnen worden onderverdeeld in 4 typen:

    Ontbrekende wijzigingen.

    Tussenliggende gegevensproblemen.

    Inconsistente gegevensproblemen.

    Problemen met spookreeksen.

Problemen met transactieparallellisme

Hoe kunnen transacties van verschillende gebruikers elkaar hinderen? Er zijn drie belangrijke problemen met gelijktijdigheid:

    Probleem met verloren updateresultaten .

    Het ongecommitteerde afhankelijkheidsprobleem (vuile gegevens lezen , slordig lezen ).