simulateTransaction
incorrectly throws TooManyAccountLocks
for <64 writeable accounts
#35607
Labels
community
Community contribution
Problem
When calling
simulateTransaction
on the RPC with the following transaction:link to explorer decoder
Base64 encoded transaction
``` AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAGFNYX0rw+7O0dTMB/aa1fmDOpALmL4/9w50HSETI9shDjAiI/7Y56lOk7JTFV6nP0jkTGNnq5kbZUzx7EbfJD45MKBSRBoVhOV4xwBfanvh4FdBl3V3APJBkA8l9K/YoZzjIUEyiDHFNT5T4auHCEgG6EsBQkp7plq7elRGqA+a7sUD+C+4aCaehYkQ8baPbLQLInHbwSrVJAf0UZerdMZlhd+Fpi3a/C7y3gYqbv5eFboXM2psPs5aLjqdyOevltB7NM8WMzAdVUi9nR3dMANk+KC3MhCV1uhJHgjlOVjulSyr1KkSkX9GpSrKiU7fJOCsu2DYLt4vagt9DLYnj6n67PS4DyA1jYP5gzyG1IrvS3nm9mbOy/KxZ0Vc4O5ogr2tjsOykpX5AcEiQItwQ7tjphi4hmQL46YZlajNSbRzVm4vh36D2uxoiPQ6u1rnsxG7eMNJYIl/zlp7gsFuIP8ZfjF/hRzvPoAY8HlWu/mzxAqS+DIGpD4FGL1EbR08x3E+YqX+8UUh76h8HsflPRPRAiCqHs9Gw4V+zFylYGa2xz/oy6HaKO3uGQxwVCyV4Prhb6HjCGoEtsNkv1ChySOKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAABHnVW/IxwG7udMVuzmgVB/2xst6j9I5RArHNola8E48G3fbh12Whk9nL4UbO63msHLSF7V9bN5E6jPWFfv8AqYyXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZtD/6J/XX9kp0wJsfKVh53ksJqzbfyd1RSzIap7OM5ejRzRl/OXbKgMBDUTS3/N18Ov6J3oJUd2K4TEvEP/wHqAUPAAUCwFwVAA8ACQMEFwEAAAAAABIGAAEAMA4RAQEQWxEKAAkMAgEoMAUQExA9ChoIDCgrEREpLCo8PiMvQDs/EDQKCAsaIAQ1JB04AzYHMjEOLyMfNyEeMhExDhAKCwYlJy8ZHDo5JiIbMjMRMRAtEQoYAhYGFA0XFS42wSCbM0HWnIEAAwAAAC0FDgAAAGQAASmTTz/OZAECEQBkAgOhvK4YAAAAALwEux0AAAAAyABkEQMBAAABCQNREEsOBGMgQ6HsjokUUSu2bH+vi+a2j78nxGN7N1Yw2wVSVlhVUAJRVLjeLC+t65HwGFikMB4IWyg7TP0aNKGwbkc+O6aSiGfvDxqcpB4KpykwrSshECSsogwFuRILNwIDFaANn6m2boVb8pPLR4H70c4jd1LpwBMhb7xo5R9F4QlutoGx/gVIGDG7BwZDxtV1WA4= ```
It will incorrectly throw
TooManyAccountLocks
for a transaction with <64 writeable accounts but > 64 accounts in the LUT.solana/sdk/src/transaction/sanitized.rs
Line 268 in 27eff84
Proposed Solution
Actually check if the accounts are marked writeable when comparing with lock limit?
The text was updated successfully, but these errors were encountered: