Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NullPointerException on OResultInternal when deleting vertices #9900

Closed
SirStoke opened this issue Nov 21, 2022 · 3 comments
Closed

NullPointerException on OResultInternal when deleting vertices #9900

SirStoke opened this issue Nov 21, 2022 · 3 comments
Labels
Milestone

Comments

@SirStoke
Copy link

OrientDB Version: 3.2.12

Java Version: openjdk version "11.0.17" 2022-10-18 LTS

OS: RedHat in a docker container

Expected behavior

Statement runs fine

Actual behavior

An NPE is thrown upon running a DELETE statement:

java.lang.NullPointerException: null
	at com.orientechnologies.orient.core.sql.executor.OResultInternal.hashCode(OResultInternal.java:479)
	at java.base/java.util.HashMap.hash(HashMap.java:340)
	at java.base/java.util.HashMap.containsKey(HashMap.java:592)
	at java.base/java.util.HashSet.contains(HashSet.java:204)
	at com.orientechnologies.orient.core.sql.executor.DistinctExecutionStep.alreadyVisited(DistinctExecutionStep.java:149)
	at com.orientechnologies.orient.core.sql.executor.DistinctExecutionStep.fetchNext(DistinctExecutionStep.java:105)
	at com.orientechnologies.orient.core.sql.executor.DistinctExecutionStep.access$100(DistinctExecutionStep.java:15)
	at com.orientechnologies.orient.core.sql.executor.DistinctExecutionStep$1.hasNext(DistinctExecutionStep.java:53)
	at com.orientechnologies.orient.core.sql.executor.FilterByClassStep$1.fetchNextItem(FilterByClassStep.java:50)
	at com.orientechnologies.orient.core.sql.executor.FilterByClassStep$1.hasNext(FilterByClassStep.java:82)
	at com.orientechnologies.orient.core.sql.executor.SubQueryStep$1.hasNext(SubQueryStep.java:40)
	at com.orientechnologies.orient.core.sql.executor.CastToVertexStep$1.hasNext(CastToVertexStep.java:26)
	at com.orientechnologies.orient.core.sql.executor.DeleteStep$1.hasNext(DeleteStep.java:26)
	at com.orientechnologies.orient.core.sql.executor.CountStep.syncPull(CountStep.java:50)
	at com.orientechnologies.orient.core.sql.executor.OSelectExecutionPlan.fetchNext(OSelectExecutionPlan.java:35)
	at com.orientechnologies.orient.core.sql.executor.OUpdateExecutionPlan.executeInternal(OUpdateExecutionPlan.java:41)
	at com.orientechnologies.orient.core.sql.parser.ODeleteVertexStatement.execute(ODeleteVertexStatement.java:46)
	at com.orientechnologies.orient.core.sql.parser.OStatement.execute(OStatement.java:85)
	at com.orientechnologies.orient.core.db.document.ODatabaseDocumentEmbedded.command(ODatabaseDocumentEmbedded.java:642)
	at com.orientechnologies.orient.server.OConnectionBinaryExecutor.executeQuery(OConnectionBinaryExecutor.java:1338)
	at com.orientechnologies.orient.client.remote.message.OQueryRequest.execute(OQueryRequest.java:143)
	at com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.sessionRequest(ONetworkProtocolBinary.java:355)
	at com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.execute(ONetworkProtocolBinary.java:239)
	at com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:68)
Wrapped by: com.orientechnologies.orient.core.exception.OStorageException: Error on executing command: delete vertex `GenericV` where uuid IN :UUIDs
	DB name="dbname"
	at com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:568)
	at com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetryTimeout(OStorageRemote.java:420)
	at com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationNoRetry(OStorageRemote.java:455)
	at com.orientechnologies.orient.client.remote.OStorageRemote.command(OStorageRemote.java:1204)
	at com.orientechnologies.orient.core.db.document.ODatabaseDocumentRemote.command(ODatabaseDocumentRemote.java:408)

Steps to reproduce

The issue presents intermittently upon running delete vertex `GenericV` where uuid IN :UUIDs

@tglman tglman added the bug label Nov 21, 2022
@tglman tglman added this to the 3.2.x milestone Nov 21, 2022
@tglman
Copy link
Member

tglman commented Nov 21, 2022

a commit was just pushed to cover this case, will be release next hotfix (3.2.13).

Regards

@michele-pinto-kensu
Copy link

Hi @tglman do you know already when this HF release will be released? Thanks

@tglman tglman modified the milestones: 3.2.x, 3.2.13 Dec 2, 2022
@tglman
Copy link
Member

tglman commented Dec 2, 2022

Hi,

The 3.2.13 has been shipped with the fix of this case, leaving this open for now to add additional test cases for cover the case.

Regards

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

3 participants