I do and have experienced no problems.
I don’t know if the order is guaranteed, but in practice I’ve never had it save in a different order. New stuff gets appended to the end.
If you go down this path, it might be worth filing a feature request issue to add in a guarantee of order when the DB gets saved.
Wait until OH 3.0 Beta comes out before spending a lot of time on anything. Lots of stuff is changing with OH 3 and I fear any effort you spend now will have to reworked significantly when OH 3 comes out. One of the biggest changes is that PaperUI is being completely replaced with a brand new UI which I’m certain will be much more user friendly.
Items don’t bother me too much, but when OH 3 comes out I plan on migrating them all to JSONDB. Yannick has written already an importer that will take .items file configs and import them into JSONDB. On another project I used a very early prototype of that feature to import around 40 Items from .items files to JSONDB. It took all of two minutes. I believe there is a similar tool done or at least in work to do the same for .things files.
.things files bother me a lot, mostly because even though I refuse to do more than the barest minimum to provide support for them on this forum, syntax errors and ignorance over what the fields are consumes far too much of my overall support time on this forum. I’m not saying using PaperUI is perfect, but at least all the fields are apparent and it’s almost impossible to create a Thing with syntax errors.
No because all of my Things are in JSONDB and all of my Items are in .items files. I might start to experience similar problem if I decided to migrate my Rules to JSONDB before OH 3 comes out as not everything I need (mainly triggers) are supported right now with JSONDB Rules.
All Things go in JSONDB. All my Items will go into JSONDB when OH 3 is released (there are a couple of things to do with metadata that makes it more convenient for now to keep Items in .items files. When OH 3 comes out, all of my Rules will go into JSONDB along with anything else that is made available (sitemaps, persistence, etc).
As part of some work I did on the HestiaPi, which is a thermostat running openHAB on an RPi W 0, I migrated the config from a 100% text based config to a 100% JSONDB based config. The improvements in performance, flexibility, and usability were huge. For one metric, moving the configs to JSONDB took it from a 25-30 minute boot time to around 10 minutes. That’s still a long time but it’s an RPi 0, not exactly supported hardware.
It’s worth mention that whether or not the JSONDB files get saved with in the same order, this is still possible. What you lose if they get saved in different order is the ability to easily see what actually changed when a file gets checked in, which is a big deal.
Anyway, my conclusion is that I would try to get the JSONDB configured so it guarantees order when it saves, if possible and move everything to JSONDB by filing an issue. If that isn’t possible because it’s too much work or the devs don’t want to do it, I’ll still use JSONDB for everything. The stability and speed it provides over text based configs are well worth losing the ability to easily see what changed in the JSON files in git (and in my experience I’ve not actually seen it save in different orders in practice). I don’t have anything like Modbus with the concerns that rossko57 mentions but my hope is that the new UIs will make managing those much easier.
I’ll also mention that I came to this conclusion slowly. I started out as “all things much be in text files!” and gradually adopted to “all Things much be in JSONDB, everything else in text files!” But after moving Rules and all from text files to JSONDB for HestiaPi I am a full up JSONDB convert. Granted, the benefits are probably exaggerated on an RPi 0, but the benefits were really large and surprising.