{"action":"created","issue":{"url":"https://api.github.com/repos/neo4j/neo4j/issues/11946","repository_url":"https://api.github.com/repos/neo4j/neo4j","labels_url":"https://api.github.com/repos/neo4j/neo4j/issues/11946/labels{/name}","comments_url":"https://api.github.com/repos/neo4j/neo4j/issues/11946/comments","events_url":"https://api.github.com/repos/neo4j/neo4j/issues/11946/events","html_url":"https://github.com/neo4j/neo4j/issues/11946","id":333062625,"node_id":"MDU6SXNzdWUzMzMwNjI2MjU=","number":11946,"title":"Neo4j 3.4 Enterprise: Incremental Online backup fails with FileAlreadyExistsException","user":{"login":"billscheidel","id":23562672,"node_id":"MDQ6VXNlcjIzNTYyNjcy","avatar_url":"https://avatars3.githubusercontent.com/u/23562672?v=4","gravatar_id":"","url":"https://api.github.com/users/billscheidel","html_url":"https://github.com/billscheidel","followers_url":"https://api.github.com/users/billscheidel/followers","following_url":"https://api.github.com/users/billscheidel/following{/other_user}","gists_url":"https://api.github.com/users/billscheidel/gists{/gist_id}","starred_url":"https://api.github.com/users/billscheidel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/billscheidel/subscriptions","organizations_url":"https://api.github.com/users/billscheidel/orgs","repos_url":"https://api.github.com/users/billscheidel/repos","events_url":"https://api.github.com/users/billscheidel/events{/privacy}","received_events_url":"https://api.github.com/users/billscheidel/received_events","type":"User","site_admin":false},"labels":[{"id":695463446,"node_id":"MDU6TGFiZWw2OTU0NjM0NDY=","url":"https://api.github.com/repos/neo4j/neo4j/labels/3.4","name":"3.4","color":"f9d0c4","default":false},{"id":647068085,"node_id":"MDU6TGFiZWw2NDcwNjgwODU=","url":"https://api.github.com/repos/neo4j/neo4j/labels/team-kernel","name":"team-kernel","color":"0052cc","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":17,"created_at":"2018-06-17T13:24:47Z","updated_at":"2018-10-22T08:09:40Z","closed_at":null,"author_association":"NONE","body":"I recently upgraded to 3.4 and incremental online backups are no longer working. If the named backup folder does not exist, the backup is created as expected. If the named backup already exists, the backup fails instead of doing an incremental backup.\r\n\r\n**Neo4j Version:** 3.4 Enterprise Edition\r\n**Operating System:** Ubuntu 16.04  \r\n**API:** neo4j-admin\r\n\r\n### Steps to reproduce\r\nRun the following command twice, once to do a full backup and the second time should do an incremental backup.\r\n\r\n````\r\n/usr/share/neo4j/bin/neo4j-admin backup --from localhost:6362 --backup-dir /var/backups/neo4j --name neo4j-backup --check-consistency true\r\n````\r\n\r\n### Expected behavior\r\nSecond incremental backup should succeed.\r\n\r\n### Actual behavior\r\n\r\n````\r\norg.neo4j.commandline.admin.CommandFailed: Failed to run a backup using the available strategies.\r\n  at org.neo4j.backup.impl.BackupStrategyCoordinator.performBackup(BackupStrategyCoordinator.java:99)\r\n  at org.neo4j.backup.impl.OnlineBackupCommand.execute(OnlineBackupCommand.java:74)\r\n  at org.neo4j.commandline.admin.AdminTool.execute(AdminTool.java:127)\r\n  at org.neo4j.commandline.admin.AdminTool.main(AdminTool.java:51)\r\n  Suppressed: org.neo4j.causalclustering.catchup.storecopy.StoreIdDownloadFailedException: org.neo4j.causalclustering.catchup.CatchUpClientException: Completed exceptionally when executing operation org.neo4j.causalclustering.catchup.storecopy.GetStoreIdRequest@431cd9b2 on localhost:6362 \r\n    at org.neo4j.causalclustering.catchup.storecopy.StoreCopyClient.fetchStoreId(StoreCopyClient.java:193)\r\n    at org.neo4j.backup.impl.BackupDelegator.fetchStoreId(BackupDelegator.java:87)\r\n    at org.neo4j.backup.impl.CausalClusteringBackupStrategy.performIncrementalBackup(CausalClusteringBackupStrategy.java:103)\r\n    at org.neo4j.backup.impl.BackupStrategyWrapper.performBackupWithoutLifecycle(BackupStrategyWrapper.java:91)\r\n    at org.neo4j.backup.impl.BackupStrategyWrapper.doBackup(BackupStrategyWrapper.java:72)\r\n    at org.neo4j.backup.impl.BackupStrategyCoordinator.performBackup(BackupStrategyCoordinator.java:86)\r\n    ... 3 more\r\n  Caused by: org.neo4j.causalclustering.catchup.CatchUpClientException: Completed exceptionally when executing operation org.neo4j.causalclustering.catchup.storecopy.GetStoreIdRequest@431cd9b2 on localhost:6362 \r\n    at org.neo4j.causalclustering.catchup.TimeoutLoop.exception(TimeoutLoop.java:87)\r\n    at org.neo4j.causalclustering.catchup.TimeoutLoop.waitForCompletion(TimeoutLoop.java:57)\r\n    at org.neo4j.causalclustering.catchup.CatchUpClient.makeBlockingRequest(CatchUpClient.java:94)\r\n    at org.neo4j.causalclustering.catchup.storecopy.StoreCopyClient.fetchStoreId(StoreCopyClient.java:189)\r\n    ... 8 more\r\n  Caused by: java.util.concurrent.ExecutionException: java.nio.channels.ClosedChannelException\r\n    at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\r\n    at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)\r\n    at org.neo4j.causalclustering.catchup.TimeoutLoop.waitForCompletion(TimeoutLoop.java:48)\r\n    ... 10 more\r\n  Caused by: java.nio.channels.ClosedChannelException\r\n    at org.neo4j.causalclustering.catchup.TrackingResponseHandler.onClose(TrackingResponseHandler.java:146)\r\n    at org.neo4j.causalclustering.catchup.CatchUpClient$CatchUpChannel.lambda$connect$1(CatchUpClient.java:168)\r\n    at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:511)\r\n    at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:485)\r\n    at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:424)\r\n    at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:103)\r\n    at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)\r\n    at io.netty.channel.AbstractChannel$CloseFuture.setClosed(AbstractChannel.java:1148)\r\n    at io.netty.channel.AbstractChannel$AbstractUnsafe.doClose0(AbstractChannel.java:764)\r\n    at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:740)\r\n    at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:611)\r\n    at io.netty.channel.DefaultChannelPipeline$HeadContext.close(DefaultChannelPipeline.java:1376)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:608)\r\n    at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:608)\r\n    at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:608)\r\n    at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:608)\r\n    at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:608)\r\n    at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:608)\r\n    at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:465)\r\n    at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:1003)\r\n    at io.netty.channel.AbstractChannel.close(AbstractChannel.java:238)\r\n    at org.neo4j.causalclustering.protocol.NettyPipelineBuilder$1.exceptionCaught(NettyPipelineBuilder.java:237)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:285)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:264)\r\n    at io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:256)\r\n    at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:285)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:264)\r\n    at io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:256)\r\n    at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:285)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:264)\r\n    at io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:256)\r\n    at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:285)\r\n    at io.netty.channel.AbstractChannelHandlerContext.notifyHandlerException(AbstractChannelHandlerContext.java:850)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:364)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)\r\n    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)\r\n    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)\r\n    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:297)\r\n    at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:413)\r\n    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)\r\n    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)\r\n    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)\r\n    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)\r\n    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)\r\n    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)\r\n    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:645)\r\n    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580)\r\n    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497)\r\n    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459)\r\n    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)\r\n    at java.lang.Thread.run(Thread.java:748)\r\n    at org.neo4j.helpers.NamedThreadFactory$2.run(NamedThreadFactory.java:110)\r\n  Suppressed: java.io.IOException: Failed to rename backup directory from /var/backups/neo4j/neo4j-backup.temp.0 to /var/backups/neo4j/neo4j-backup\r\n    at org.neo4j.backup.impl.BackupCopyService.moveBackupLocation(BackupCopyService.java:76)\r\n    at org.neo4j.backup.impl.BackupStrategyWrapper.renameTemporaryBackupToExpected(BackupStrategyWrapper.java:174)\r\n    at org.neo4j.backup.impl.BackupStrategyWrapper.fullBackupWithTemporaryFolderResolutions(BackupStrategyWrapper.java:158)\r\n    at org.neo4j.backup.impl.BackupStrategyWrapper.performBackupWithoutLifecycle(BackupStrategyWrapper.java:111)\r\n    at org.neo4j.backup.impl.BackupStrategyWrapper.doBackup(BackupStrategyWrapper.java:72)\r\n    at org.neo4j.backup.impl.BackupStrategyCoordinator.performBackup(BackupStrategyCoordinator.java:86)\r\n    ... 3 more\r\n  Caused by: java.nio.file.FileAlreadyExistsException: /var/backups/neo4j/neo4j-backup/neostore.propertystore.db.arrays.id\r\n    at sun.nio.fs.UnixCopyFile.copy(UnixCopyFile.java:551)\r\n    at sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:253)\r\n    at java.nio.file.Files.copy(Files.java:1274)\r\n    at org.neo4j.com.storecopy.FileMoveAction$2.move(FileMoveAction.java:76)\r\n    at org.neo4j.backup.impl.BackupCopyService.moveBackupLocation(BackupCopyService.java:71)\r\n    ... 8 more\r\ncommand failed: Failed to run a backup using the available strategies.\r\n````\r\n"},"comment":{"url":"https://api.github.com/repos/neo4j/neo4j/issues/comments/431767999","html_url":"https://github.com/neo4j/neo4j/issues/11946#issuecomment-431767999","issue_url":"https://api.github.com/repos/neo4j/neo4j/issues/11946","id":431767999,"node_id":"MDEyOklzc3VlQ29tbWVudDQzMTc2Nzk5OQ==","user":{"login":"phughk","id":6785919,"node_id":"MDQ6VXNlcjY3ODU5MTk=","avatar_url":"https://avatars2.githubusercontent.com/u/6785919?v=4","gravatar_id":"","url":"https://api.github.com/users/phughk","html_url":"https://github.com/phughk","followers_url":"https://api.github.com/users/phughk/followers","following_url":"https://api.github.com/users/phughk/following{/other_user}","gists_url":"https://api.github.com/users/phughk/gists{/gist_id}","starred_url":"https://api.github.com/users/phughk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/phughk/subscriptions","organizations_url":"https://api.github.com/users/phughk/orgs","repos_url":"https://api.github.com/users/phughk/repos","events_url":"https://api.github.com/users/phughk/events{/privacy}","received_events_url":"https://api.github.com/users/phughk/received_events","type":"User","site_admin":false},"created_at":"2018-10-22T08:09:40Z","updated_at":"2018-10-22T08:09:40Z","author_association":"CONTRIBUTOR","body":"@rafaelluna @billscheidel This is included in 3.4.8 but I would recommend jumping straight to 3.4.9. Please let me know this has resolved the issue for you so that we can close this."}}
{"actor":{"display_login":"phughk"}}