[
https://issues.apache.org/jira/browse/ASTERIXDB-1114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14909567#comment-14909567
]
Murtadha Hubail commented on ASTERIXDB-1114:
--------------------------------------------
I had a reproducible scenario and figured out the exact reason behind this NPE
then fixed it. What worried me is that none of the recovery test cases caught
this, which means some of them might not be testing what they are supposed to
test. I'm going to have a look at them and add a test case if there is a need
to.
> managix stop [instance_name] throws NullPointerException during checkpoint
> --------------------------------------------------------------------------
>
> Key: ASTERIXDB-1114
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-1114
> Project: Apache AsterixDB
> Issue Type: Bug
> Reporter: Young-Seok Kim
> Assignee: Murtadha Hubail
>
> When AsterixDB instance is stopped after inserting a record, checkpoint from
> the recovery manager throws NullPointerException, which doesn't make NCDriver
> stop.
> The exception is shown below:
> INFO: Stopping NodeControllerService
> java.lang.NullPointerException
> at
> org.apache.asterix.common.context.BaseOperationTracker.beforeOperation(BaseOperationTracker.java:45)
> at
> org.apache.hyracks.storage.am.lsm.common.impls.LSMHarness.enterComponents(LSMHarness.java:178)
> at
> org.apache.hyracks.storage.am.lsm.common.impls.LSMHarness.getAndEnterComponents(LSMHarness.java:113)
> at
> org.apache.hyracks.storage.am.lsm.common.impls.LSMHarness.scheduleFlush(LSMHarness.java:376)
> at
> org.apache.hyracks.storage.am.lsm.common.impls.LSMTreeIndexAccessor.scheduleFlush(LSMTreeIndexAccessor.java:122)
> at
> org.apache.asterix.common.context.DatasetLifecycleManager.flushAndWaitForIO(DatasetLifecycleManager.java:237)
> at
> org.apache.asterix.common.context.DatasetLifecycleManager.flushDatasetOpenIndexes(DatasetLifecycleManager.java:518)
> at
> org.apache.asterix.common.context.DatasetLifecycleManager.flushAllDatasets(DatasetLifecycleManager.java:439)
> at
> org.apache.asterix.transaction.management.service.recovery.RecoveryManager.checkpoint(RecoveryManager.java:379)
> at
> org.apache.asterix.hyracks.bootstrap.NCApplicationEntryPoint.stop(NCApplicationEntryPoint.java:138)
> at
> org.apache.hyracks.control.nc.NodeControllerService.stop(NodeControllerService.java:343)
> at org.apache.hyracks.control.nc.NCDriver$1.run(NCDriver.java:53)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)