Getting very disenchanted with Wix

No autoincrement in your databases? Are you kidding me??

Have the guys who built the wix database stuff ever done database code before? Auto-increment is a must-have, and should have been one of the first features they added.

And please … no posts saying “Oh but you can add hooks in the backend to do that!” That’s just a workaround at best, and quite an obscure one. Back-end coding is virtually undocumented.

Hay Mike,

One of the first things that we learn when doing large scale database is that auto-increment fields should not be used. They impose a lock that prevents concurrent updates, as well as prevent active - active between data centers.

If you can share what you are trying to do, I am sure there is a simple way to do the same.

For instance, at Wix, we are using client side generated GUIDs instead of incremental numbers to preserve both uniqueness and scaling.

Hello Yoav,

Thanks for bothering to reply, to what was pretty much just a rant.

Well that’s certainly news to me. When I used to work in IT, using things like Oracle and Mysql, they would always auto-increment the ID column for new records.

What I need to do for a client, is in each member’s record (row), store a list of other members who they have allowed to access information of theirs.

I was planning on doing this by giving each member a unique, small integer which was a “member number”, and then having a field in each member record called access_list, which was a pipe-separated list
such as “17|2|254|33|67|8”.

When I needed to do access-control in the code, I can just split(‘|’) the access_list, and check whether member number of the member in question is in the list.

I could do the same thing using the _id field of member records, but those Wix-generated user-id’s are 36-character strings. I didn’t want to have potentially hundreds of 36-character strings separated by pipes in a very large text field, as my access_list.

Maybe I will just do that after all, unless you can suggest something better.

p.s. surely imposing a lock on a database for a matter of microseconds, while we auto-inc a field, can not be that detrimental.