Hi, i've a question about the 'correct' way to do the memory management for results in the database modules.
At the moment there existing two different styles: mysql, unixodbc don't allocate new memory and just assign the string pointer of the result set to the internal OpenSER representation. The modules that needs to use this results needs to copy them, because there are not available after a call to the DB specific result free function. postgres, db_berkeley allocate new memory and copy all string values from the database to the internal representation. Modules that uses this driver don't need to copy there values, even after the freeing of the result set. As mysql is the most used database, (i assume) that every module copy the values from the result set after the query execution. This is unnecessary for the postgres DB, and further prevents me from using only one memory management function for the internal representation of the DB structures. As we have many more modules than database connectors in the code, i think it would make more sense to change the postgres and db_berkeley module to match the behaviour of the mysql module. Any comments? Henning _______________________________________________ Devel mailing list Devel@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/devel