public <DB extends ODatabase> DB open(final String iUserName, final String iUserPassword) {
setCurrentDatabaseinThreadLocal();
try {
super.open(iUserName, iUserPassword);
ORecordSerializerFactory serializerFactory = ORecordSerializerFactory.instance();
String serializeName = getStorage().getConfiguration().getRecordSerializer();
if (serializeName == null)
serializeName = ORecordSerializerSchemaAware2CSV.NAME;
serializer = serializerFactory.getFormat(serializeName);
if (serializer == null)
throw new ODatabaseException("RecordSerializer with name '" + serializeName + "' not found ");
if (getStorage().getConfiguration().getRecordSerializerVersion() > serializer.getMinSupportedVersion())
// TODO: I need a better message!
throw new ODatabaseException("Persistent record serializer version is not support by the current implementation");