StandardCacheEntryImpl calls TypeHelper.disassemble which causes the freshly converted (converttoEntityAttribute) attribute again to be converted the other way round (convertToDatabaseColumn) to use this value to fill the cache (??) . If this conversion is slow this is a problem. This is processed within a one query.list() call. It would be nice if there was a way to suppress this forward and backward conversion that slows processing down a lot. It would be really helpful if I could instead cache the Entityattribute and not the Databaseattribute as then I would get rid of all the conversions when working from cache. Or do I get the reason for this forward backward conversion wrong? It ends up to be in AttributeConverterMutabilityPlan.deepCopyNotNull(). There I can see the convertToDatabaseColumn() method to be called immediately followed by a call to converttoEntityAttribute(). If I somehow could switch this off my application would be several orders of magnitude faster. What is this for? |
|