bitfocus / companion

Bitfocus Companion enables the reasonably priced Elgato Stream Deck and other controllers to be a professional shotbox surface for an increasing amount of different presentation switchers, video playback software and broadcast equipment.
http://bitfocus.io/companion
Other
1.61k stars 503 forks source link

[BUG] Log error Data Database invalid string length #2980

Open LikeThisReview opened 2 months ago

LikeThisReview commented 2 months ago

Is this a bug in companion itself or a module?

Is there an existing issue for this?

Describe the bug

Cannot import a 16x8 page with 64+ buttons with approximately 15 PNGs per button. When copy-paste each button to another page the log error "Data Database invalid string length" appears (slowly, delayed) after pasting 54 buttons. The PNGs are in Feedback Boolean expression, for example with expression includes($(atem:still_1), "ParkS"). When I remove all of these feedbacks from button 40-64 I can export and import the page without issues. Note. I use Atem Mini Pro (max 20 stills) but configuring it for 4 M/E Constellation (64 stills).

Steps To Reproduce

  1. Add a button with 15x Feedback boolean expression in order to load PNG based on its file name from atem Media Pool
  2. Do this for still 1 - still 64
  3. Export the page
  4. Import the page to another page

Expected Behavior

No errors; able to import pages

Environment (please complete the following information)

- OS: MacOS latest
- Browser: Safari
- Companion Version: 3.3.1

Additional context

Tanks, Regards, Nico Wasmus

Julusian commented 2 months ago

how big are these images? This error sounds like your database has hit the max string length. Im curious how big your db file is when you see this, as well as the file you are trying to import

LikeThisReview commented 2 months ago

Hi Julian, Most image are under 1 MB, a couple of images are between 5 and 15 MB. DB is 25.2 MB (same for bak), after removing image for still 41-64.

Regards, Nico

On Tue, 13 Aug 2024 at 16:40, Julian Waller @.***> wrote:

how big are these images? This error sounds like your database has hit the max string length. Im curious how big your db file is when you are seeing this

— Reply to this email directly, view it on GitHub https://github.com/bitfocus/companion/issues/2980#issuecomment-2286426205, or unsubscribe https://github.com/notifications/unsubscribe-auth/A25NECFAOO6PBXANUL7S3CLZRILD7AVCNFSM6AAAAABMONPUI6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBWGQZDMMRQGU . You are receiving this because you authored the thread.Message ID: @.***>

krocheck commented 1 month ago

@Julusian could this be mitigated if we had a separate database of images and used UUID keys to link over to them from the main DB?

Julusian commented 2 weeks ago

This should be fixed in the betas by #3045

It could still happen with exports (particularly full exports). @krocheck do you think we should look at doing something there? I'm not sure that making exports be sqlite would be a good idea, but we could make the 'compressed' export contain a folder of files, matching the same structure?