Dangling meta character when "Retrieve for merge"

Issue #1221 resolved
Jeffrey Cheung created an issue

IC Version 2.0.5.1 Build 20190106222503

Intellij Version 2018.3.2 Build 183.4886.37

OS Windows 10

When I do "Retrieve for merge", the comparison panel cannot show, but error message "Dangling meta character '*' near index 0 "test"". I can't do anything now. Reinstall IC doesn't solve the problem.

LOGS 2019-01-21 14:18:02,378 [422555635] WARN - .IlluminatedCloudExceptionUtil - Dangling meta character '' near index 0 test ^ java.util.regex.PatternSyntaxException: Dangling meta character '' near index 0 test ^ at java.util.regex.Pattern.error(Pattern.java:1957) at java.util.regex.Pattern.sequence(Pattern.java:2125) at java.util.regex.Pattern.expr(Pattern.java:1998) at java.util.regex.Pattern.compile(Pattern.java:1698) at java.util.regex.Pattern.<init>(Pattern.java:1351) at java.util.regex.Pattern.compile(Pattern.java:1028) at java.util.regex.Pattern.matches(Pattern.java:1133) at java.lang.String.matches(String.java:2121) at com.illuminatedcloud.intellij.builder.ForceComBuilderUtil.getFileContents(ForceComBuilderUtil.java:1115) at com.illuminatedcloud.intellij.builder.ForceComMetadataRetriever.lambda$applyRetrievalSubstitutionRules$1(ForceComMetadataRetriever.java:785) at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:963) at com.illuminatedcloud.intellij.builder.ForceComMetadataRetriever.applyRetrievalSubstitutionRules(ForceComMetadataRetriever.java:784) at com.illuminatedcloud.intellij.builder.ForceComMetadataRetriever.access$600(ForceComMetadataRetriever.java:92) at com.illuminatedcloud.intellij.builder.ForceComMetadataRetriever$1.run(ForceComMetadataRetriever.java:400) at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:727) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:164) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:582) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:532) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:87) at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:151) at com.intellij.openapi.progress.impl.CoreProgressManager$4.run(CoreProgressManager.java:403) at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:314) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)

dangling.PNG

Comments (8)

  1. Scott Wells repo owner

    Jeffrey, sorry for the issue. Let me take a look this evening. I'm targeting a new build for tomorrow (Wednesday at the latest) and will try to include a fix for this in that build.

  2. Jeffrey Cheung reporter

    LOL. I fix this after removing filename pattern in Retrieval. What's your opinion on this? dangling_fix.PNG

  3. Scott Wells repo owner

    Jeffrey, I thought it might be substitution rules. Those aren't evaluated as wildcard patterns; instead they're regular expressions. As a result, the correct pattern would be .*test8. I could add validation for the entered patterns (and also to ensure that all fields are properly populated). Were you trying to do something in particular with retrieval substitution rules, or was this a mistake?

  4. Jeffrey Cheung reporter

    I wanted to retrieve files that ends with "Test.cls". That's why I go to here and enter filename pattern.

    Yes it is good to add validation there to make sure people don't type wrong stuff. Thanks Scott!

  5. Scott Wells repo owner

    Ah, okay. Substitution rules are used to transform the metadata as it's deployed and/or retrieved. That doesn't establish the metadata you want to retrieve or initiate a retrieval. You'll want to use metadata subscriptions and the Retrieve Metadata action to retrieve files from the server. There's more on all of this documented here:

    http://www.illuminatedcloud.com/home/deployment

    Please review that and let me know if you have any questions or issues with metadata retrieval.

  6. Log in to comment