You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 9, 2025. It is now read-only.
For more higher performance , I adjust the defaultSlotSize of class BinaryStorer from 1024 to 10240, org.eclipse.serializer.persistence.types.DefaultObjectRegistry minimumCapacity from 1 to 1024;
the eclipse store performance is higher then default,
Could I do like this and it is safe? do any one know why this change can increase the performance? Thank you very much. @fh-ms@hg-ms
` public class Default
implements BinaryStorer, PersistenceStoreHandler, PersistenceLocalObjectIdRegistry
{
///////////////////////////////////////////////////////////////////////////
// constants //
//////////////
private final static Logger logger = Logging.getLogger(BinaryStorer.class);
protected static int defaultSlotSize()
{
// why permanently occupy additional memory with fields and instances for constant values?
return 10240; // anything below 1024 doesn't pay of
}`
public final class DefaultObjectRegistry implements PersistenceObjectRegistry public static DefaultObjectRegistry New(final float hashDensity) { return New(hashDensity, 10240); }
To Reproduce
change the defaultSlotSize of class org.eclipse.serializer.persistence.binary.types.BinaryStorer from 1024 to 10240
change the minimumCapacity of class org.eclipse.serializer.persistence.types.DefaultObjectRegistry from 1 to 1024
Expected behavior
EclipseStore works well
I
The text was updated successfully, but these errors were encountered:
Yes, it’s safe to increase those values. Both define the initial size of internal data structures that hold management data of processed objects. In case of the DefaultObjectRegistry they hold management data for all persisted objects. In case of the BinaryStorer they contain temporary management data for the objects to be persisted. Those data structures are recreated with there size doubled if they get too small, which is an expensive operation.
A drawback of increasing those initial values is that the related data structures may occupy much more memory then required after they got increased.
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Environment Details
Describe the bug
For more higher performance , I adjust the defaultSlotSize of class BinaryStorer from 1024 to 10240, org.eclipse.serializer.persistence.types.DefaultObjectRegistry minimumCapacity from 1 to 1024;
the eclipse store performance is higher then default,
Could I do like this and it is safe? do any one know why this change can increase the performance? Thank you very much.
@fh-ms @hg-ms
` public class Default
implements BinaryStorer, PersistenceStoreHandler, PersistenceLocalObjectIdRegistry
{
///////////////////////////////////////////////////////////////////////////
// constants //
//////////////
public final class DefaultObjectRegistry implements PersistenceObjectRegistry public static DefaultObjectRegistry New(final float hashDensity) { return New(hashDensity, 10240); }
To Reproduce
change the defaultSlotSize of class org.eclipse.serializer.persistence.binary.types.BinaryStorer from 1024 to 10240
change the minimumCapacity of class org.eclipse.serializer.persistence.types.DefaultObjectRegistry from 1 to 1024
Expected behavior
EclipseStore works well
I
The text was updated successfully, but these errors were encountered: