I have a Spring Boot test running against an H2. I modify a number(2) and a date column during my test.
When I run hasModifiedColumns(...) on my change, it always fails, because it thinks a BLOB column was also modified.
When I check the BLOB column with columnAmongTheModifiedOnes(...).hasValues(start, end) it says that end and start are the same.
I think the issues is, that Changes.getIndexesOfModifiedColumns() uses normal Object equals on every value (!objectAtStartPoint.equals(objectAtEndPoint))). This does not work for byte arrays.
The implementation in the Values class Values.areEqual(Value value, Object expected) on the other hand seems to be correct.
I have a Spring Boot test running against an H2. I modify a number(2) and a date column during my test.
When I run
hasModifiedColumns(...)on my change, it always fails, because it thinks a BLOB column was also modified.When I check the BLOB column with
columnAmongTheModifiedOnes(...).hasValues(start, end)it says that end and start are the same.I think the issues is, that
Changes.getIndexesOfModifiedColumns()uses normal Object equals on every value (!objectAtStartPoint.equals(objectAtEndPoint))). This does not work for byte arrays.The implementation in the Values class
Values.areEqual(Value value, Object expected)on the other hand seems to be correct.