Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Issue

I am receiving the following error message, while trying to load an A2L file.

Code Block
languagepy
tts.core.dataViewer.DataManager.__UpdateApplicationObject: (sqlite3.DatabaseError) database disk image is malformed
[SQL: INSERT INTO coding_items (name, base_data_type, byte_order, bit_length, parent_file, long_identifier) VALUES (?, ?, ?, ?, ?, ?)]
[parameters: ('ECU_VALUE_NAME', 'FLOAT', -1, 0, 15, None)]
(Background on this error at: http://sqlalche.me/e/4xp6)

Error when parsing the A2L file (ECU: SOME_ECU_NAME): (sqlite3.DatabaseError) database disk image is malformed
[SQL: INSERT INTO coding_items (name, base_data_type, byte_order, bit_length, parent_file, long_identifier) VALUES (?, ?, ?, ?, ?, ?)]
[parameters: ('ECU_VALUE_NAME', 'FLOAT', -1, 0, 15, None)]
(Background on this error at: http://sqlalche.me/e/4xp6)

ecu.test_err.log:

Code Block
languagepy
Traceback (most recent call last):
  File ".\Lib\site-packages\sqlalchemy\engine\base.py", line 1249, in _execute_context
  File ".\Lib\site-packages\sqlalchemy\engine\default.py", line 580, in do_execute
sqlite3.DatabaseError: database disk image is malformed
                        
The above exception was the direct cause of the following exception:
                        
Traceback (most recent call last):
  File "tts\core\dataViewer\DataManager.py", line 250, in __UpdateApplicationObject
  File "tts\testModule\measCalib\DoA2l.py", line 67, in QueryA2lData
  File "tts\testModule\measCalib\DoA2l.py", line 148, in __GetA2lDataByParsing
  File "tts\testModule\measCalib\parser\a2l\A2lLoader.py", line 46, in Parse
  File "tts\testModule\measCalib\parser\a2l\A2lLoader.py", line 171, in __ParseFile
  File "tts\testModule\measCalib\parser\a2l\A2lLoader.py", line 400, in ProcessLine
  File "tts\core\dataViewer\DBAccess.py", line 442, in InsertToDb
  File "tts\core\dataViewer\DBAccess.py", line 436, in CommitChanges
  File ".\Lib\site-packages\sqlalchemy\orm\session.py", line 1027, in commit
  File ".\Lib\site-packages\sqlalchemy\orm\session.py", line 494, in commit
  File ".\Lib\site-packages\sqlalchemy\orm\session.py", line 473, in _prepare_impl
  File ".\Lib\site-packages\sqlalchemy\orm\session.py", line 2470, in flush
  File ".\Lib\site-packages\sqlalchemy\orm\session.py", line 2608, in _flush
  File ".\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 68, in __exit__
  File ".\Lib\site-packages\sqlalchemy\util\compat.py", line 153, in reraise
  File ".\Lib\site-packages\sqlalchemy\orm\session.py", line 2568, in _flush
  File ".\Lib\site-packages\sqlalchemy\orm\unitofwork.py", line 419, in execute
  File ".\Lib\site-packages\sqlalchemy\orm\unitofwork.py", line 521, in execute_aggregate
  File ".\Lib\site-packages\sqlalchemy\orm\unitofwork.py", line 589, in execute
  File ".\Lib\site-packages\sqlalchemy\orm\persistence.py", line 245, in save_obj
  File ".\Lib\site-packages\sqlalchemy\orm\persistence.py", line 1137, in _emit_insert_statements
  File ".\Lib\site-packages\sqlalchemy\engine\base.py", line 988, in execute
  File ".\Lib\site-packages\sqlalchemy\sql\elements.py", line 287, in _execute_on_connection
  File ".\Lib\site-packages\sqlalchemy\engine\base.py", line 1107, in _execute_clauseelement
  File ".\Lib\site-packages\sqlalchemy\engine\base.py", line 1253, in _execute_context
  File ".\Lib\site-packages\sqlalchemy\engine\base.py", line 1473, in _handle_dbapi_exception
  File ".\Lib\site-packages\sqlalchemy\util\compat.py", line 398, in raise_from_cause
  File ".\Lib\site-packages\sqlalchemy\util\compat.py", line 152, in reraise
  File ".\Lib\site-packages\sqlalchemy\engine\base.py", line 1249, in _execute_context
  File ".\Lib\site-packages\sqlalchemy\engine\default.py", line 580, in do_execute
sqlalchemy.exc.DatabaseError: (sqlite3.DatabaseError) database disk image is malformed
SQL: INSERT INTO coding_items (name, base_data_type, byte_order, bit_length, parent_file, long_identifier) VALUES (?, ?, ?, ?, ?, ?)]
[parameters: ('ECU_VALUE_NAME', 'FLOAT', -1, 0, 15, None)]
(Background on this error at: http://sqlalche.me/e/4xp6)

Solution

The database is corrupted. In order to solve this you need to delete the A2L cache on your system.

Please navigate to the following path (C:\Users\USER\AppData\Roaming\TraceTronic\) and look into the subfolder of your respective ecu.test version.

...

Inside you find data_cache_a2l.sdb.

Delete this file and try to start the configuration in ecu.test again.