Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fixReducedOffersV1 still not covering all cases and book blocking (Version: 2.1.0) #4937

Closed
shortthefomo opened this issue Feb 29, 2024 · 8 comments
Assignees
Milestone

Comments

@shortthefomo
Copy link

shortthefomo commented Feb 29, 2024

Issue Description

Amendment fixReducedOffersV1 https://xrpl.org/resources/known-amendments#fixreducedoffersv1 is still not fixing all case where the order book is blocked

two cases have now been identified on mainnet.

Supporting Files

GHhUFv5XYAAVWtV
GHYCDJ_X0AAEvjm

@scottschurr
Copy link
Collaborator

@lathanbritz, I'm disappointed but not surprised that I didn't fix all the ways that order books can be blocked. I have something else I'm working on right now, but this issue is next on my list after that's done.

It would help a lot if you can identify a specific historic transaction that failed because of this blockage. Of course you can only point at transactions that fail with a tec code. So there may not be any such transactions on the network. But being able to replay such a transaction might help me see the reason behind the blockage. If you know of a transaction like that please mention it here. Thanks.

@shortthefomo
Copy link
Author

@scottschurr rLtdxMMXPs21PYnnSiwm85EabdHDH4oVhi has blocked the USD book (its the one with the partially filled order), it does not have too many tx

Screenshot 2024-03-01 at 17 33 02

@scottschurr
Copy link
Collaborator

@lathanbritz that helps, thanks. That's current? Like that's the state of the book for, say, ledger 86325875? Is there a way you can get the ledger index of the blocking offer (from rLtdxMMXPs21PYnnSiwm85EabdHDH4oVhi). That would be a big help. Then I can look back at that offer's history.

@shortthefomo
Copy link
Author

shortthefomo commented Mar 25, 2024

@scottschurr we have another instance today
Screenshot 2024-03-25 at 12 54 13

ledger index 86,858,489 its present
account https://xrpscan.com/account/rJTyFN9PYy9uWJ3ixsSBfvhZGgvvjNt8MV

here is the offending offer possibly... its left 4 drops behind..

{
flags: 131072,
quality: "339.1499962650333",
seq: 79064611,
taker_gets: 
{
    currency: "CSC",
    issuer: "rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
    value: "0.016190728"
},
taker_pays: 
    "4"
},

and here is a dump of all the offers.

{
flags: 
131072,
quality: 
"604.4800060902183",
seq: 
79060787,
taker_gets: 
{...}, // 3 items
taker_pays: 
"43671867"
},
{
flags: 
131072,
quality: 
"596.9100028176952",
seq: 
79060792,
taker_gets: 
{...}, // 3 items
taker_pays: 
"42368672"
},
{
flags: 
131072,
quality: 
"477.6",
seq: 
79061247,
taker_gets: 
{...}, // 3 items
taker_pays: 
"41458068"
},
{
flags: 
131072,
quality: 
"476.4000039835083",
seq: 
79061248,
taker_gets: 
{...}, // 3 items
taker_pays: 
"23918615"
},
{
flags: 
131072,
quality: 
"598.4200042240527",
seq: 
79060791,
taker_gets: 
{...}, // 3 items
taker_pays: 
"53834462"
},
{
flags: 
131072,
quality: 
"481.1799936146747",
seq: 
79061055,
taker_gets: 
{...}, // 3 items
taker_pays: 
"33157151"
},
{
flags: 
131072,
quality: 
"595.3899946566925",
seq: 
79060793,
taker_gets: 
{...}, // 3 items
taker_pays: 
"35656716"
},
{
flags: 
131072,
quality: 
"640.2699942270972",
seq: 
79060255,
taker_gets: 
{...}, // 3 items
taker_pays: 
"28836480"
},
{
flags: 
131072,
quality: 
"645.1300048605627",
seq: 
79060252,
taker_gets: 
{...}, // 3 items
taker_pays: 
"42472779"
},
{
flags: 
131072,
quality: 
"638.649995351864",
seq: 
79060256,
taker_gets: 
{...}, // 3 items
taker_pays: 
"27479832"
},
{
flags: 
131072,
quality: 
"624.0700042962926",
seq: 
79060265,
taker_gets: 
{...}, // 3 items
taker_pays: 
"24693826"
},
{
flags: 
131072,
quality: 
"635.4099816289039",
seq: 
79060258,
taker_gets: 
{...}, // 3 items
taker_pays: 
"10376245"
},
{
flags: 
131072,
quality: 
"615.9700198517198",
seq: 
79060270,
taker_gets: 
{...}, // 3 items
taker_pays: 
"15203988"
},
{
flags: 
131072,
quality: 
"622.4500081934593",
seq: 
79060266,
taker_gets: 
{...}, // 3 items
taker_pays: 
"26589197"
},
{
flags: 
131072,
quality: 
"607.8699938490979",
seq: 
79060275,
taker_gets: 
{...}, // 3 items
taker_pays: 
"24810381"
},
{
flags: 
131072,
quality: 
"479.9700063356757",
seq: 
79061056,
taker_gets: 
{...}, // 3 items
taker_pays: 
"33332957"
},
{
flags: 
131072,
quality: 
"628.9299987344087",
seq: 
79060262,
taker_gets: 
{...}, // 3 items
taker_pays: 
"44725099"
},
{
flags: 
131072,
quality: 
"609.4899995485124",
seq: 
79060274,
taker_gets: 
{...}, // 3 items
taker_pays: 
"26999188"
},
{
flags: 
131072,
quality: 
"637.030001244865",
seq: 
79060257,
taker_gets: 
{...}, // 3 items
taker_pays: 
"30703572"
},
{
flags: 
131072,
quality: 
"641.8900015080682",
seq: 
79060254,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"66310"
},
taker_pays: 
"42563726"
},
{
flags: 
131072,
quality: 
"602.9700057376888",
seq: 
79060788,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"50543"
},
taker_pays: 
"30475913"
},
{
flags: 
131072,
quality: 
"627.309996938762",
seq: 
79060263,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"75133"
},
taker_pays: 
"47131682"
},
{
flags: 
131072,
quality: 
"648.3700026077712",
seq: 
79060250,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"49851"
},
taker_pays: 
"32321893"
},
{
flags: 
131072,
quality: 
"601.4499983117044",
seq: 
79060789,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"88847"
},
taker_pays: 
"53437028"
},
{
flags: 
131072,
quality: 
"606.3499980440481",
seq: 
79060303,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"76689"
},
taker_pays: 
"46500375"
},
{
flags: 
131072,
quality: 
"614.3499935784923",
seq: 
79060271,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"46718"
},
taker_pays: 
"28701203"
},
{
flags: 
131072,
quality: 
"612.7300002720127",
seq: 
79060272,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"36763"
},
taker_pays: 
"22525793"
},
{
flags: 
131072,
quality: 
"643.5100061919505",
seq: 
79060253,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"80750"
},
taker_pays: 
"51963433"
},
{
flags: 
131072,
quality: 
"599.9399959250204",
seq: 
79060790,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"78528"
},
taker_pays: 
"47112088"
},
{
flags: 
131072,
quality: 
"630.5499945717078",
seq: 
79060261,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"46055"
},
taker_pays: 
"29039980"
},
{
flags: 
131072,
quality: 
"620.8300048907728",
seq: 
79060267,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"49072"
},
taker_pays: 
"30465370"
},
{
flags: 
131072,
quality: 
"426.3599974705957",
seq: 
79063284,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"15814"
},
taker_pays: 
"6742457"
},
{
flags: 
131072,
quality: 
"414.590013955652",
seq: 
79063294,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"19347"
},
taker_pays: 
"8021073"
},
{
flags: 
131072,
quality: 
"422.0800008436683",
seq: 
79063288,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"47412"
},
taker_pays: 
"20011657"
},
{
flags: 
131072,
quality: 
"424.2200006990808",
seq: 
79063286,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"57218"
},
taker_pays: 
"24273020"
},
{
flags: 
131072,
quality: 
"346.2000031345998",
seq: 
79064493,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"63804"
},
taker_pays: 
"22088945"
},
{
flags: 
131072,
quality: 
"474",
seq: 
79061250,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"36239"
},
taker_pays: 
"17177286"
},
{
flags: 
131072,
quality: 
"371.3399961187658",
seq: 
79063684,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"13733.49774681672"
},
taker_pays: 
"5099797"
},
{
flags: 
131072,
quality: 
"475.2",
seq: 
79061249,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"32565"
},
taker_pays: 
"15474888"
},
{
flags: 
131072,
quality: 
"415.6600061935028",
seq: 
79063293,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"67813"
},
taker_pays: 
"28187152"
},
{
flags: 
131072,
quality: 
"427.4299963329667",
seq: 
79063283,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"81810"
},
taker_pays: 
"34968048"
},
{
flags: 
131072,
quality: 
"412.4499906173767",
seq: 
79063296,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"42632"
},
taker_pays: 
"17583568"
},
{
flags: 
131072,
quality: 
"364.6999898439352",
seq: 
79063810,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"23169.7"
},
taker_pays: 
"8449989"
},
{
flags: 
131072,
quality: 
"360.050003095528",
seq: 
79063979,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"27763.40206653968"
},
taker_pays: 
"9996213"
},
{
flags: 
131072,
quality: 
"365.6200005207791",
seq: 
79063809,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"76808"
},
taker_pays: 
"28082541"
},
{
flags: 
131072,
quality: 
"418.8699933595712",
seq: 
79063291,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"61743"
},
taker_pays: 
"25862290"
},
{
flags: 
131072,
quality: 
"428.5000071991131",
seq: 
79063282,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"69453"
},
taker_pays: 
"29760611"
},
{
flags: 
131072,
quality: 
"411.3800075483906",
seq: 
79063297,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"37094"
},
taker_pays: 
"15259730"
},
{
flags: 
131072,
quality: 
"372.2799975421295",
seq: 
79063683,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"65097"
},
taker_pays: 
"24234311"
},
{
flags: 
131072,
quality: 
"358.7899935047569",
seq: 
79064478,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"52346"
},
taker_pays: 
"18781221"
},
{
flags: 
131072,
quality: 
"366.5399970705782",
seq: 
79063739,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"47791"
},
taker_pays: 
"17517313"
},
{
flags: 
131072,
quality: 
"423.1499906722219",
seq: 
79063287,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"32162"
},
taker_pays: 
"13609350"
},
{
flags: 
131072,
quality: 
"408.1699899101523",
seq: 
79063300,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"20813"
},
taker_pays: 
"8495242"
},
{
flags: 
131072,
quality: 
"407.1000027390507",
seq: 
79063301,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"45413.84641515395"
},
taker_pays: 
"18487977"
},
{
flags: 
131072,
quality: 
"425.2900010763104",
seq: 
79063285,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"46455"
},
taker_pays: 
"19756847"
},
{
flags: 
131072,
quality: 
"421.0100088261254",
seq: 
79063289,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"56650"
},
taker_pays: 
"23850217"
},
{
flags: 
131072,
quality: 
"413.52",
seq: 
79063295,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"68925"
},
taker_pays: 
"28501866"
},
{
flags: 
131072,
quality: 
"409.2400050913257",
seq: 
79063299,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"78565"
},
taker_pays: 
"32151941"
},
{
flags: 
131072,
quality: 
"416.7299934355792",
seq: 
79063292,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"33514"
},
taker_pays: 
"13966289"
},
{
flags: 
131072,
quality: 
"373.2200123709378",
seq: 
79063682,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"21017"
},
taker_pays: 
"7843965"
},
{
flags: 
131072,
quality: 
"472.7999933898502",
seq: 
79061251,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"60513"
},
taker_pays: 
"28610546"
},
{
flags: 
131072,
quality: 
"410.3099894966929",
seq: 
79063298,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"35227"
},
taker_pays: 
"14453990"
},
{
flags: 
131072,
quality: 
"419.9399967540748",
seq: 
79063290,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"86262"
},
taker_pays: 
"36224864"
},
{
flags: 
131072,
quality: 
"322.9899896145858",
seq: 
79064987,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"34664"
},
taker_pays: 
"11196125"
},
{
flags: 
131072,
quality: 
"327.3199911543565",
seq: 
79064923,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"10116.3"
},
taker_pays: 
"3311267"
},
{
flags: 
131072,
quality: 
"339.1499962650333",
seq: 
79064611,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"0.016190728"
},
taker_pays: 
"4"
},
{
flags: 
131072,
quality: 
"317.6700048362174",
seq: 
79065074,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"84777"
},
taker_pays: 
"26931110"
},
{
flags: 
131072,
quality: 
"334.0300082821318",
seq: 
79064748,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"51919"
},
taker_pays: 
"17342504"
},
{
flags: 
131072,
quality: 
"335.2",
seq: 
79064721,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"69935"
},
taker_pays: 
"23442212"
},
{
flags: 
131072,
quality: 
"318.4700041266894",
seq: 
79065073,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"38772"
},
taker_pays: 
"12347719"
},
{
flags: 
131072,
quality: 
"320.8699846722568",
seq: 
79065070,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"22182"
},
taker_pays: 
"7117538"
},
{
flags: 
131072,
quality: 
"325.7600032399158",
seq: 
79064980,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"61730"
},
taker_pays: 
"20109165"
},
{
flags: 
131072,
quality: 
"332.2899998666116",
seq: 
79064912,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"74969"
},
taker_pays: 
"24911449"
},
{
flags: 
131072,
quality: 
"322.180007793433",
seq: 
79064988,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"48759"
},
taker_pays: 
"15709175"
},
{
flags: 
131072,
quality: 
"324.9400004652029",
seq: 
79064981,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"85984"
},
taker_pays: 
"27939641"
},
{
flags: 
131072,
quality: 
"330.6299967525941",
seq: 
79064914,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"64667"
},
taker_pays: 
"21380850"
},
{
flags: 
131072,
quality: 
"320.07",
seq: 
79065071,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"65100"
},
taker_pays: 
"20836557"
},
{
flags: 
131072,
quality: 
"324.12",
seq: 
79064982,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"72525"
},
taker_pays: 
"23506803"
},
{
flags: 
131072,
quality: 
"329.8000080423026",
seq: 
79064915,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"49737"
},
taker_pays: 
"16403263"
},
{
flags: 
131072,
quality: 
"331.459995385562",
seq: 
79064913,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"78016"
},
taker_pays: 
"25859183"
},
{
flags: 
131072,
quality: 
"319.2699948767576",
seq: 
79065072,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"52701"
},
taker_pays: 
"16825848"
},
{
flags: 
131072,
quality: 
"328.969994167847",
seq: 
79064916,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"84017"
},
taker_pays: 
"27639072"
},
{
flags: 
131072,
quality: 
"338.1300045245195",
seq: 
79064674,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"86197"
},
taker_pays: 
"29145792"
},
{
flags: 
131072,
quality: 
"328.139992413706",
seq: 
79064917,
taker_gets: 
{
currency: 
"CSC",
issuer: 
"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
value: 
"2985.26"
},
taker_pays: 
"979583"
}
]```

@scottschurr
Copy link
Collaborator

@lathanbritz, thanks for the information on that recent blockage.

I have a unit test that is able to reproduce the last blockage that you reported (by rLtdxMMXPs21PYnnSiwm85EabdHDH4oVhi). I'm currently looking into how to prevent the source of that particular blockage.

When I get an opening I'll research this more recent blockage, since it may not have the same source as the older one that I'm currently looking at.

scottschurr added a commit to scottschurr/rippled that referenced this issue Apr 5, 2024
scottschurr added a commit to scottschurr/rippled that referenced this issue Apr 8, 2024
scottschurr added a commit to scottschurr/rippled that referenced this issue Apr 8, 2024
@scottschurr
Copy link
Collaborator

@shortthefomo, first the good news: I found the source of the problem for the USD/Bitstamp:XRP blockage that you reported earlier. I have a proposed fix (not yet a pull request), but that will of course need to go through code review.

Regarding the reported order book blockage in ledger 86,858,489 I have less good news. I analyzed the top-most 150 offers in the...

"TakerGets": "CSC"/"rCSCManTZ8ME9EoLrSHHYKW8PPwWMgkwr",
"TakerPays": "XRP"

order book in that ledger. That included the one you identified with TakerPays: "4" (that was offer 49). I don't see how any of those 150 offers could be blockers. I'm not saying you didn't see something funny with that order book. But I don't understand the nature of the symptom you were seeing.

All-in-all, however, it is forward progress to identify an additional source of order book blockage and find a fix for it. Thanks for the help.

@shortthefomo
Copy link
Author

shortthefomo commented Apr 18, 2024

Great news!

The symptoms that I see that makes it simple to spot is simply taking the first offers off ASK/BID books and then checking for a negative spread. If it's negative those books (ASK and BID) had an order that is "stuck".

That's how ive been identifying them, not sure if that information helps here.
Thank you for all the effort on this @scottschurr

If you want we can keep watching for cases, honestly not been looking to hard last while, maybe a few more examples is the right thing to do here and see if that may help shed some further light?

or another option is also simply to write a little script that iterates over the different pairs and looks for this negative spread. I don't think it would be to difficult to write something of that nature, see if I can find a gap todo that and then I will share that if you want?

scottschurr added a commit to scottschurr/rippled that referenced this issue May 21, 2024
scottschurr added a commit to scottschurr/rippled that referenced this issue May 21, 2024
scottschurr added a commit to scottschurr/rippled that referenced this issue May 31, 2024
scottschurr added a commit to scottschurr/rippled that referenced this issue May 31, 2024
seelabs pushed a commit that referenced this issue Jun 13, 2024
Fixes issue #4937.

The fixReducedOffersV1 amendment fixed certain forms of offer
modification that could lead to blocked order books.  Reduced
offers can block order books if the effective quality of the
reduced offer is worse than the quality of the original offer
(from the perspective of the taker). It turns out that, for
small values, the quality of the reduced offer can be
significantly affected by the rounding mode used during
scaling computations.

Issue #4937 identified an additional code path that modified
offers in a way that could lead to blocked order books.  This
commit changes the rounding in that newly located code path so
the quality of the modified offer is never worse than the
quality of the offer as it was originally placed.

It is possible that additional ways of producing blocking
offers will come to light.  Therefore there may be a future
need for a V3 amendment.
@intelliot
Copy link
Collaborator

this is expected to be fixed by fixReducedOffersV2, introduced in 2.3.0-b1

feel free to re-open this issue if more needs to be done

@intelliot intelliot added this to the 2.3.0 (August 2024) milestone Jul 1, 2024
vlntb pushed a commit to vlntb/rippled that referenced this issue Aug 23, 2024
…5032)

Fixes issue XRPLF#4937.

The fixReducedOffersV1 amendment fixed certain forms of offer
modification that could lead to blocked order books.  Reduced
offers can block order books if the effective quality of the
reduced offer is worse than the quality of the original offer
(from the perspective of the taker). It turns out that, for
small values, the quality of the reduced offer can be
significantly affected by the rounding mode used during
scaling computations.

Issue XRPLF#4937 identified an additional code path that modified
offers in a way that could lead to blocked order books.  This
commit changes the rounding in that newly located code path so
the quality of the modified offer is never worse than the
quality of the offer as it was originally placed.

It is possible that additional ways of producing blocking
offers will come to light.  Therefore there may be a future
need for a V3 amendment.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants