Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
petrov-mg committed Mar 31, 2024
1 parent 30a8720 commit 965fb22
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -297,33 +297,25 @@ public BinaryObjectImpl detach(boolean checkCrossObjectReferences) {

int len = length();

byte[] detachedData;

int detachedObjStartPos;

if (checkCrossObjectReferences) {
BinaryHeapInputStream in = BinaryHeapInputStream.create(arr, start);

CrossObjectReferencesData crossObjReferencesData = CrossObjectReferenceDetector.collectCrossObjectReferencesData(in);

if (!crossObjReferencesData.isEmpty()) {
try (BinaryOutputStream out = new BinaryHeapOutputStream(2 * len)) {
detachedObjStartPos = CrossObjectReferenceResolver.resolveCrossObjectReferences(in, out, crossObjReferencesData);
int detachedObjStartPos = CrossObjectReferenceResolver.resolveCrossObjectReferences(in, out, crossObjReferencesData);

detachedData = out.arrayCopy();

return new BinaryObjectImpl(ctx, detachedData, detachedObjStartPos);
return new BinaryObjectImpl(ctx, out.arrayCopy(), detachedObjStartPos);
}
}
}

detachedObjStartPos = 0;

detachedData = new byte[len];
byte[] detachedData = new byte[len];

U.arrayCopy(arr, start, detachedData, 0, len);

return new BinaryObjectImpl(ctx, detachedData, detachedObjStartPos);
return new BinaryObjectImpl(ctx, detachedData, 0);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@
BinaryContextPredefinedTypesTest.class,

RawBytesObjectReaderTest.class,
CrossObjetReferenceSerializationTest.class
CrossObjetReferenceSerializationTest.class,
})
public class IgniteBinaryObjectsTestSuite {
}

0 comments on commit 965fb22

Please sign in to comment.