Please use the Apache issue tracking system for new NetBeans issues (https://issues.apache.org/jira/projects/NETBEANS0/issues) !!
Bug 125673 - Unhandled Error on Copy & Paste - Refactor Copy
Unhandled Error on Copy & Paste - Refactor Copy
Status: RESOLVED FIXED
Product: versioncontrol
Classification: Unclassified
Component: Mercurial
6.x
All All
: P3 (vote)
: TBD
Assigned To: issues@versioncontrol
issues@versioncontrol
:
: 125621 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-01-21 14:18 UTC by John Rice
Modified: 2008-01-22 14:32 UTC (History)
0 users

See Also:
Issue Type: DEFECT
:


Attachments
proposed patch (4.25 KB, patch)
2008-01-22 13:16 UTC, Padraig Obriain
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description John Rice 2008-01-21 14:18:27 UTC
Create a new Java project, put it under Hg control, commit all files.

Right Click on Main.java, Copy.
Right Click on Package and then select Paste -> Refactor Copy, get following output:

ERROR Command failed:
Command: [hg, rename, --repository, /export/home/jr140578/NetBeansProjects/JavaApplication41, --cwd,
/export/home/jr140578/NetBeansProjects/JavaApplication41, src/javaapplication41/Main_1.java,
src/javaapplication41/Main1.java]
Output: [src/javaapplication41/Main_1.java: not copying - file is not managed, abort: no files to copy]

The copy has worked and we should not be trying to do a rename, so something is not quite right.
Comment 1 Padraig Obriain 2008-01-21 16:03:02 UTC
I am having difficulty reproducing this. I saw it once but have not been able to reproduce it.
Comment 2 Padraig Obriain 2008-01-21 16:08:30 UTC
*** Issue 125621 has been marked as a duplicate of this issue. ***
Comment 3 Padraig Obriain 2008-01-21 16:28:41 UTC
Still intermittent. I am seeing we are in hgMoveImplementation if MercurialInterceptor.java , moving Main_1.java to
Main.java and the status of Main_1.java is reported as STATUS_VERSIONED_UPTODATE. This is wrong.
Comment 4 Padraig Obriain 2008-01-22 09:46:05 UTC
I think that the following is happening:

We get a notification of creation of Main_1.java so we call cache.refresh to update the status of the file.

While this is happening we get notification that Main_1.java has moved to Main.java. We then call hgMoveImplementation
and in there call FileStatuscache.getStatus for Main_1.java. As the cache.refresh call has not finished yet we do not
get the correct status for the file.
Comment 5 Padraig Obriain 2008-01-22 13:16:02 UTC
Created attachment 55360 [details]
proposed patch
Comment 6 Padraig Obriain 2008-01-22 13:20:28 UTC
The propsoed patch ensures that hgMoveImplementation makes the hg calls in the RequestProcessor thread so the hg calls
are serialized. We also need to wait for hgMoveImplementation to complete before continuing.
Comment 7 Padraig Obriain 2008-01-22 14:32:54 UTC
IDE:-------------------------------------------------
IDE: [1/22/08 2:31 PM] Committing "Mercurial" started
Checking in MercurialInterceptor.java;
/shared/data/ccvs/repository/versioncontrol/mercurial/src/org/netbeans/modules/mercurial/MercurialInterceptor.java,v 
<--  MercurialInterceptor.java
new revision: 1.18; previous revision: 1.17
done
Checking in Bundle.properties;
/shared/data/ccvs/repository/versioncontrol/mercurial/src/org/netbeans/modules/mercurial/Bundle.properties,v  <-- 
Bundle.properties
new revision: 1.16; previous revision: 1.15
done
IDE: [1/22/08 2:31 PM] Committing "Mercurial" finished


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2014, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo