Debug (dev) tool crash the app on load

I can't have debug tool enabled in one of my apps, it will crash the whole retool app on loading my app. If I had open recent app enabled, that would lead to a crash loop, only option then is wipe Retool App data.

Clues

The debug tool do work on other apps, so it's something inside my app.

My app works fine 100% in the IDE with no error in console. 95% of the time on Samsung Fold, with some odd behavior that would go away if close the whole Retool app and reload.

I do notice switching page on bottom nav tab sometimes slow on device, takes 2-3s, but almost instant in the IDE. It's not query loading time as they are cached and load on start.

Tested on a few other Samsung, same slowness, same dev tool crash, so it's extremely unlikely to be CPU power or device related

I thought it was lodash, but I went and removed most of lodash code, no improvement. There might be a few lodash used in {{}} which are very hard to find now, but everything does work as expected.

Would someone be able to point some direction where to start looking? I know it's not much error description to go by, but I really can't provide any more info without debug tool working....

Here's the performance page in IDE that might give some sense of scale

Here's the linting page, 99% of them is because I have a lot conditional show/hire or default value that depends on query or field input that only get value on certain page load.

Can you share a video of the crash? I'd like to see if the crash happens on a particular interaction, when a particular query fires, etc. And also if it happens immediately on app start or at some other time.

I had lodash code completely replaced, but made no difference.

In my testing, I did run into a couple times where some console is logged before crashing

You can implement custom pagination with manual "previous" and "next" buttons, but unfortunately infinite scroll isn't supported yet.

I'll look into this 16KB crash, that's very odd! Is it possible you're printing out the entire object to the debug console?

not sure if this help. I tried with image object deleted, still crashes

@rxunique Can you share a screenshot of your CustomCollectionView children? My current hypothesis is there's too many Android Views being created (e.g. 50 views per row, times 80 rows, that would be too much).

Example:

You mean setting of each of the children?

I made some progress, removed both image & icon, leave text only, no crash.

Now testing exactly which one it was

Side question.

I'm using release and version in this app.

On device, can I, as super admin, choose to load latest versions? Rather then published live version

Not the settings of each child, just the overall structure of the child components of the CustomCollectionView. Like the image I posted above.

Sadly we don't support viewing specific versions yet!

oh, here

image

Had to go into a meeting now.

but I did drill it down to container19+icon

just deleting icon still crash

delete both works fine

1 Like

Can you share the settings pane for container16 and container19?

Also, can you share the settings pane for the icon2 component?

Also sent you an email since it may contain PII.

In my case, it was the excessive container in custom collection causing dev tool to crash. The underlying logic is above my pay grade.

There were about 80 rows, 1 parent + 3 child containers -> 320 in total

I deleted 2 of the 3 child containers in custom collection, keep original image and icon component. Everything works now.

Hope this helps others who might run into such edge case

1 Like

So memory issue ? leak or run out available.
I have [custom collection] a [container] 3 [container rows]
1st row [text]
2nd row can have two [ [icons] + [text] ]
3rd row has 3 [ [containers] + [text] ]

I'm only bring back max 20+ rows so I don't think it's [container] depth related

Unlikely, I tested both on Samsung flagship and mid range phone. Performance felt the same. Having said that, I never done android dev, no idea even how to diagnose.

Also there wasn't depth change

Parent + 3 child + dev tool -> crash
Parent + 1 child + dev tool -> all good