Years ago I wrote the MySQL class for a database abstraction layer and took over maintenance of the abstraction layer. Never again will I try to maintain such a layer. WAY too many changes by DB vendors, especially Microsoft.
I'm curious how well it's worked for Moodle. In hindsight, has leaving behind ADODB, instead writing and maintaining a separate DB abstraction layer been worth it? As compared to contributing fix to ADODB, I mean. I'm just curious if the people who did that work are glad and would do it again (and keep maintaining it) if you knew then what you know now.