I got you!
And rname seems to work according to what you say except in case of Postgres because I guess it more strictly adherence to SQL standard or because the rname has to take into account thie peculiar behavior or postgres where you need to double quote table/fields name to get proper case sensitive names...
I would say that the rname feature should out of the box pass to the adapter or driver, it not clear to me which one or if both, the entity_quoting=True and ignore_field_case=False flags so the API work consistently for all the backend... Meaning entity_quoting=True and ignore_field_case=False are only intent to be used to "tamper" with pydal table/field name the one use in the backend and the python code so they get properly translate with the proper casing to the backend database.
I had look at the code last night I can't figure it out where I should pass the quoting and case flag to the rname feature so for postgres specifically we resolve the actual issue...
There might also be a MSSQL specific issue because I recall that even if pydal were creating model with proper cases in SQL server it was throwing error once you try to insert stuff complaining that entity in lower cases wasn't exist, but I am not sure with all the tests I had been doing...
Thanks a lot for your insight Simone, I miss seeing you around :D
Richard