Discussion:
[orientdb] Deserialization issue (InvalidClassException) during communication with remote storage
'Simon Erhardt' via OrientDB
2018-09-13 11:03:19 UTC
Permalink
Hello community,

we are using OrientDB in our product, and since the update from version
2.1.15 to version 2.2.34, we have the problem described below, which occurs
sporadically.
Is there anything we can do to mitigate it or to identify the actual error
source?
We are grateful for every kind of help.

- Simon

*OrientDB release?*
2.2.34

*What steps will reproduce the problem?*
Unknown - our attempts to reproduce the problem have been very unsatisfying
yet. Nonetheless, the problem occurs again and again (without a
recognizable pattern), in different runtime environments of different
customers, and in different situations. It seems to happen in random
situations when the database is accessed. It happens that one query is
successful, and the next one fails (with the error below), and then every
subsequent query also fails.

Symptoms:
An InvalidClassException occurs sometimes when querying the database:
Caused by: com.orientechnologies.common.io.OIOException: com.o;
serializable and externalizable flags conflict
at
com.orientechnologies.orient.client.remote.OStorageRemote.handleIOException(OStorageRemote.java:321)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:292)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetry(OStorageRemote.java:204)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperation(OStorageRemote.java:215)
at
com.orientechnologies.orient.client.remote.OStorageRemote.command(OStorageRemote.java:1187)
at
com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:69)
at
com.tinkerpop.blueprints.impls.orient.OrientGraphCommand.execute(OrientGraphCommand.java:49)
at com.mycompany.BaseDAOImpl.query(OrientConnection.java:188)
... 13 common frames omitted
Caused by: java.io.InvalidClassException: com.o; serializable and
externalizable flags conflict
at java.base/java.io.ObjectStreamClass.readNonProxy(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDescriptor(Unknown Source)
at java.base/java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:436)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:400)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:283)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:167)
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:2365)
at
com.orientechnologies.orient.client.remote.OStorageRemote$27.execute(OStorageRemote.java:1211)
at
com.orientechnologies.orient.client.remote.OStorageRemote$2.execute(OStorageRemote.java:207)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:252)
... 19 common frames omitted

The *BaseDAOImpl.query* looks like:
public Iterable<Vertex> query(String query, Object... params) throws
PersistenceException {
OrientBaseGraph graph = OrientGraph.getActiveGraph();
try {
OCommandSQL command = new OCommandSQL(query);
graph.clearCache();
return graph.command(command).execute(params);
} catch (Exception e) {
throw new PersistenceException("Query triggered an exception", e);
}
}

It is called in the following context:
OrientGraphFactory factory = new
OrientGraphFactory("remote:localhost/mydb", user, password).setupPool(10,
50);
setRequireTransaction(true);
setAutoStartTx(false);
OrientGraph db = factory.getTx();
...
baseDAO.query("select from MyClass");
...
db.shutdown();


*If you're using custom settings please provide them below (to dump all
the settings run the application using the JVM
argument -Denvironment.dumpCfgAtStartup=true):*
OrientDB 2.2.34 (build f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch
2.2.x) configuration dump:
- ENVIRONMENT
+ environment.dumpCfgAtStartup = true
+ environment.concurrent = true
+ environment.lockManager.concurrency.level = 64
+ environment.allowJVMShutdown = true
- SCRIPT
+ script.pool.maxSize = 20
- MEMORY
+ memory.useUnsafe = true
+ memory.chunk.size = 2147483647
+ memory.directMemory.safeMode = true
+ memory.directMemory.trackMode = false
+ memory.directMemory.onlyAlignedMemoryAccess = true
- JVM
+ jvm.gc.delayForOptimize = 600
- STORAGE
+ storage.openFiles.limit = 512
+ storage.componentsLock.cache = 10000
+ storage.diskCache.pinnedPages = 20
+ storage.diskCache.bufferSize = 4054
+ storage.diskCache.writeCachePart = 15
+ storage.diskCache.writeCachePageTTL = 86400
+ storage.diskCache.writeCachePageFlushInterval = 25
+ storage.diskCache.writeCacheFlushInactivityInterval = 60000
+ storage.diskCache.writeCacheFlushLockTimeout = -1
+ storage.diskCache.diskFreeSpaceCheckInterval = 5
+ storage.diskCache.diskFreeSpaceCheckIntervalInPages = 2048
+ storage.diskCache.keepState = true
+ storage.diskCache.checksumMode = StoreAndSwitchReadOnlyMode
+ storage.configuration.syncOnUpdate = true
+ storage.compressionMethod = nothing
+ storage.encryptionMethod = nothing
+ storage.encryptionKey = <hidden>
+ storage.makeFullCheckpointAfterCreate = false
+ storage.makeFullCheckpointAfterOpen = false
+ storage.makeFullCheckpointAfterClusterCreate = true
+ storage.trackChangedRecordsInWAL = false
+ storage.useWAL = true
+ storage.wal.syncOnPageFlush = true
+ storage.wal.cacheSize = 3000
+ storage.wal.fileAutoCloseInterval = 10
+ storage.wal.maxSegmentSize = 128
+ storage.wal.maxSize = 4096
+ storage.wal.commitTimeout = 1000
+ storage.wal.shutdownTimeout = 10000
+ storage.wal.fuzzyCheckpointInterval = 300
+ storage.wal.reportAfterOperationsDuringRestore = 10000
+ storage.wal.restore.batchSize = 50000
+ storage.wal.readCacheSize = 1000
+ storage.wal.fuzzyCheckpointShutdownWait = 600
+ storage.wal.fullCheckpointShutdownTimeout = 600
+ storage.wal.path = null
+ storage.diskCache.pageSize = 64
+ storage.diskCache.diskFreeSpaceLimit = 256
+ storage.lowestFreeListBound = 16
+ storage.lockTimeout = 0
+ storage.record.lockTimeout = 2000
+ storage.useTombstones = false
- RECORD
+ record.downsizing.enabled = true
- OBJECT
+ object.saveOnlyDirty = false
- DB
+ db.pool.min = 50
+ db.pool.max = 100
+ db.pool.idleTimeout = 0
+ db.pool.idleCheckDelay = 0
+ db.mvcc.throwfast = false
+ db.validation = true
- NONTX
+ nonTX.recordUpdate.synch = false
+ nonTX.clusters.sync.immediately = manindex
- TX
+ tx.trackAtomicOperations = false
+ tx.pageCacheSize = 12
- INDEX
+ index.embeddedToSbtreeBonsaiThreshold = 40
+ index.sbtreeBonsaiToEmbeddedThreshold = -1
- HASHTABLE
+ hashTable.slitBucketsBuffer.length = 1500
- INDEX
+ index.auto.synchronousAutoRebuild = true
+ index.auto.lazyUpdates = 10000
+ index.flushAfterCreate = true
+ index.manual.lazyUpdates = 1
+ index.durableInNonTxMode = true
+ index.ignoreNullValuesDefault = false
+ index.txMode = FULL
+ index.cursor.prefetchSize = 10000
- SBTREE
+ sbtree.maxDepth = 64
+ sbtree.maxKeySize = 10240
+ sbtree.maxEmbeddedValueSize = 40960
- SBTREEBONSAI
+ sbtreebonsai.bucketSize = 2
+ sbtreebonsai.linkBagCache.size = 100000
+ sbtreebonsai.linkBagCache.evictionSize = 1000
+ sbtreebonsai.freeSpaceReuseTrigger = 0.5
- RIDBAG
+ ridBag.embeddedDefaultSize = 4
+ ridBag.embeddedToSbtreeBonsaiThreshold = 40
+ ridBag.sbtreeBonsaiToEmbeddedToThreshold = -1
- COLLECTIONS
+ collections.preferSBTreeSet = false
- FILE
+ file.trackFileClose = false
+ file.lock = true
+ file.deleteDelay = 10
+ file.deleteRetry = 50
- SECURITY
+ security.userPasswordSaltIterations = 65536
+ security.userPasswordSaltCacheSize = 500
+ security.userPasswordDefaultAlgorithm = PBKDF2WithHmacSHA256
- NETWORK
+ network.maxConcurrentSessions = 1000
+ network.socketBufferSize = 0
+ network.lockTimeout = 15000
+ network.socketTimeout = 15000
+ network.requestTimeout = 3600000
+ network.retry.strategy = auto
+ network.retry = 5
+ network.retryDelay = 500
+ network.binary.loadBalancing.enabled = false
+ network.binary.loadBalancing.timeout = 2000
+ network.binary.maxLength = 16384
+ network.binary.readResponse.maxTimes = 20
+ network.binary.debug = false
+ network.http.installDefaultCommands = true
+ network.http.serverInfo = OrientDB Server v.2.2.34 (build
f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch 2.2.x)
+ network.http.maxLength = 1000000
+ network.http.streaming = false
+ network.http.charset = utf-8
+ network.http.jsonResponseError = true
+ network.http.jsonp = false
+ network.http.sessionExpireTimeout = 300
+ network.http.useToken = false
+ network.token.secretKey =
+ network.token.encryptionAlgorithm = HmacSHA256
+ network.token.expireTimeout = 60
- PROFILER
+ profiler.enabled = false
+ profiler.config = null
+ profiler.autoDump.interval = 0
+ profiler.autoDump.type = full
+ profiler.maxValues = 200
+ profiler.memoryCheckInterval = 120000
- SEQUENCE
+ sequence.maxRetry = 100
+ sequence.retryDelay = 200
- STORAGEPROFILER
+ storageProfiler.intervalBetweenSnapshots = 100
+ storageProfiler.cleanUpInterval = 5000
- LOG
+ log.console.level = info
+ log.file.level = fine
- CLASS
+ class.minimumClusters = 0
- LOG
+ log.console.ansi = auto
- CACHE
+ cache.local.impl =
com.orientechnologies.orient.core.cache.ORecordCacheWeakRefs
- COMMAND
+ command.timeout = 0
+ command.cache.enabled = false
+ command.cache.evictStrategy = PER_CLUSTER
+ command.cache.minExecutionTime = 10
+ command.cache.maxResultsetSize = 500
- QUERY
+ query.useSoftReferencesInResultSet = false
+ query.parallelAuto = false
+ query.parallelMinimumRecords = 300000
+ query.parallelResultQueueSize = 20000
+ query.scanPrefetchPages = 20
+ query.scanBatchSize = 1000
+ query.scanThresholdTip = 50000
+ query.limitThresholdTip = 10000
+ query.live.support = true
+ query.timeout.defaultStrategy = EXCEPTION
- LUCENE
+ lucene.query.pageSize = 10000
- STATEMENT
+ statement.cacheSize = 100
- SQL
+ sql.graphConsistencyMode = tx
- CLIENT
+ client.channel.maxPool = 200
+ client.connectionPool.waitTimeout = 5000
+ client.channel.dbReleaseWaitTimeout = 10000
+ client.ssl.enabled = false
+ client.ssl.keyStore = null
+ client.ssl.keyStorePass = null
+ client.ssl.trustStore = null
+ client.ssl.trustStorePass = null
- SERVER
+ server.openAllDatabasesAtStartup = false
+ server.channel.cleanDelay = 5000
+ server.cache.staticFile = false
+ server.log.dumpClientExceptionLevel = FINE
+ server.log.dumpClientExceptionFullStackTrace = false
- DISTRIBUTED
+ distributed.dumpStatsEvery = 0
+ distributed.crudTaskTimeout = 10000
+ distributed.maxStartupDelay = 10000
+ distributed.commandTaskTimeout = 120000
+ distributed.commandQuickTaskTimeout = 5000
+ distributed.commandLongTaskTimeout = 86400000
+ distributed.deployDbTaskTimeout = 1200000
+ distributed.deployChunkTaskTimeout = 60000
+ distributed.deployDbTaskCompression = 7
+ distributed.asynchQueueSize = 0
+ distributed.asynchResponsesTimeout = 15000
+ distributed.purgeResponsesTimerDelay = 15000
+ distributed.conflictResolverRepairerChain =
quorum,content,majority,version
+ distributed.conflictResolverRepairerCheckEvery = 5000
+ distributed.conflictResolverRepairerBatch = 50
+ distributed.txAliveTimeout = 30000
+ distributed.requestChannels = 1
+ distributed.responseChannels = 1
+ distributed.queueTimeout = 15000
+ distributed.heartbeatTimeout = 10000
+ distributed.checkHealthCanOfflineServer = false
+ distributed.checkHealthEvery = 10000
+ distributed.autoRemoveOfflineServers = 0
+ distributed.publishNodeStatusEvery = 10000
+ distributed.localQueueSize = 10000
+ distributed.dbWorkerThreads = 0
+ distributed.queueMaxSize = 10000
+ distributed.backupDirectory = ../backup/databases
+ distributed.backupTryIncrementalFirst = true
+ distributed.checkIntegrityLastTxs = 16
+ distributed.concurrentTxMaxAutoRetry = 15
+ distributed.atomicLockTimeout = 1000
+ distributed.concurrentTxAutoRetryDelay = 10
- DB
+ db.document.serializer = ORecordSerializerBinary
- CLIENT
+ client.krb5.config = null
+ client.krb5.ccname = null
+ client.krb5.ktname = null
+ client.credentialinterceptor = null
+ client.ci.keyalgorithm = AES
+ client.ci.ciphertransform = AES/CBC/PKCS5Padding
+ client.ci.keystore.file = null
+ client.ci.keystore.password = null
- SECURITY
+ security.createDefaultUsers = true
- SERVER
+ server.security.file = null
- ORIENT
+ orient.initInServletContextListener = true
- JNA
+ jna.disable.system.library = true
- DB
+ db.makeFullCheckpointOnIndexChange = true
+ db.makeFullCheckpointOnSchemaChange = true
- CLIENT
+ client.session.tokenBased = true
- OAUTH2
+ oauth2.secretkey =
- STORAGE
+ storage.cluster.usecrc32 = false
- LAZYSET
+ lazyset.workOnStream = true
- DB
+ db.mvcc = true
+ db.use.distributedVersion = false
- MVRBTREE
+ mvrbtree.timeout = 0
+ mvrbtree.nodePageSize = 256
+ mvrbtree.loadFactor = 0.7
+ mvrbtree.optimizeThreshold = 100000
+ mvrbtree.entryPoints = 64
+ mvrbtree.optimizeEntryPointsFactor = 1.0
+ mvrbtree.entryKeysInMemory = false
+ mvrbtree.entryValuesInMemory = false
+ mvrbtree.ridBinaryThreshold = -1
+ mvrbtree.ridNodePageSize = 64
+ mvrbtree.ridNodeSaveMemory = false
- TX
+ tx.commit.synch = false
+ tx.autoRetry = 1
+ tx.log.fileType = classic
+ tx.log.synch = false
+ tx.useLog = true
- INDEX
+ index.auto.rebuildAfterNotSoftClose = true
- CLIENT
+ client.channel.minPool = 50
- STORAGE
+ storage.keepOpen = true
- CACHE
+ cache.local.enabled = true
- DISTRIBUTED
+ distributed.shutdownTimeout = 2000
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Luigi Dell'Aquila
2018-09-14 05:47:26 UTC
Permalink
Hi Simon,

Are you using the exact same OrientDB version on both the client and the
server?

Thanks

Luigi

Il giorno gio 13 set 2018 alle ore 14:16 'Simon Erhardt' via OrientDB <
Post by 'Simon Erhardt' via OrientDB
Hello community,
we are using OrientDB in our product, and since the update from version
2.1.15 to version 2.2.34, we have the problem described below, which occurs
sporadically.
Is there anything we can do to mitigate it or to identify the actual error
source?
We are grateful for every kind of help.
- Simon
*OrientDB release?*
2.2.34
*What steps will reproduce the problem?*
Unknown - our attempts to reproduce the problem have been very
unsatisfying yet. Nonetheless, the problem occurs again and again (without
a recognizable pattern), in different runtime environments of different
customers, and in different situations. It seems to happen in random
situations when the database is accessed. It happens that one query is
successful, and the next one fails (with the error below), and then every
subsequent query also fails.
Caused by: com.orientechnologies.common.io.OIOException: com.o;
serializable and externalizable flags conflict
at
com.orientechnologies.orient.client.remote.OStorageRemote.handleIOException(OStorageRemote.java:321)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:292)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetry(OStorageRemote.java:204)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperation(OStorageRemote.java:215)
at
com.orientechnologies.orient.client.remote.OStorageRemote.command(OStorageRemote.java:1187)
at
com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:69)
at
com.tinkerpop.blueprints.impls.orient.OrientGraphCommand.execute(OrientGraphCommand.java:49)
at com.mycompany.BaseDAOImpl.query(OrientConnection.java:188)
... 13 common frames omitted
Caused by: java.io.InvalidClassException: com.o; serializable and
externalizable flags conflict
at java.base/java.io.ObjectStreamClass.readNonProxy(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDescriptor(Unknown Source)
at java.base/java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:436)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:400)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:283)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:167)
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:2365)
at
com.orientechnologies.orient.client.remote.OStorageRemote$27.execute(OStorageRemote.java:1211)
at
com.orientechnologies.orient.client.remote.OStorageRemote$2.execute(OStorageRemote.java:207)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:252)
... 19 common frames omitted
public Iterable<Vertex> query(String query, Object... params) throws
PersistenceException {
OrientBaseGraph graph = OrientGraph.getActiveGraph();
try {
OCommandSQL command = new OCommandSQL(query);
graph.clearCache();
return graph.command(command).execute(params);
} catch (Exception e) {
throw new PersistenceException("Query triggered an exception", e);
}
}
OrientGraphFactory factory = new
OrientGraphFactory("remote:localhost/mydb", user, password).setupPool(10,
50);
setRequireTransaction(true);
setAutoStartTx(false);
OrientGraph db = factory.getTx();
...
baseDAO.query("select from MyClass");
...
db.shutdown();
*If you're using custom settings please provide them below (to dump all
the settings run the application using the JVM
argument -Denvironment.dumpCfgAtStartup=true):*
OrientDB 2.2.34 (build f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch
- ENVIRONMENT
+ environment.dumpCfgAtStartup = true
+ environment.concurrent = true
+ environment.lockManager.concurrency.level = 64
+ environment.allowJVMShutdown = true
- SCRIPT
+ script.pool.maxSize = 20
- MEMORY
+ memory.useUnsafe = true
+ memory.chunk.size = 2147483647
+ memory.directMemory.safeMode = true
+ memory.directMemory.trackMode = false
+ memory.directMemory.onlyAlignedMemoryAccess = true
- JVM
+ jvm.gc.delayForOptimize = 600
- STORAGE
+ storage.openFiles.limit = 512
+ storage.componentsLock.cache = 10000
+ storage.diskCache.pinnedPages = 20
+ storage.diskCache.bufferSize = 4054
+ storage.diskCache.writeCachePart = 15
+ storage.diskCache.writeCachePageTTL = 86400
+ storage.diskCache.writeCachePageFlushInterval = 25
+ storage.diskCache.writeCacheFlushInactivityInterval = 60000
+ storage.diskCache.writeCacheFlushLockTimeout = -1
+ storage.diskCache.diskFreeSpaceCheckInterval = 5
+ storage.diskCache.diskFreeSpaceCheckIntervalInPages = 2048
+ storage.diskCache.keepState = true
+ storage.diskCache.checksumMode = StoreAndSwitchReadOnlyMode
+ storage.configuration.syncOnUpdate = true
+ storage.compressionMethod = nothing
+ storage.encryptionMethod = nothing
+ storage.encryptionKey = <hidden>
+ storage.makeFullCheckpointAfterCreate = false
+ storage.makeFullCheckpointAfterOpen = false
+ storage.makeFullCheckpointAfterClusterCreate = true
+ storage.trackChangedRecordsInWAL = false
+ storage.useWAL = true
+ storage.wal.syncOnPageFlush = true
+ storage.wal.cacheSize = 3000
+ storage.wal.fileAutoCloseInterval = 10
+ storage.wal.maxSegmentSize = 128
+ storage.wal.maxSize = 4096
+ storage.wal.commitTimeout = 1000
+ storage.wal.shutdownTimeout = 10000
+ storage.wal.fuzzyCheckpointInterval = 300
+ storage.wal.reportAfterOperationsDuringRestore = 10000
+ storage.wal.restore.batchSize = 50000
+ storage.wal.readCacheSize = 1000
+ storage.wal.fuzzyCheckpointShutdownWait = 600
+ storage.wal.fullCheckpointShutdownTimeout = 600
+ storage.wal.path = null
+ storage.diskCache.pageSize = 64
+ storage.diskCache.diskFreeSpaceLimit = 256
+ storage.lowestFreeListBound = 16
+ storage.lockTimeout = 0
+ storage.record.lockTimeout = 2000
+ storage.useTombstones = false
- RECORD
+ record.downsizing.enabled = true
- OBJECT
+ object.saveOnlyDirty = false
- DB
+ db.pool.min = 50
+ db.pool.max = 100
+ db.pool.idleTimeout = 0
+ db.pool.idleCheckDelay = 0
+ db.mvcc.throwfast = false
+ db.validation = true
- NONTX
+ nonTX.recordUpdate.synch = false
+ nonTX.clusters.sync.immediately = manindex
- TX
+ tx.trackAtomicOperations = false
+ tx.pageCacheSize = 12
- INDEX
+ index.embeddedToSbtreeBonsaiThreshold = 40
+ index.sbtreeBonsaiToEmbeddedThreshold = -1
- HASHTABLE
+ hashTable.slitBucketsBuffer.length = 1500
- INDEX
+ index.auto.synchronousAutoRebuild = true
+ index.auto.lazyUpdates = 10000
+ index.flushAfterCreate = true
+ index.manual.lazyUpdates = 1
+ index.durableInNonTxMode = true
+ index.ignoreNullValuesDefault = false
+ index.txMode = FULL
+ index.cursor.prefetchSize = 10000
- SBTREE
+ sbtree.maxDepth = 64
+ sbtree.maxKeySize = 10240
+ sbtree.maxEmbeddedValueSize = 40960
- SBTREEBONSAI
+ sbtreebonsai.bucketSize = 2
+ sbtreebonsai.linkBagCache.size = 100000
+ sbtreebonsai.linkBagCache.evictionSize = 1000
+ sbtreebonsai.freeSpaceReuseTrigger = 0.5
- RIDBAG
+ ridBag.embeddedDefaultSize = 4
+ ridBag.embeddedToSbtreeBonsaiThreshold = 40
+ ridBag.sbtreeBonsaiToEmbeddedToThreshold = -1
- COLLECTIONS
+ collections.preferSBTreeSet = false
- FILE
+ file.trackFileClose = false
+ file.lock = true
+ file.deleteDelay = 10
+ file.deleteRetry = 50
- SECURITY
+ security.userPasswordSaltIterations = 65536
+ security.userPasswordSaltCacheSize = 500
+ security.userPasswordDefaultAlgorithm = PBKDF2WithHmacSHA256
- NETWORK
+ network.maxConcurrentSessions = 1000
+ network.socketBufferSize = 0
+ network.lockTimeout = 15000
+ network.socketTimeout = 15000
+ network.requestTimeout = 3600000
+ network.retry.strategy = auto
+ network.retry = 5
+ network.retryDelay = 500
+ network.binary.loadBalancing.enabled = false
+ network.binary.loadBalancing.timeout = 2000
+ network.binary.maxLength = 16384
+ network.binary.readResponse.maxTimes = 20
+ network.binary.debug = false
+ network.http.installDefaultCommands = true
+ network.http.serverInfo = OrientDB Server v.2.2.34 (build
f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch 2.2.x)
+ network.http.maxLength = 1000000
+ network.http.streaming = false
+ network.http.charset = utf-8
+ network.http.jsonResponseError = true
+ network.http.jsonp = false
+ network.http.sessionExpireTimeout = 300
+ network.http.useToken = false
+ network.token.secretKey =
+ network.token.encryptionAlgorithm = HmacSHA256
+ network.token.expireTimeout = 60
- PROFILER
+ profiler.enabled = false
+ profiler.config = null
+ profiler.autoDump.interval = 0
+ profiler.autoDump.type = full
+ profiler.maxValues = 200
+ profiler.memoryCheckInterval = 120000
- SEQUENCE
+ sequence.maxRetry = 100
+ sequence.retryDelay = 200
- STORAGEPROFILER
+ storageProfiler.intervalBetweenSnapshots = 100
+ storageProfiler.cleanUpInterval = 5000
- LOG
+ log.console.level = info
+ log.file.level = fine
- CLASS
+ class.minimumClusters = 0
- LOG
+ log.console.ansi = auto
- CACHE
+ cache.local.impl =
com.orientechnologies.orient.core.cache.ORecordCacheWeakRefs
- COMMAND
+ command.timeout = 0
+ command.cache.enabled = false
+ command.cache.evictStrategy = PER_CLUSTER
+ command.cache.minExecutionTime = 10
+ command.cache.maxResultsetSize = 500
- QUERY
+ query.useSoftReferencesInResultSet = false
+ query.parallelAuto = false
+ query.parallelMinimumRecords = 300000
+ query.parallelResultQueueSize = 20000
+ query.scanPrefetchPages = 20
+ query.scanBatchSize = 1000
+ query.scanThresholdTip = 50000
+ query.limitThresholdTip = 10000
+ query.live.support = true
+ query.timeout.defaultStrategy = EXCEPTION
- LUCENE
+ lucene.query.pageSize = 10000
- STATEMENT
+ statement.cacheSize = 100
- SQL
+ sql.graphConsistencyMode = tx
- CLIENT
+ client.channel.maxPool = 200
+ client.connectionPool.waitTimeout = 5000
+ client.channel.dbReleaseWaitTimeout = 10000
+ client.ssl.enabled = false
+ client.ssl.keyStore = null
+ client.ssl.keyStorePass = null
+ client.ssl.trustStore = null
+ client.ssl.trustStorePass = null
- SERVER
+ server.openAllDatabasesAtStartup = false
+ server.channel.cleanDelay = 5000
+ server.cache.staticFile = false
+ server.log.dumpClientExceptionLevel = FINE
+ server.log.dumpClientExceptionFullStackTrace = false
- DISTRIBUTED
+ distributed.dumpStatsEvery = 0
+ distributed.crudTaskTimeout = 10000
+ distributed.maxStartupDelay = 10000
+ distributed.commandTaskTimeout = 120000
+ distributed.commandQuickTaskTimeout = 5000
+ distributed.commandLongTaskTimeout = 86400000
+ distributed.deployDbTaskTimeout = 1200000
+ distributed.deployChunkTaskTimeout = 60000
+ distributed.deployDbTaskCompression = 7
+ distributed.asynchQueueSize = 0
+ distributed.asynchResponsesTimeout = 15000
+ distributed.purgeResponsesTimerDelay = 15000
+ distributed.conflictResolverRepairerChain =
quorum,content,majority,version
+ distributed.conflictResolverRepairerCheckEvery = 5000
+ distributed.conflictResolverRepairerBatch = 50
+ distributed.txAliveTimeout = 30000
+ distributed.requestChannels = 1
+ distributed.responseChannels = 1
+ distributed.queueTimeout = 15000
+ distributed.heartbeatTimeout = 10000
+ distributed.checkHealthCanOfflineServer = false
+ distributed.checkHealthEvery = 10000
+ distributed.autoRemoveOfflineServers = 0
+ distributed.publishNodeStatusEvery = 10000
+ distributed.localQueueSize = 10000
+ distributed.dbWorkerThreads = 0
+ distributed.queueMaxSize = 10000
+ distributed.backupDirectory = ../backup/databases
+ distributed.backupTryIncrementalFirst = true
+ distributed.checkIntegrityLastTxs = 16
+ distributed.concurrentTxMaxAutoRetry = 15
+ distributed.atomicLockTimeout = 1000
+ distributed.concurrentTxAutoRetryDelay = 10
- DB
+ db.document.serializer = ORecordSerializerBinary
- CLIENT
+ client.krb5.config = null
+ client.krb5.ccname = null
+ client.krb5.ktname = null
+ client.credentialinterceptor = null
+ client.ci.keyalgorithm = AES
+ client.ci.ciphertransform = AES/CBC/PKCS5Padding
+ client.ci.keystore.file = null
+ client.ci.keystore.password = null
- SECURITY
+ security.createDefaultUsers = true
- SERVER
+ server.security.file = null
- ORIENT
+ orient.initInServletContextListener = true
- JNA
+ jna.disable.system.library = true
- DB
+ db.makeFullCheckpointOnIndexChange = true
+ db.makeFullCheckpointOnSchemaChange = true
- CLIENT
+ client.session.tokenBased = true
- OAUTH2
+ oauth2.secretkey =
- STORAGE
+ storage.cluster.usecrc32 = false
- LAZYSET
+ lazyset.workOnStream = true
- DB
+ db.mvcc = true
+ db.use.distributedVersion = false
- MVRBTREE
+ mvrbtree.timeout = 0
+ mvrbtree.nodePageSize = 256
+ mvrbtree.loadFactor = 0.7
+ mvrbtree.optimizeThreshold = 100000
+ mvrbtree.entryPoints = 64
+ mvrbtree.optimizeEntryPointsFactor = 1.0
+ mvrbtree.entryKeysInMemory = false
+ mvrbtree.entryValuesInMemory = false
+ mvrbtree.ridBinaryThreshold = -1
+ mvrbtree.ridNodePageSize = 64
+ mvrbtree.ridNodeSaveMemory = false
- TX
+ tx.commit.synch = false
+ tx.autoRetry = 1
+ tx.log.fileType = classic
+ tx.log.synch = false
+ tx.useLog = true
- INDEX
+ index.auto.rebuildAfterNotSoftClose = true
- CLIENT
+ client.channel.minPool = 50
- STORAGE
+ storage.keepOpen = true
- CACHE
+ cache.local.enabled = true
- DISTRIBUTED
+ distributed.shutdownTimeout = 2000
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
'Simon Erhardt' via OrientDB
2018-09-14 07:28:45 UTC
Permalink
Hi Luigi,

yes, although we use the remote protocol, client and server are run in the
same process. Our classpath contains the following libraries:

orientdb-client-2.2.34.jar
orientdb-core-2.2.34.jar
orientdb-graphdb-2.2.34.jar
orientdb-server-2.2.34.jar
orientdb-tools-2.2.34.jar

Simon

Am Fr., 14. Sep. 2018 um 07:47 Uhr schrieb Luigi Dell'Aquila <
Post by Luigi Dell'Aquila
Hi Simon,
Are you using the exact same OrientDB version on both the client and the
server?
Thanks
Luigi
Il giorno gio 13 set 2018 alle ore 14:16 'Simon Erhardt' via OrientDB <
Post by 'Simon Erhardt' via OrientDB
Hello community,
we are using OrientDB in our product, and since the update from version
2.1.15 to version 2.2.34, we have the problem described below, which occurs
sporadically.
Is there anything we can do to mitigate it or to identify the actual
error source?
We are grateful for every kind of help.
- Simon
*OrientDB release?*
2.2.34
*What steps will reproduce the problem?*
Unknown - our attempts to reproduce the problem have been very
unsatisfying yet. Nonetheless, the problem occurs again and again (without
a recognizable pattern), in different runtime environments of different
customers, and in different situations. It seems to happen in random
situations when the database is accessed. It happens that one query is
successful, and the next one fails (with the error below), and then every
subsequent query also fails.
Caused by: com.orientechnologies.common.io.OIOException: com.o;
serializable and externalizable flags conflict
at
com.orientechnologies.orient.client.remote.OStorageRemote.handleIOException(OStorageRemote.java:321)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:292)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetry(OStorageRemote.java:204)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperation(OStorageRemote.java:215)
at
com.orientechnologies.orient.client.remote.OStorageRemote.command(OStorageRemote.java:1187)
at
com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:69)
at
com.tinkerpop.blueprints.impls.orient.OrientGraphCommand.execute(OrientGraphCommand.java:49)
at com.mycompany.BaseDAOImpl.query(OrientConnection.java:188)
... 13 common frames omitted
Caused by: java.io.InvalidClassException: com.o; serializable and
externalizable flags conflict
at java.base/java.io.ObjectStreamClass.readNonProxy(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDescriptor(Unknown Source)
at java.base/java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:436)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:400)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:283)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:167)
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:2365)
at
com.orientechnologies.orient.client.remote.OStorageRemote$27.execute(OStorageRemote.java:1211)
at
com.orientechnologies.orient.client.remote.OStorageRemote$2.execute(OStorageRemote.java:207)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:252)
... 19 common frames omitted
public Iterable<Vertex> query(String query, Object... params) throws
PersistenceException {
OrientBaseGraph graph = OrientGraph.getActiveGraph();
try {
OCommandSQL command = new OCommandSQL(query);
graph.clearCache();
return graph.command(command).execute(params);
} catch (Exception e) {
throw new PersistenceException("Query triggered an exception", e);
}
}
OrientGraphFactory factory = new
OrientGraphFactory("remote:localhost/mydb", user, password).setupPool(10,
50);
setRequireTransaction(true);
setAutoStartTx(false);
OrientGraph db = factory.getTx();
...
baseDAO.query("select from MyClass");
...
db.shutdown();
*If you're using custom settings please provide them below (to dump all
the settings run the application using the JVM
argument -Denvironment.dumpCfgAtStartup=true):*
OrientDB 2.2.34 (build f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch
- ENVIRONMENT
+ environment.dumpCfgAtStartup = true
+ environment.concurrent = true
+ environment.lockManager.concurrency.level = 64
+ environment.allowJVMShutdown = true
- SCRIPT
+ script.pool.maxSize = 20
- MEMORY
+ memory.useUnsafe = true
+ memory.chunk.size = 2147483647
+ memory.directMemory.safeMode = true
+ memory.directMemory.trackMode = false
+ memory.directMemory.onlyAlignedMemoryAccess = true
- JVM
+ jvm.gc.delayForOptimize = 600
- STORAGE
+ storage.openFiles.limit = 512
+ storage.componentsLock.cache = 10000
+ storage.diskCache.pinnedPages = 20
+ storage.diskCache.bufferSize = 4054
+ storage.diskCache.writeCachePart = 15
+ storage.diskCache.writeCachePageTTL = 86400
+ storage.diskCache.writeCachePageFlushInterval = 25
+ storage.diskCache.writeCacheFlushInactivityInterval = 60000
+ storage.diskCache.writeCacheFlushLockTimeout = -1
+ storage.diskCache.diskFreeSpaceCheckInterval = 5
+ storage.diskCache.diskFreeSpaceCheckIntervalInPages = 2048
+ storage.diskCache.keepState = true
+ storage.diskCache.checksumMode = StoreAndSwitchReadOnlyMode
+ storage.configuration.syncOnUpdate = true
+ storage.compressionMethod = nothing
+ storage.encryptionMethod = nothing
+ storage.encryptionKey = <hidden>
+ storage.makeFullCheckpointAfterCreate = false
+ storage.makeFullCheckpointAfterOpen = false
+ storage.makeFullCheckpointAfterClusterCreate = true
+ storage.trackChangedRecordsInWAL = false
+ storage.useWAL = true
+ storage.wal.syncOnPageFlush = true
+ storage.wal.cacheSize = 3000
+ storage.wal.fileAutoCloseInterval = 10
+ storage.wal.maxSegmentSize = 128
+ storage.wal.maxSize = 4096
+ storage.wal.commitTimeout = 1000
+ storage.wal.shutdownTimeout = 10000
+ storage.wal.fuzzyCheckpointInterval = 300
+ storage.wal.reportAfterOperationsDuringRestore = 10000
+ storage.wal.restore.batchSize = 50000
+ storage.wal.readCacheSize = 1000
+ storage.wal.fuzzyCheckpointShutdownWait = 600
+ storage.wal.fullCheckpointShutdownTimeout = 600
+ storage.wal.path = null
+ storage.diskCache.pageSize = 64
+ storage.diskCache.diskFreeSpaceLimit = 256
+ storage.lowestFreeListBound = 16
+ storage.lockTimeout = 0
+ storage.record.lockTimeout = 2000
+ storage.useTombstones = false
- RECORD
+ record.downsizing.enabled = true
- OBJECT
+ object.saveOnlyDirty = false
- DB
+ db.pool.min = 50
+ db.pool.max = 100
+ db.pool.idleTimeout = 0
+ db.pool.idleCheckDelay = 0
+ db.mvcc.throwfast = false
+ db.validation = true
- NONTX
+ nonTX.recordUpdate.synch = false
+ nonTX.clusters.sync.immediately = manindex
- TX
+ tx.trackAtomicOperations = false
+ tx.pageCacheSize = 12
- INDEX
+ index.embeddedToSbtreeBonsaiThreshold = 40
+ index.sbtreeBonsaiToEmbeddedThreshold = -1
- HASHTABLE
+ hashTable.slitBucketsBuffer.length = 1500
- INDEX
+ index.auto.synchronousAutoRebuild = true
+ index.auto.lazyUpdates = 10000
+ index.flushAfterCreate = true
+ index.manual.lazyUpdates = 1
+ index.durableInNonTxMode = true
+ index.ignoreNullValuesDefault = false
+ index.txMode = FULL
+ index.cursor.prefetchSize = 10000
- SBTREE
+ sbtree.maxDepth = 64
+ sbtree.maxKeySize = 10240
+ sbtree.maxEmbeddedValueSize = 40960
- SBTREEBONSAI
+ sbtreebonsai.bucketSize = 2
+ sbtreebonsai.linkBagCache.size = 100000
+ sbtreebonsai.linkBagCache.evictionSize = 1000
+ sbtreebonsai.freeSpaceReuseTrigger = 0.5
- RIDBAG
+ ridBag.embeddedDefaultSize = 4
+ ridBag.embeddedToSbtreeBonsaiThreshold = 40
+ ridBag.sbtreeBonsaiToEmbeddedToThreshold = -1
- COLLECTIONS
+ collections.preferSBTreeSet = false
- FILE
+ file.trackFileClose = false
+ file.lock = true
+ file.deleteDelay = 10
+ file.deleteRetry = 50
- SECURITY
+ security.userPasswordSaltIterations = 65536
+ security.userPasswordSaltCacheSize = 500
+ security.userPasswordDefaultAlgorithm = PBKDF2WithHmacSHA256
- NETWORK
+ network.maxConcurrentSessions = 1000
+ network.socketBufferSize = 0
+ network.lockTimeout = 15000
+ network.socketTimeout = 15000
+ network.requestTimeout = 3600000
+ network.retry.strategy = auto
+ network.retry = 5
+ network.retryDelay = 500
+ network.binary.loadBalancing.enabled = false
+ network.binary.loadBalancing.timeout = 2000
+ network.binary.maxLength = 16384
+ network.binary.readResponse.maxTimes = 20
+ network.binary.debug = false
+ network.http.installDefaultCommands = true
+ network.http.serverInfo = OrientDB Server v.2.2.34 (build
f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch 2.2.x)
+ network.http.maxLength = 1000000
+ network.http.streaming = false
+ network.http.charset = utf-8
+ network.http.jsonResponseError = true
+ network.http.jsonp = false
+ network.http.sessionExpireTimeout = 300
+ network.http.useToken = false
+ network.token.secretKey =
+ network.token.encryptionAlgorithm = HmacSHA256
+ network.token.expireTimeout = 60
- PROFILER
+ profiler.enabled = false
+ profiler.config = null
+ profiler.autoDump.interval = 0
+ profiler.autoDump.type = full
+ profiler.maxValues = 200
+ profiler.memoryCheckInterval = 120000
- SEQUENCE
+ sequence.maxRetry = 100
+ sequence.retryDelay = 200
- STORAGEPROFILER
+ storageProfiler.intervalBetweenSnapshots = 100
+ storageProfiler.cleanUpInterval = 5000
- LOG
+ log.console.level = info
+ log.file.level = fine
- CLASS
+ class.minimumClusters = 0
- LOG
+ log.console.ansi = auto
- CACHE
+ cache.local.impl =
com.orientechnologies.orient.core.cache.ORecordCacheWeakRefs
- COMMAND
+ command.timeout = 0
+ command.cache.enabled = false
+ command.cache.evictStrategy = PER_CLUSTER
+ command.cache.minExecutionTime = 10
+ command.cache.maxResultsetSize = 500
- QUERY
+ query.useSoftReferencesInResultSet = false
+ query.parallelAuto = false
+ query.parallelMinimumRecords = 300000
+ query.parallelResultQueueSize = 20000
+ query.scanPrefetchPages = 20
+ query.scanBatchSize = 1000
+ query.scanThresholdTip = 50000
+ query.limitThresholdTip = 10000
+ query.live.support = true
+ query.timeout.defaultStrategy = EXCEPTION
- LUCENE
+ lucene.query.pageSize = 10000
- STATEMENT
+ statement.cacheSize = 100
- SQL
+ sql.graphConsistencyMode = tx
- CLIENT
+ client.channel.maxPool = 200
+ client.connectionPool.waitTimeout = 5000
+ client.channel.dbReleaseWaitTimeout = 10000
+ client.ssl.enabled = false
+ client.ssl.keyStore = null
+ client.ssl.keyStorePass = null
+ client.ssl.trustStore = null
+ client.ssl.trustStorePass = null
- SERVER
+ server.openAllDatabasesAtStartup = false
+ server.channel.cleanDelay = 5000
+ server.cache.staticFile = false
+ server.log.dumpClientExceptionLevel = FINE
+ server.log.dumpClientExceptionFullStackTrace = false
- DISTRIBUTED
+ distributed.dumpStatsEvery = 0
+ distributed.crudTaskTimeout = 10000
+ distributed.maxStartupDelay = 10000
+ distributed.commandTaskTimeout = 120000
+ distributed.commandQuickTaskTimeout = 5000
+ distributed.commandLongTaskTimeout = 86400000
+ distributed.deployDbTaskTimeout = 1200000
+ distributed.deployChunkTaskTimeout = 60000
+ distributed.deployDbTaskCompression = 7
+ distributed.asynchQueueSize = 0
+ distributed.asynchResponsesTimeout = 15000
+ distributed.purgeResponsesTimerDelay = 15000
+ distributed.conflictResolverRepairerChain =
quorum,content,majority,version
+ distributed.conflictResolverRepairerCheckEvery = 5000
+ distributed.conflictResolverRepairerBatch = 50
+ distributed.txAliveTimeout = 30000
+ distributed.requestChannels = 1
+ distributed.responseChannels = 1
+ distributed.queueTimeout = 15000
+ distributed.heartbeatTimeout = 10000
+ distributed.checkHealthCanOfflineServer = false
+ distributed.checkHealthEvery = 10000
+ distributed.autoRemoveOfflineServers = 0
+ distributed.publishNodeStatusEvery = 10000
+ distributed.localQueueSize = 10000
+ distributed.dbWorkerThreads = 0
+ distributed.queueMaxSize = 10000
+ distributed.backupDirectory = ../backup/databases
+ distributed.backupTryIncrementalFirst = true
+ distributed.checkIntegrityLastTxs = 16
+ distributed.concurrentTxMaxAutoRetry = 15
+ distributed.atomicLockTimeout = 1000
+ distributed.concurrentTxAutoRetryDelay = 10
- DB
+ db.document.serializer = ORecordSerializerBinary
- CLIENT
+ client.krb5.config = null
+ client.krb5.ccname = null
+ client.krb5.ktname = null
+ client.credentialinterceptor = null
+ client.ci.keyalgorithm = AES
+ client.ci.ciphertransform = AES/CBC/PKCS5Padding
+ client.ci.keystore.file = null
+ client.ci.keystore.password = null
- SECURITY
+ security.createDefaultUsers = true
- SERVER
+ server.security.file = null
- ORIENT
+ orient.initInServletContextListener = true
- JNA
+ jna.disable.system.library = true
- DB
+ db.makeFullCheckpointOnIndexChange = true
+ db.makeFullCheckpointOnSchemaChange = true
- CLIENT
+ client.session.tokenBased = true
- OAUTH2
+ oauth2.secretkey =
- STORAGE
+ storage.cluster.usecrc32 = false
- LAZYSET
+ lazyset.workOnStream = true
- DB
+ db.mvcc = true
+ db.use.distributedVersion = false
- MVRBTREE
+ mvrbtree.timeout = 0
+ mvrbtree.nodePageSize = 256
+ mvrbtree.loadFactor = 0.7
+ mvrbtree.optimizeThreshold = 100000
+ mvrbtree.entryPoints = 64
+ mvrbtree.optimizeEntryPointsFactor = 1.0
+ mvrbtree.entryKeysInMemory = false
+ mvrbtree.entryValuesInMemory = false
+ mvrbtree.ridBinaryThreshold = -1
+ mvrbtree.ridNodePageSize = 64
+ mvrbtree.ridNodeSaveMemory = false
- TX
+ tx.commit.synch = false
+ tx.autoRetry = 1
+ tx.log.fileType = classic
+ tx.log.synch = false
+ tx.useLog = true
- INDEX
+ index.auto.rebuildAfterNotSoftClose = true
- CLIENT
+ client.channel.minPool = 50
- STORAGE
+ storage.keepOpen = true
- CACHE
+ cache.local.enabled = true
- DISTRIBUTED
+ distributed.shutdownTimeout = 2000
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to a topic in the
Google Groups "OrientDB" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/orient-database/8UE029Na4jE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Luigi Dell'Aquila
2018-09-14 08:55:55 UTC
Permalink
Hi Simon,

Ok, so it must be a bug. Could you please file an issue here
https://github.com/orientechnologies/orientdb/issues

Thanks

Luigi

Il giorno ven 14 set 2018 alle ore 09:28 'Simon Erhardt' via OrientDB <
Post by 'Simon Erhardt' via OrientDB
Hi Luigi,
yes, although we use the remote protocol, client and server are run in the
orientdb-client-2.2.34.jar
orientdb-core-2.2.34.jar
orientdb-graphdb-2.2.34.jar
orientdb-server-2.2.34.jar
orientdb-tools-2.2.34.jar
Simon
Am Fr., 14. Sep. 2018 um 07:47 Uhr schrieb Luigi Dell'Aquila <
Post by Luigi Dell'Aquila
Hi Simon,
Are you using the exact same OrientDB version on both the client and the
server?
Thanks
Luigi
Il giorno gio 13 set 2018 alle ore 14:16 'Simon Erhardt' via OrientDB <
Post by 'Simon Erhardt' via OrientDB
Hello community,
we are using OrientDB in our product, and since the update from version
2.1.15 to version 2.2.34, we have the problem described below, which occurs
sporadically.
Is there anything we can do to mitigate it or to identify the actual
error source?
We are grateful for every kind of help.
- Simon
*OrientDB release?*
2.2.34
*What steps will reproduce the problem?*
Unknown - our attempts to reproduce the problem have been very
unsatisfying yet. Nonetheless, the problem occurs again and again (without
a recognizable pattern), in different runtime environments of different
customers, and in different situations. It seems to happen in random
situations when the database is accessed. It happens that one query is
successful, and the next one fails (with the error below), and then every
subsequent query also fails.
Caused by: com.orientechnologies.common.io.OIOException: com.o;
serializable and externalizable flags conflict
at
com.orientechnologies.orient.client.remote.OStorageRemote.handleIOException(OStorageRemote.java:321)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:292)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetry(OStorageRemote.java:204)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperation(OStorageRemote.java:215)
at
com.orientechnologies.orient.client.remote.OStorageRemote.command(OStorageRemote.java:1187)
at
com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:69)
at
com.tinkerpop.blueprints.impls.orient.OrientGraphCommand.execute(OrientGraphCommand.java:49)
at com.mycompany.BaseDAOImpl.query(OrientConnection.java:188)
... 13 common frames omitted
Caused by: java.io.InvalidClassException: com.o; serializable and
externalizable flags conflict
at java.base/java.io.ObjectStreamClass.readNonProxy(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDescriptor(Unknown Source)
at java.base/java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:436)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:400)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:283)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:167)
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:2365)
at
com.orientechnologies.orient.client.remote.OStorageRemote$27.execute(OStorageRemote.java:1211)
at
com.orientechnologies.orient.client.remote.OStorageRemote$2.execute(OStorageRemote.java:207)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:252)
... 19 common frames omitted
public Iterable<Vertex> query(String query, Object... params) throws
PersistenceException {
OrientBaseGraph graph = OrientGraph.getActiveGraph();
try {
OCommandSQL command = new OCommandSQL(query);
graph.clearCache();
return graph.command(command).execute(params);
} catch (Exception e) {
throw new PersistenceException("Query triggered an exception", e);
}
}
OrientGraphFactory factory = new
OrientGraphFactory("remote:localhost/mydb", user, password).setupPool(10,
50);
setRequireTransaction(true);
setAutoStartTx(false);
OrientGraph db = factory.getTx();
...
baseDAO.query("select from MyClass");
...
db.shutdown();
*If you're using custom settings please provide them below (to dump all
the settings run the application using the JVM
argument -Denvironment.dumpCfgAtStartup=true):*
OrientDB 2.2.34 (build f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch
- ENVIRONMENT
+ environment.dumpCfgAtStartup = true
+ environment.concurrent = true
+ environment.lockManager.concurrency.level = 64
+ environment.allowJVMShutdown = true
- SCRIPT
+ script.pool.maxSize = 20
- MEMORY
+ memory.useUnsafe = true
+ memory.chunk.size = 2147483647
+ memory.directMemory.safeMode = true
+ memory.directMemory.trackMode = false
+ memory.directMemory.onlyAlignedMemoryAccess = true
- JVM
+ jvm.gc.delayForOptimize = 600
- STORAGE
+ storage.openFiles.limit = 512
+ storage.componentsLock.cache = 10000
+ storage.diskCache.pinnedPages = 20
+ storage.diskCache.bufferSize = 4054
+ storage.diskCache.writeCachePart = 15
+ storage.diskCache.writeCachePageTTL = 86400
+ storage.diskCache.writeCachePageFlushInterval = 25
+ storage.diskCache.writeCacheFlushInactivityInterval = 60000
+ storage.diskCache.writeCacheFlushLockTimeout = -1
+ storage.diskCache.diskFreeSpaceCheckInterval = 5
+ storage.diskCache.diskFreeSpaceCheckIntervalInPages = 2048
+ storage.diskCache.keepState = true
+ storage.diskCache.checksumMode = StoreAndSwitchReadOnlyMode
+ storage.configuration.syncOnUpdate = true
+ storage.compressionMethod = nothing
+ storage.encryptionMethod = nothing
+ storage.encryptionKey = <hidden>
+ storage.makeFullCheckpointAfterCreate = false
+ storage.makeFullCheckpointAfterOpen = false
+ storage.makeFullCheckpointAfterClusterCreate = true
+ storage.trackChangedRecordsInWAL = false
+ storage.useWAL = true
+ storage.wal.syncOnPageFlush = true
+ storage.wal.cacheSize = 3000
+ storage.wal.fileAutoCloseInterval = 10
+ storage.wal.maxSegmentSize = 128
+ storage.wal.maxSize = 4096
+ storage.wal.commitTimeout = 1000
+ storage.wal.shutdownTimeout = 10000
+ storage.wal.fuzzyCheckpointInterval = 300
+ storage.wal.reportAfterOperationsDuringRestore = 10000
+ storage.wal.restore.batchSize = 50000
+ storage.wal.readCacheSize = 1000
+ storage.wal.fuzzyCheckpointShutdownWait = 600
+ storage.wal.fullCheckpointShutdownTimeout = 600
+ storage.wal.path = null
+ storage.diskCache.pageSize = 64
+ storage.diskCache.diskFreeSpaceLimit = 256
+ storage.lowestFreeListBound = 16
+ storage.lockTimeout = 0
+ storage.record.lockTimeout = 2000
+ storage.useTombstones = false
- RECORD
+ record.downsizing.enabled = true
- OBJECT
+ object.saveOnlyDirty = false
- DB
+ db.pool.min = 50
+ db.pool.max = 100
+ db.pool.idleTimeout = 0
+ db.pool.idleCheckDelay = 0
+ db.mvcc.throwfast = false
+ db.validation = true
- NONTX
+ nonTX.recordUpdate.synch = false
+ nonTX.clusters.sync.immediately = manindex
- TX
+ tx.trackAtomicOperations = false
+ tx.pageCacheSize = 12
- INDEX
+ index.embeddedToSbtreeBonsaiThreshold = 40
+ index.sbtreeBonsaiToEmbeddedThreshold = -1
- HASHTABLE
+ hashTable.slitBucketsBuffer.length = 1500
- INDEX
+ index.auto.synchronousAutoRebuild = true
+ index.auto.lazyUpdates = 10000
+ index.flushAfterCreate = true
+ index.manual.lazyUpdates = 1
+ index.durableInNonTxMode = true
+ index.ignoreNullValuesDefault = false
+ index.txMode = FULL
+ index.cursor.prefetchSize = 10000
- SBTREE
+ sbtree.maxDepth = 64
+ sbtree.maxKeySize = 10240
+ sbtree.maxEmbeddedValueSize = 40960
- SBTREEBONSAI
+ sbtreebonsai.bucketSize = 2
+ sbtreebonsai.linkBagCache.size = 100000
+ sbtreebonsai.linkBagCache.evictionSize = 1000
+ sbtreebonsai.freeSpaceReuseTrigger = 0.5
- RIDBAG
+ ridBag.embeddedDefaultSize = 4
+ ridBag.embeddedToSbtreeBonsaiThreshold = 40
+ ridBag.sbtreeBonsaiToEmbeddedToThreshold = -1
- COLLECTIONS
+ collections.preferSBTreeSet = false
- FILE
+ file.trackFileClose = false
+ file.lock = true
+ file.deleteDelay = 10
+ file.deleteRetry = 50
- SECURITY
+ security.userPasswordSaltIterations = 65536
+ security.userPasswordSaltCacheSize = 500
+ security.userPasswordDefaultAlgorithm = PBKDF2WithHmacSHA256
- NETWORK
+ network.maxConcurrentSessions = 1000
+ network.socketBufferSize = 0
+ network.lockTimeout = 15000
+ network.socketTimeout = 15000
+ network.requestTimeout = 3600000
+ network.retry.strategy = auto
+ network.retry = 5
+ network.retryDelay = 500
+ network.binary.loadBalancing.enabled = false
+ network.binary.loadBalancing.timeout = 2000
+ network.binary.maxLength = 16384
+ network.binary.readResponse.maxTimes = 20
+ network.binary.debug = false
+ network.http.installDefaultCommands = true
+ network.http.serverInfo = OrientDB Server v.2.2.34 (build
f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch 2.2.x)
+ network.http.maxLength = 1000000
+ network.http.streaming = false
+ network.http.charset = utf-8
+ network.http.jsonResponseError = true
+ network.http.jsonp = false
+ network.http.sessionExpireTimeout = 300
+ network.http.useToken = false
+ network.token.secretKey =
+ network.token.encryptionAlgorithm = HmacSHA256
+ network.token.expireTimeout = 60
- PROFILER
+ profiler.enabled = false
+ profiler.config = null
+ profiler.autoDump.interval = 0
+ profiler.autoDump.type = full
+ profiler.maxValues = 200
+ profiler.memoryCheckInterval = 120000
- SEQUENCE
+ sequence.maxRetry = 100
+ sequence.retryDelay = 200
- STORAGEPROFILER
+ storageProfiler.intervalBetweenSnapshots = 100
+ storageProfiler.cleanUpInterval = 5000
- LOG
+ log.console.level = info
+ log.file.level = fine
- CLASS
+ class.minimumClusters = 0
- LOG
+ log.console.ansi = auto
- CACHE
+ cache.local.impl =
com.orientechnologies.orient.core.cache.ORecordCacheWeakRefs
- COMMAND
+ command.timeout = 0
+ command.cache.enabled = false
+ command.cache.evictStrategy = PER_CLUSTER
+ command.cache.minExecutionTime = 10
+ command.cache.maxResultsetSize = 500
- QUERY
+ query.useSoftReferencesInResultSet = false
+ query.parallelAuto = false
+ query.parallelMinimumRecords = 300000
+ query.parallelResultQueueSize = 20000
+ query.scanPrefetchPages = 20
+ query.scanBatchSize = 1000
+ query.scanThresholdTip = 50000
+ query.limitThresholdTip = 10000
+ query.live.support = true
+ query.timeout.defaultStrategy = EXCEPTION
- LUCENE
+ lucene.query.pageSize = 10000
- STATEMENT
+ statement.cacheSize = 100
- SQL
+ sql.graphConsistencyMode = tx
- CLIENT
+ client.channel.maxPool = 200
+ client.connectionPool.waitTimeout = 5000
+ client.channel.dbReleaseWaitTimeout = 10000
+ client.ssl.enabled = false
+ client.ssl.keyStore = null
+ client.ssl.keyStorePass = null
+ client.ssl.trustStore = null
+ client.ssl.trustStorePass = null
- SERVER
+ server.openAllDatabasesAtStartup = false
+ server.channel.cleanDelay = 5000
+ server.cache.staticFile = false
+ server.log.dumpClientExceptionLevel = FINE
+ server.log.dumpClientExceptionFullStackTrace = false
- DISTRIBUTED
+ distributed.dumpStatsEvery = 0
+ distributed.crudTaskTimeout = 10000
+ distributed.maxStartupDelay = 10000
+ distributed.commandTaskTimeout = 120000
+ distributed.commandQuickTaskTimeout = 5000
+ distributed.commandLongTaskTimeout = 86400000
+ distributed.deployDbTaskTimeout = 1200000
+ distributed.deployChunkTaskTimeout = 60000
+ distributed.deployDbTaskCompression = 7
+ distributed.asynchQueueSize = 0
+ distributed.asynchResponsesTimeout = 15000
+ distributed.purgeResponsesTimerDelay = 15000
+ distributed.conflictResolverRepairerChain =
quorum,content,majority,version
+ distributed.conflictResolverRepairerCheckEvery = 5000
+ distributed.conflictResolverRepairerBatch = 50
+ distributed.txAliveTimeout = 30000
+ distributed.requestChannels = 1
+ distributed.responseChannels = 1
+ distributed.queueTimeout = 15000
+ distributed.heartbeatTimeout = 10000
+ distributed.checkHealthCanOfflineServer = false
+ distributed.checkHealthEvery = 10000
+ distributed.autoRemoveOfflineServers = 0
+ distributed.publishNodeStatusEvery = 10000
+ distributed.localQueueSize = 10000
+ distributed.dbWorkerThreads = 0
+ distributed.queueMaxSize = 10000
+ distributed.backupDirectory = ../backup/databases
+ distributed.backupTryIncrementalFirst = true
+ distributed.checkIntegrityLastTxs = 16
+ distributed.concurrentTxMaxAutoRetry = 15
+ distributed.atomicLockTimeout = 1000
+ distributed.concurrentTxAutoRetryDelay = 10
- DB
+ db.document.serializer = ORecordSerializerBinary
- CLIENT
+ client.krb5.config = null
+ client.krb5.ccname = null
+ client.krb5.ktname = null
+ client.credentialinterceptor = null
+ client.ci.keyalgorithm = AES
+ client.ci.ciphertransform = AES/CBC/PKCS5Padding
+ client.ci.keystore.file = null
+ client.ci.keystore.password = null
- SECURITY
+ security.createDefaultUsers = true
- SERVER
+ server.security.file = null
- ORIENT
+ orient.initInServletContextListener = true
- JNA
+ jna.disable.system.library = true
- DB
+ db.makeFullCheckpointOnIndexChange = true
+ db.makeFullCheckpointOnSchemaChange = true
- CLIENT
+ client.session.tokenBased = true
- OAUTH2
+ oauth2.secretkey =
- STORAGE
+ storage.cluster.usecrc32 = false
- LAZYSET
+ lazyset.workOnStream = true
- DB
+ db.mvcc = true
+ db.use.distributedVersion = false
- MVRBTREE
+ mvrbtree.timeout = 0
+ mvrbtree.nodePageSize = 256
+ mvrbtree.loadFactor = 0.7
+ mvrbtree.optimizeThreshold = 100000
+ mvrbtree.entryPoints = 64
+ mvrbtree.optimizeEntryPointsFactor = 1.0
+ mvrbtree.entryKeysInMemory = false
+ mvrbtree.entryValuesInMemory = false
+ mvrbtree.ridBinaryThreshold = -1
+ mvrbtree.ridNodePageSize = 64
+ mvrbtree.ridNodeSaveMemory = false
- TX
+ tx.commit.synch = false
+ tx.autoRetry = 1
+ tx.log.fileType = classic
+ tx.log.synch = false
+ tx.useLog = true
- INDEX
+ index.auto.rebuildAfterNotSoftClose = true
- CLIENT
+ client.channel.minPool = 50
- STORAGE
+ storage.keepOpen = true
- CACHE
+ cache.local.enabled = true
- DISTRIBUTED
+ distributed.shutdownTimeout = 2000
--
---
You received this message because you are subscribed to the Google
Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to a topic in the
Google Groups "OrientDB" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/orient-database/8UE029Na4jE/unsubscribe
.
To unsubscribe from this group and all its topics, send an email to
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
'Simon Erhardt' via OrientDB
2018-09-14 10:01:51 UTC
Permalink
Thank you Luigi, for looking at it. I filed this one:
https://github.com/orientechnologies/orientdb/issues/8537.

Simon

Am Fr., 14. Sep. 2018 um 10:56 Uhr schrieb Luigi Dell'Aquila <
Post by Luigi Dell'Aquila
Hi Simon,
Ok, so it must be a bug. Could you please file an issue here
https://github.com/orientechnologies/orientdb/issues
Thanks
Luigi
Il giorno ven 14 set 2018 alle ore 09:28 'Simon Erhardt' via OrientDB <
Post by 'Simon Erhardt' via OrientDB
Hi Luigi,
yes, although we use the remote protocol, client and server are run in
orientdb-client-2.2.34.jar
orientdb-core-2.2.34.jar
orientdb-graphdb-2.2.34.jar
orientdb-server-2.2.34.jar
orientdb-tools-2.2.34.jar
Simon
Am Fr., 14. Sep. 2018 um 07:47 Uhr schrieb Luigi Dell'Aquila <
Post by Luigi Dell'Aquila
Hi Simon,
Are you using the exact same OrientDB version on both the client and the
server?
Thanks
Luigi
Il giorno gio 13 set 2018 alle ore 14:16 'Simon Erhardt' via OrientDB <
Post by 'Simon Erhardt' via OrientDB
Hello community,
we are using OrientDB in our product, and since the update from version
2.1.15 to version 2.2.34, we have the problem described below, which occurs
sporadically.
Is there anything we can do to mitigate it or to identify the actual
error source?
We are grateful for every kind of help.
- Simon
*OrientDB release?*
2.2.34
*What steps will reproduce the problem?*
Unknown - our attempts to reproduce the problem have been very
unsatisfying yet. Nonetheless, the problem occurs again and again (without
a recognizable pattern), in different runtime environments of different
customers, and in different situations. It seems to happen in random
situations when the database is accessed. It happens that one query is
successful, and the next one fails (with the error below), and then every
subsequent query also fails.
Caused by: com.orientechnologies.common.io.OIOException: com.o;
serializable and externalizable flags conflict
at
com.orientechnologies.orient.client.remote.OStorageRemote.handleIOException(OStorageRemote.java:321)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:292)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetry(OStorageRemote.java:204)
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperation(OStorageRemote.java:215)
at
com.orientechnologies.orient.client.remote.OStorageRemote.command(OStorageRemote.java:1187)
at
com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:69)
at
com.tinkerpop.blueprints.impls.orient.OrientGraphCommand.execute(OrientGraphCommand.java:49)
at com.mycompany.BaseDAOImpl.query(OrientConnection.java:188)
... 13 common frames omitted
Caused by: java.io.InvalidClassException: com.o; serializable and
externalizable flags conflict
at java.base/java.io.ObjectStreamClass.readNonProxy(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDescriptor(Unknown Source)
at java.base/java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:436)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:400)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:283)
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:167)
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:2365)
at
com.orientechnologies.orient.client.remote.OStorageRemote$27.execute(OStorageRemote.java:1211)
at
com.orientechnologies.orient.client.remote.OStorageRemote$2.execute(OStorageRemote.java:207)
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:252)
... 19 common frames omitted
public Iterable<Vertex> query(String query, Object... params) throws
PersistenceException {
OrientBaseGraph graph = OrientGraph.getActiveGraph();
try {
OCommandSQL command = new OCommandSQL(query);
graph.clearCache();
return graph.command(command).execute(params);
} catch (Exception e) {
throw new PersistenceException("Query triggered an exception", e);
}
}
OrientGraphFactory factory = new
OrientGraphFactory("remote:localhost/mydb", user, password).setupPool(10,
50);
setRequireTransaction(true);
setAutoStartTx(false);
OrientGraph db = factory.getTx();
...
baseDAO.query("select from MyClass");
...
db.shutdown();
*If you're using custom settings please provide them below (to dump all
the settings run the application using the JVM
argument -Denvironment.dumpCfgAtStartup=true):*
OrientDB 2.2.34 (build f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch
- ENVIRONMENT
+ environment.dumpCfgAtStartup = true
+ environment.concurrent = true
+ environment.lockManager.concurrency.level = 64
+ environment.allowJVMShutdown = true
- SCRIPT
+ script.pool.maxSize = 20
- MEMORY
+ memory.useUnsafe = true
+ memory.chunk.size = 2147483647
+ memory.directMemory.safeMode = true
+ memory.directMemory.trackMode = false
+ memory.directMemory.onlyAlignedMemoryAccess = true
- JVM
+ jvm.gc.delayForOptimize = 600
- STORAGE
+ storage.openFiles.limit = 512
+ storage.componentsLock.cache = 10000
+ storage.diskCache.pinnedPages = 20
+ storage.diskCache.bufferSize = 4054
+ storage.diskCache.writeCachePart = 15
+ storage.diskCache.writeCachePageTTL = 86400
+ storage.diskCache.writeCachePageFlushInterval = 25
+ storage.diskCache.writeCacheFlushInactivityInterval = 60000
+ storage.diskCache.writeCacheFlushLockTimeout = -1
+ storage.diskCache.diskFreeSpaceCheckInterval = 5
+ storage.diskCache.diskFreeSpaceCheckIntervalInPages = 2048
+ storage.diskCache.keepState = true
+ storage.diskCache.checksumMode = StoreAndSwitchReadOnlyMode
+ storage.configuration.syncOnUpdate = true
+ storage.compressionMethod = nothing
+ storage.encryptionMethod = nothing
+ storage.encryptionKey = <hidden>
+ storage.makeFullCheckpointAfterCreate = false
+ storage.makeFullCheckpointAfterOpen = false
+ storage.makeFullCheckpointAfterClusterCreate = true
+ storage.trackChangedRecordsInWAL = false
+ storage.useWAL = true
+ storage.wal.syncOnPageFlush = true
+ storage.wal.cacheSize = 3000
+ storage.wal.fileAutoCloseInterval = 10
+ storage.wal.maxSegmentSize = 128
+ storage.wal.maxSize = 4096
+ storage.wal.commitTimeout = 1000
+ storage.wal.shutdownTimeout = 10000
+ storage.wal.fuzzyCheckpointInterval = 300
+ storage.wal.reportAfterOperationsDuringRestore = 10000
+ storage.wal.restore.batchSize = 50000
+ storage.wal.readCacheSize = 1000
+ storage.wal.fuzzyCheckpointShutdownWait = 600
+ storage.wal.fullCheckpointShutdownTimeout = 600
+ storage.wal.path = null
+ storage.diskCache.pageSize = 64
+ storage.diskCache.diskFreeSpaceLimit = 256
+ storage.lowestFreeListBound = 16
+ storage.lockTimeout = 0
+ storage.record.lockTimeout = 2000
+ storage.useTombstones = false
- RECORD
+ record.downsizing.enabled = true
- OBJECT
+ object.saveOnlyDirty = false
- DB
+ db.pool.min = 50
+ db.pool.max = 100
+ db.pool.idleTimeout = 0
+ db.pool.idleCheckDelay = 0
+ db.mvcc.throwfast = false
+ db.validation = true
- NONTX
+ nonTX.recordUpdate.synch = false
+ nonTX.clusters.sync.immediately = manindex
- TX
+ tx.trackAtomicOperations = false
+ tx.pageCacheSize = 12
- INDEX
+ index.embeddedToSbtreeBonsaiThreshold = 40
+ index.sbtreeBonsaiToEmbeddedThreshold = -1
- HASHTABLE
+ hashTable.slitBucketsBuffer.length = 1500
- INDEX
+ index.auto.synchronousAutoRebuild = true
+ index.auto.lazyUpdates = 10000
+ index.flushAfterCreate = true
+ index.manual.lazyUpdates = 1
+ index.durableInNonTxMode = true
+ index.ignoreNullValuesDefault = false
+ index.txMode = FULL
+ index.cursor.prefetchSize = 10000
- SBTREE
+ sbtree.maxDepth = 64
+ sbtree.maxKeySize = 10240
+ sbtree.maxEmbeddedValueSize = 40960
- SBTREEBONSAI
+ sbtreebonsai.bucketSize = 2
+ sbtreebonsai.linkBagCache.size = 100000
+ sbtreebonsai.linkBagCache.evictionSize = 1000
+ sbtreebonsai.freeSpaceReuseTrigger = 0.5
- RIDBAG
+ ridBag.embeddedDefaultSize = 4
+ ridBag.embeddedToSbtreeBonsaiThreshold = 40
+ ridBag.sbtreeBonsaiToEmbeddedToThreshold = -1
- COLLECTIONS
+ collections.preferSBTreeSet = false
- FILE
+ file.trackFileClose = false
+ file.lock = true
+ file.deleteDelay = 10
+ file.deleteRetry = 50
- SECURITY
+ security.userPasswordSaltIterations = 65536
+ security.userPasswordSaltCacheSize = 500
+ security.userPasswordDefaultAlgorithm = PBKDF2WithHmacSHA256
- NETWORK
+ network.maxConcurrentSessions = 1000
+ network.socketBufferSize = 0
+ network.lockTimeout = 15000
+ network.socketTimeout = 15000
+ network.requestTimeout = 3600000
+ network.retry.strategy = auto
+ network.retry = 5
+ network.retryDelay = 500
+ network.binary.loadBalancing.enabled = false
+ network.binary.loadBalancing.timeout = 2000
+ network.binary.maxLength = 16384
+ network.binary.readResponse.maxTimes = 20
+ network.binary.debug = false
+ network.http.installDefaultCommands = true
+ network.http.serverInfo = OrientDB Server v.2.2.34 (build
f340442755a31eabc91b87cb3ef99eda5cee6ebd, branch 2.2.x)
+ network.http.maxLength = 1000000
+ network.http.streaming = false
+ network.http.charset = utf-8
+ network.http.jsonResponseError = true
+ network.http.jsonp = false
+ network.http.sessionExpireTimeout = 300
+ network.http.useToken = false
+ network.token.secretKey =
+ network.token.encryptionAlgorithm = HmacSHA256
+ network.token.expireTimeout = 60
- PROFILER
+ profiler.enabled = false
+ profiler.config = null
+ profiler.autoDump.interval = 0
+ profiler.autoDump.type = full
+ profiler.maxValues = 200
+ profiler.memoryCheckInterval = 120000
- SEQUENCE
+ sequence.maxRetry = 100
+ sequence.retryDelay = 200
- STORAGEPROFILER
+ storageProfiler.intervalBetweenSnapshots = 100
+ storageProfiler.cleanUpInterval = 5000
- LOG
+ log.console.level = info
+ log.file.level = fine
- CLASS
+ class.minimumClusters = 0
- LOG
+ log.console.ansi = auto
- CACHE
+ cache.local.impl =
com.orientechnologies.orient.core.cache.ORecordCacheWeakRefs
- COMMAND
+ command.timeout = 0
+ command.cache.enabled = false
+ command.cache.evictStrategy = PER_CLUSTER
+ command.cache.minExecutionTime = 10
+ command.cache.maxResultsetSize = 500
- QUERY
+ query.useSoftReferencesInResultSet = false
+ query.parallelAuto = false
+ query.parallelMinimumRecords = 300000
+ query.parallelResultQueueSize = 20000
+ query.scanPrefetchPages = 20
+ query.scanBatchSize = 1000
+ query.scanThresholdTip = 50000
+ query.limitThresholdTip = 10000
+ query.live.support = true
+ query.timeout.defaultStrategy = EXCEPTION
- LUCENE
+ lucene.query.pageSize = 10000
- STATEMENT
+ statement.cacheSize = 100
- SQL
+ sql.graphConsistencyMode = tx
- CLIENT
+ client.channel.maxPool = 200
+ client.connectionPool.waitTimeout = 5000
+ client.channel.dbReleaseWaitTimeout = 10000
+ client.ssl.enabled = false
+ client.ssl.keyStore = null
+ client.ssl.keyStorePass = null
+ client.ssl.trustStore = null
+ client.ssl.trustStorePass = null
- SERVER
+ server.openAllDatabasesAtStartup = false
+ server.channel.cleanDelay = 5000
+ server.cache.staticFile = false
+ server.log.dumpClientExceptionLevel = FINE
+ server.log.dumpClientExceptionFullStackTrace = false
- DISTRIBUTED
+ distributed.dumpStatsEvery = 0
+ distributed.crudTaskTimeout = 10000
+ distributed.maxStartupDelay = 10000
+ distributed.commandTaskTimeout = 120000
+ distributed.commandQuickTaskTimeout = 5000
+ distributed.commandLongTaskTimeout = 86400000
+ distributed.deployDbTaskTimeout = 1200000
+ distributed.deployChunkTaskTimeout = 60000
+ distributed.deployDbTaskCompression = 7
+ distributed.asynchQueueSize = 0
+ distributed.asynchResponsesTimeout = 15000
+ distributed.purgeResponsesTimerDelay = 15000
+ distributed.conflictResolverRepairerChain =
quorum,content,majority,version
+ distributed.conflictResolverRepairerCheckEvery = 5000
+ distributed.conflictResolverRepairerBatch = 50
+ distributed.txAliveTimeout = 30000
+ distributed.requestChannels = 1
+ distributed.responseChannels = 1
+ distributed.queueTimeout = 15000
+ distributed.heartbeatTimeout = 10000
+ distributed.checkHealthCanOfflineServer = false
+ distributed.checkHealthEvery = 10000
+ distributed.autoRemoveOfflineServers = 0
+ distributed.publishNodeStatusEvery = 10000
+ distributed.localQueueSize = 10000
+ distributed.dbWorkerThreads = 0
+ distributed.queueMaxSize = 10000
+ distributed.backupDirectory = ../backup/databases
+ distributed.backupTryIncrementalFirst = true
+ distributed.checkIntegrityLastTxs = 16
+ distributed.concurrentTxMaxAutoRetry = 15
+ distributed.atomicLockTimeout = 1000
+ distributed.concurrentTxAutoRetryDelay = 10
- DB
+ db.document.serializer = ORecordSerializerBinary
- CLIENT
+ client.krb5.config = null
+ client.krb5.ccname = null
+ client.krb5.ktname = null
+ client.credentialinterceptor = null
+ client.ci.keyalgorithm = AES
+ client.ci.ciphertransform = AES/CBC/PKCS5Padding
+ client.ci.keystore.file = null
+ client.ci.keystore.password = null
- SECURITY
+ security.createDefaultUsers = true
- SERVER
+ server.security.file = null
- ORIENT
+ orient.initInServletContextListener = true
- JNA
+ jna.disable.system.library = true
- DB
+ db.makeFullCheckpointOnIndexChange = true
+ db.makeFullCheckpointOnSchemaChange = true
- CLIENT
+ client.session.tokenBased = true
- OAUTH2
+ oauth2.secretkey =
- STORAGE
+ storage.cluster.usecrc32 = false
- LAZYSET
+ lazyset.workOnStream = true
- DB
+ db.mvcc = true
+ db.use.distributedVersion = false
- MVRBTREE
+ mvrbtree.timeout = 0
+ mvrbtree.nodePageSize = 256
+ mvrbtree.loadFactor = 0.7
+ mvrbtree.optimizeThreshold = 100000
+ mvrbtree.entryPoints = 64
+ mvrbtree.optimizeEntryPointsFactor = 1.0
+ mvrbtree.entryKeysInMemory = false
+ mvrbtree.entryValuesInMemory = false
+ mvrbtree.ridBinaryThreshold = -1
+ mvrbtree.ridNodePageSize = 64
+ mvrbtree.ridNodeSaveMemory = false
- TX
+ tx.commit.synch = false
+ tx.autoRetry = 1
+ tx.log.fileType = classic
+ tx.log.synch = false
+ tx.useLog = true
- INDEX
+ index.auto.rebuildAfterNotSoftClose = true
- CLIENT
+ client.channel.minPool = 50
- STORAGE
+ storage.keepOpen = true
- CACHE
+ cache.local.enabled = true
- DISTRIBUTED
+ distributed.shutdownTimeout = 2000
--
---
You received this message because you are subscribed to the Google
Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to a topic in the
Google Groups "OrientDB" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/orient-database/8UE029Na4jE/unsubscribe
.
To unsubscribe from this group and all its topics, send an email to
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to a topic in the
Google Groups "OrientDB" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/orient-database/8UE029Na4jE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...