You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
async def _get_new_tx_records_from_old(self, old_records: List[TransactionRecordOld]) -> List[TransactionRecord]:
async with self.db_wrapper.reader_no_transaction() as conn:
cursor = await conn.execute(
f"SELECT txid, valid_times from tx_times WHERE txid IN ({','.join('?' * len(old_records))})",
tuple(tx.name for tx in old_records),
)
valid_times: Dict[bytes32, ConditionValidTimes] = {
bytes32(res[0]): ConditionValidTimes.from_bytes(res[1]) for res in await cursor.fetchall()
}
await cursor.close()
return [
TransactionRecord(
valid_times=valid_times[record.name] if record.name in valid_times else ConditionValidTimes(),
spend_bundle=record.spend_bundle,
**{k: v for k, v in dataclasses.asdict(record).items() if k != "spend_bundle"},
)
for record in old_records
]
Version
2.1.0
What platform are you using?
Windows
What ui mode are you using?
GUI
Relevant log output
2023-10-11T21:58:19.839 wallet chia.wallet.wallet_node : ERROR Exception while perform_atomic_rollback: too many SQL variables Traceback (most recent call last):
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\chia\wallet\wallet_node.py", line 708, in perform_atomic_rollback
removed_wallet_ids = await self.wallet_state_manager.reorg_rollback(fork_height)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\chia\wallet\wallet_state_manager.py", line 2099, in reorg_rollback
reorged: List[TransactionRecord] = await self.tx_store.get_transaction_above(height)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\chia\wallet\wallet_transaction_store.py", line 402, in get_transaction_above
return await self._get_new_tx_records_from_old([TransactionRecordOld.from_bytes(row[0]) forrowin rows])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\chia\wallet\wallet_transaction_store.py", line 432, in _get_new_tx_records_from_old
cursor = await conn.execute(
^^^^^^^^^^^^^^^^^^^
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\venv\Lib\site-packages\aiosqlite\core.py", line 190, in execute
cursor = await self._execute(self._conn.execute, sql, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\venv\Lib\site-packages\aiosqlite\core.py", line 133, in _execute
return await future
^^^^^^^^^^^^
File "C:\Chia\chia-blockchain-2.1.0.Official\chia-blockchain\venv\Lib\site-packages\aiosqlite\core.py", line 106, in run
result = function()
^^^^^^^^^^
sqlite3.OperationalError: too many SQL variables
The text was updated successfully, but these errors were encountered:
What happened?
Fail to resync the wallet.
if old_records is too long, the sql error
Version
2.1.0
What platform are you using?
Windows
What ui mode are you using?
GUI
Relevant log output
The text was updated successfully, but these errors were encountered: