
Solana націлена на 9 вересня для запуску Транзакції v1, нового формату, який збільшує максимальний розмір серіалізованої транзакції з 1232 байтів до 4096 байтів.
Збільшення надає розробникам приблизно в 3,3 рази більше простору для транзакцій. Офіційна дорожня карта Solana стверджує, що додаткова ємність може вміщувати докази з нульовим розголошенням, великі мультипідписні операції, пакети та деякі ончейн схеми підпису.
Великі операції раніше доводилося розділяти на кілька транзакцій, коли їхні інструкції, підписи та інформація про облікові записи перевищували межу в 1232 байти. Цей процес ускладнював роботу, оскільки одна транзакція могла бути успішною, тоді як інший крок міг зазнати невдачі.
Транзакція v1 може дозволити розробникам об'єднати більше цих інструкцій в одну атомарну операцію. Або кожна інструкція є успішною, або вся транзакція зазнає невдачі. Ця модель може бути корисною для торгових маршрутів, конфіденційних переказів, крос-чейн операцій та додатків, що обробляють складні криптографічні докази.
Оновлення не збільшує ліміт Solana на 64 посилальні облікові записи на транзакцію. Додатки можуть включати більше даних та інструкцій, але вони не можуть автоматично взаємодіяти з більшою кількістю облікових записів.
Транзакція v1 є необов'язковою. Гаманці та додатки можуть продовжувати надсилати застарілі та v0 транзакції в межах існуючого ліміту в 1232 байти. Користувачам не потрібно мігрувати токени, обмінювати SOL або завершувати запит перед активацією.
Розробники повинні свідомо прийняти новий формат, щоб отримати доступ до його більшої ємності. Документація Solana ідентифікує три підтримувані формати: застарілий, v0 та v1. Кожен формат по-різному організовує адреси облікових записів та ліміти ресурсів.
Формат v0 використовує таблиці пошуку адрес, або ALTs, для представлення адрес облікових записів за допомогою стиснених однобайтових індексів. V1 видаляє ALTs і розміщує повні 32-байтові адреси облікових записів безпосередньо всередині транзакції.
Це створює компроміс. V1 надає більший загальний простір, але додатки, які сильно залежать від таблиць пошуку, можуть витрачати більше байтів на представлення тих самих облікових записів. Технічний аналіз Solana виявив, що 90% вибіркових транзакцій додали б менше 1400 байтів при конвертації з v0 у v1.
Основний ризик сумісності стосується сервісів, які читають блоки та транзакції. Провайдери віддаленого виклику процедур повинні встановити максимальну підтримувану версію транзакції на одиницю. В іншому випадку запити можуть завершитися невдачею, коли вони зіткнуться з транзакцією v1.
Індексатори, оглядачі та аналітичні сервіси також повинні змінити спосіб отримання лімітів ресурсів. Застарілі та v0 транзакції розміщують ліміти обчислень та налаштування пріоритетної комісії в інструкціях ComputeBudget. V1 зберігає їх у спеціальній конфігурації транзакції.
Застарілі сервіси можуть, отже, відображати некоректну інформацію. Наприклад, оглядач може показувати нульову пріоритетну комісію, хоча користувач її сплатив. Спонсори комісій та додатки, які перевіряють ліміти транзакцій, повинні читати нову конфігурацію, а не сканувати інструкції старого зразка.
Додатки, що надсилають транзакції v1, повинні явно встановлювати ліміти обчислювальних одиниць (compute-unit) та завантажених даних (loaded-data), оскільки обидва за замовчуванням дорівнюють нулю. Розробники повинні протестувати створення транзакцій, підпис та декодування, перш ніж переводити виробничий трафік на цей формат.
Віцепрезидент з технологій Solana Foundation Джейкоб Кріч (Jacob Creech) назвав 9 вересня запланованою датою мейннету. Як раніше повідомляло crypto.news, оновлення включено в розгортання Anza Agave 4.2.
Однак офіційна дорожня карта все ще позначає функцію мейннету як «не активовану». Вона також зазначає, що розклад випуску Anza є «орієнтовним і може змінюватися». Тестнет і девнет вже активували цю функцію, згідно з останньою сторінкою статусу Фонду.
Збільшення розміру походить від SIMD-0296, тоді як SIMD-0385 визначає формат v1. Джейкоб Кріч та Ендрю Фіцджеральд є співавторами обох пропозицій.
Стеля у 4096 байтів була обрана частково тому, що чотири кілобайти відповідають поширеному розміру сторінки пам'яті, що використовується обладнанням валідаторів. Більші транзакції також споживатимуть додаткову пропускну здатність, хоча оновлення не передбачає окремої плати за байт.
Транзакція v1 залишається окремою від знижень ренти Solana, коротших цілей слотів та переробки консенсусу Alpenglow. У пов'язаному матеріалі crypto.news повідомляло, що Alpenglow націлений на приблизно 150-мілісекундну завершеність, при цьому жовтень залишається метою розробки, а не гарантованою датою активації.





