Skip to content

fixes bug in ondemand tablet hosting#4998

Merged
keith-turner merged 1 commit intoapache:mainfrom
keith-turner:fix-odh
Oct 18, 2024
Merged

fixes bug in ondemand tablet hosting#4998
keith-turner merged 1 commit intoapache:mainfrom
keith-turner:fix-odh

Conversation

@keith-turner
Copy link
Contributor

When a hosting request was sent to the manager and the manager determined there was nothing to do it would attempt to create a batch scanner with an empty set of ranges and this would fail. Added a check to see if the ranges were empty.

When a hosting request was sent to the manager and the manager
determined there was nothing to do it would attempt to create a batch
scanner with an empty set of ranges and this would fail.  Added a check
to see if the ranges were empty.
@keith-turner keith-turner added this to the 4.0.0 milestone Oct 18, 2024
@keith-turner
Copy link
Contributor Author

Saw the following stack trace for this bug.

java.lang.IllegalArgumentException: ranges must be non null and contain at least 1 range
	at org.apache.accumulo.core.clientImpl.TabletServerBatchReader.setRanges(TabletServerBatchReader.java:101)
	at org.apache.accumulo.server.manager.state.TabletManagementScanner.<init>(TabletManagementScanner.java:94)
	at org.apache.accumulo.server.manager.state.MetaDataStateStore.iterator(MetaDataStateStore.java:67)
	at org.apache.accumulo.server.manager.state.LoggingTabletStateStore.iterator(LoggingTabletStateStore.java:62)
	at org.apache.accumulo.manager.TabletGroupWatcher.processRanges(TabletGroupWatcher.java:321)
	at org.apache.accumulo.manager.TabletGroupWatcher.hostOndemand(TabletGroupWatcher.java:374)
	at org.apache.accumulo.manager.Manager.hostOndemand(Manager.java:565)
	at org.apache.accumulo.manager.ManagerClientServiceHandler.requestTabletHosting(ManagerClientServiceHandler.java:616)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.apache.accumulo.server.rpc.HighlyAvailableServiceInvocationHandler.invoke(HighlyAvailableServiceInvocationHandler.java:66)
	at jdk.proxy2/jdk.proxy2.$Proxy33.requestTabletHosting(Unknown Source)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.apache.accumulo.core.trace.TraceUtil.lambda$wrapService$0(TraceUtil.java:202)
	at jdk.proxy2/jdk.proxy2.$Proxy33.requestTabletHosting(Unknown Source)
	at org.apache.accumulo.core.manager.thrift.ManagerClientService$Processor$requestTabletHosting.getResult(ManagerClientService.java:2399)
	at org.apache.accumulo.core.manager.thrift.ManagerClientService$Processor$requestTabletHosting.getResult(ManagerClientService.java:2375)
	at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:40)
	at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:40)
	at org.apache.thrift.TMultiplexedProcessor.process(TMultiplexedProcessor.java:147)
	at org.apache.accumulo.server.rpc.TimedProcessor.process(TimedProcessor.java:50)
	at org.apache.thrift.server.AbstractNonblockingServer$FrameBuffer.invoke(AbstractNonblockingServer.java:492)
	at org.apache.accumulo.server.rpc.CustomNonBlockingServer$CustomFrameBuffer.invoke(CustomNonBlockingServer.java:129)
	at org.apache.thrift.server.Invocation.run(Invocation.java:18)
	at org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52)
	at java.base/java.lang.Thread.run(Thread.java:840)

@keith-turner keith-turner merged commit e41cda6 into apache:main Oct 18, 2024
@keith-turner keith-turner deleted the fix-odh branch October 18, 2024 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants