# Performance core principles: 13. Miscellaneous

**URL:** <https://the.fmsoup.org/t/performance-core-principles-13-miscellaneous/1874>\
**Category:** NickLightbody's\
**Created:** [March 10, 2021, 3:55pm UTC](https://the.fmsoup.org/t/performance-core-principles-13-miscellaneous/1874 "2021-03-10T15:55:27Z")\
**Posts on this page:** 1\
**Showing post:** 14

<div class="post-metadata">

**Author:** ![mipiano](https://yyz2.discourse-cdn.com/flex030/user_avatar/the.fmsoup.org/mipiano/32/1074_2.png) [@mipiano](https://the.fmsoup.org/u/mipiano)\
**Post date:** [March 14, 2021, 7:08pm UTC](https://the.fmsoup.org/t/performance-core-principles-13-miscellaneous/1874/14 "2021-03-14T19:08:38Z")

</div>

@Bobino Oh, dear - I really wasn't thinking far enough. I was so busy trying to understand the concept of nested sets that I didn't think about transactions at all. Of course, that makes my question superfluous, since no record is blocked long enough.After all, if I catch an error, I can just try the commit again a second later until it works.

I use transactions almost everywhere. Not only for data integrity, but also for a better user experience. I've often observed that users struggle with remembering to click outside of a field to save the input. That's why I generally prevent accidental comitting. The action is always completed by clicking a done or save button. That way the users understand what’s happening.

So - thank you for opening my eyes!

* * *

I am very interested in this nested set model because I want to use a tree structure in an app. Unfortunately, I haven't found a tree structure yet that was fast enough when opening or closing nodes when dealing with more than - let's say - a few hundred records.

---

_[View the full topic](https://the.fmsoup.org/t/performance-core-principles-13-miscellaneous/1874)._
