You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by ahgittin <gi...@git.apache.org> on 2017/04/21 16:10:22 UTC

[GitHub] brooklyn-server pull request #646: Cleanup search paths

GitHub user ahgittin opened a pull request:

    https://github.com/apache/brooklyn-server/pull/646

    Cleanup search paths

    minor cleanups to #338 -- see the last commit
    
    this seems to fix the test failures by deduping the path, and some other very minor things.  opened PR mainly to confirm it's okay on jenkins also.  /cc @geomacy
    
    merging this should also close #338.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ahgittin/brooklyn-server cleanup-search-paths

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/brooklyn-server/pull/646.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #646
    
----
commit 5d0fe63cec36a8f478b4e666e0cb769462232fe5
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-14T13:44:14Z

    Osgi loader change

commit 7e88322634490f7d29a9cd9f9977a2b9a111e6a3
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-19T13:22:43Z

    Add nested catalog item ids to AbstractBrooklynObjectSpec.

commit 8c4427299f77de91258d8d653d8d6d1e75644328
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-20T10:16:36Z

    Add catalog item super id support.

commit a9e961855f4e5874939602bc969ca87f537a0031
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-20T14:51:47Z

    Fixes to get CatalogYamlEntityTest.testCatalogItemIdInReferencedItems working.
    
    Haven't re-run all unit tests yet.

commit 39dc1ccdf539a4453889f91ad1d3d6cde11abaf7
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-21T10:46:35Z

    Test with a 'catalog sandwich'.
    
    The purpose of this test is to illustrate that the full stack of nested
    catalog items is not searched for classloaders.

commit 47c5580e9ea9b5cfb6a42c84428c641dbe88f244
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-21T15:36:49Z

    Do resource lookup from nested catalog ids.
    
    Fixes testDeepCatalogItemCanLoadResources.

commit a5c697822aeb6d7975aab7138d2ac6628f60c5f9
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-23T10:53:09Z

    Use entity classloader as well as specified libraries.
    
    See https://github.com/apache/brooklyn-server/pull/338#discussion_r80220390.

commit 42b4c3e0cc4ab268115f5c7231c6adbbe68e4aca
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-26T15:03:17Z

    Implement getCatalogItemSuperIds in CatalogItemDtoAbstract.
    
    As noted at https://github.com/apache/brooklyn-server/pull/338#discussion_r79871837

commit 3e05d39a3b5567a81d7f835362e2eb2326c830b5
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-26T15:49:50Z

    Add (disabled) rebind test for deep catalog item nesting.
    
    This fails with the following exception:
    
    org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure rebinding: problem creating ENTITY zmm0lmrzll of type org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: Unable to load org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl from []: Invalid class: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: ClassNotFoundException: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:129)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebind(RebindManagerImpl.java:513)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindTestUtils.rebindAll(RebindTestUtils.java:446)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindTestUtils.rebind(RebindTestUtils.java:328)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindTestFixture.rebind(RebindTestFixture.java:281)
    	at org.apache.brooklyn.camp.brooklyn.AbstractYamlRebindTest.rebind(AbstractYamlRebindTest.java:86)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindTestFixture.rebind(RebindTestFixture.java:217)
    	at org.apache.brooklyn.camp.brooklyn.RebindOsgiTest.testReboundDeepCatalogItemCanLoadResources(RebindOsgiTest.java:201)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:497)
    	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)
    	at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
    	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
    	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
    	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
    	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
    	at org.testng.TestRunner.privateRun(TestRunner.java:767)
    	at org.testng.TestRunner.run(TestRunner.java:617)
    	at org.testng.SuiteRunner.runTest(SuiteRunner.java:348)
    	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:343)
    	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:305)
    	at org.testng.SuiteRunner.run(SuiteRunner.java:254)
    	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
    	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)
    	at org.testng.TestNG.runSuitesLocally(TestNG.java:1149)
    	at org.testng.TestNG.run(TestNG.java:1057)
    	at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
    	at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:124)
    Caused by: java.util.concurrent.ExecutionException: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure rebinding: problem creating ENTITY zmm0lmrzll of type org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: Unable to load org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl from []: Invalid class: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: ClassNotFoundException: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
    	at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63)
    	at org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:361)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebind(RebindManagerImpl.java:511)
    	... 29 more
    Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure rebinding: problem creating ENTITY zmm0lmrzll of type org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: Unable to load org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl from []: Invalid class: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: ClassNotFoundException: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:430)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onDoneImpl(RebindExceptionHandlerImpl.java:497)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onDone(RebindExceptionHandlerImpl.java:413)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration.run(RebindIteration.java:268)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebindImpl(RebindManagerImpl.java:558)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl$3.call(RebindManagerImpl.java:508)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl$3.call(RebindManagerImpl.java:506)
    	at org.apache.brooklyn.util.core.task.BasicExecutionManager$SubmissionCallable.call(BasicExecutionManager.java:519)
    	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)
    Caused by: java.lang.IllegalStateException: problem creating ENTITY zmm0lmrzll of type org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onCreateFailed(RebindExceptionHandlerImpl.java:265)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration.instantiateLocationsAndEntities(RebindIteration.java:459)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration.doRun(RebindIteration.java:240)
    	at org.apache.brooklyn.core.mgmt.rebind.InitialFullRebindIteration.doRun(InitialFullRebindIteration.java:69)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration.run(RebindIteration.java:266)
    	... 8 more
    Caused by: java.lang.IllegalStateException: Unable to load org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl from []: Invalid class: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: ClassNotFoundException: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:40)
    	at org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:26)
    	at org.apache.brooklyn.util.guava.Maybe$Absent.getException(Maybe.java:327)
    	at org.apache.brooklyn.util.guava.Maybe$Absent.get(Maybe.java:321)
    	at org.apache.brooklyn.core.mgmt.classloading.AbstractBrooklynClassLoadingContext.loadClass(AbstractBrooklynClassLoadingContext.java:55)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration$BrooklynObjectInstantiator.load(RebindIteration.java:954)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration$BrooklynObjectInstantiator.newEntity(RebindIteration.java:874)
    	at org.apache.brooklyn.core.mgmt.rebind.RebindIteration.instantiateLocationsAndEntities(RebindIteration.java:454)
    	... 11 more
    Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Unable to load org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl from []: Invalid class: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl: ClassNotFoundException: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:430)
    	at org.apache.brooklyn.core.mgmt.classloading.BrooklynClassLoadingContextSequential.tryLoadClass(BrooklynClassLoadingContextSequential.java:88)
    	at org.apache.brooklyn.core.mgmt.classloading.AbstractBrooklynClassLoadingContext.tryLoadClass(AbstractBrooklynClassLoadingContext.java:61)
    	... 15 more
    Caused by: java.lang.IllegalStateException: Invalid class: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:40)
    	at org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:26)
    	at org.apache.brooklyn.util.guava.Maybe$Absent.getException(Maybe.java:327)
    	at org.apache.brooklyn.core.mgmt.classloading.BrooklynClassLoadingContextSequential.tryLoadClass(BrooklynClassLoadingContextSequential.java:85)
    	... 16 more
    Caused by: java.lang.ClassNotFoundException: org.apache.brooklyn.test.osgi.entities.SimpleEntityImpl
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    	at org.apache.brooklyn.util.javalang.AggregateClassLoader.findClass(AggregateClassLoader.java:135)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    	at org.apache.brooklyn.core.mgmt.classloading.JavaBrooklynClassLoadingContext.tryLoadClass0(JavaBrooklynClassLoadingContext.java:101)
    	at org.apache.brooklyn.core.mgmt.classloading.JavaBrooklynClassLoadingContext.tryLoadClass(JavaBrooklynClassLoadingContext.java:84)
    	at org.apache.brooklyn.core.mgmt.classloading.BrooklynClassLoadingContextSequential.tryLoadClass(BrooklynClassLoadingContextSequential.java:81)
    	... 16 more

commit 4c7ca74f6a0a2092d5c7c6cdc6e711ab5fb5f75c
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-27T10:21:46Z

    Add support for catalogItemSuperIds to rebind.
    
    Fixes testReboundDeepCatalogItemCanLoadResources.

commit d26e705c2611049d8f60b7128fd2540fe13b97f7
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-29T14:21:17Z

    Fix ActivePartialRebindVersionTest breakage from previous change.

commit 0bb7eb4a6b1a9603c25fe97aab91110bf556d1c6
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-29T17:06:15Z

    Fix testRebindWithCatalogAndApp with mode == DELETE_CATALOG.

commit b5ca71b9dbbb6897abf6ab74bbd570b39f22649b
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-09-29T17:15:16Z

    Fix testRebindWithCatalogAndApp with mode == REPLACE_CATALOG_WITH_NEWER_VERSION.

commit 63f4a9415901fece4b63fc0cd676b7812959ea9d
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-10-03T09:13:30Z

    Add (some) tests of rebind of previously persisted state.

commit 759abe589bef812f726ffe6d81d7a0665f9ad388
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-10-03T11:03:20Z

    Some code tidy-up.

commit daaf03989346ad67cdae3ed7256c8dad53add57a
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-10-05T10:02:20Z

    Warning on primaries not needed.
    
    It's perfectly possible for the catalog item loader to have just the launcher management context in the secondaries.

commit 3f986ec9c5340bd1f4dbef9cbdf5e26a27e1f3d7
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-10-05T12:40:33Z

    catalogItemIdIfNotNull is no longer used

commit 10afaad79fc0dec595a298cc67e7c18db232ff94
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-10-05T21:25:37Z

    Add start of a test framework test for the catalog behaviour.

commit 5c37de215b569246ce054d4a0d044548056d507f
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2016-12-13T22:48:26Z

    Fix mistake in merge with master

commit c60949739d4eaa00ef2647d6aba920b449a5c95b
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-20T13:45:06Z

    Fix tests after rebase with master

commit 78cfeda484002f7a483c81ccd7cd029210688afd
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-20T16:58:08Z

    Updates for the following review comments.
    
    Working on review comments for catalog-update PR
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94612120
    Unused import in AbstractBrooklynObjectSpec.java  - done in merge
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94752687
    Keep for persistence backwards compatibility
    - surely I take this into account already? See testRebindWithCatalogAndAppRebindCatalogItemIds,
    and BrooklynMementoPersisterToObjectStore.getCatalogItemIds().
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94762969
    Not called on xstream deserialize, could be null - take into account in following code.
    - Introduced getCatalogItemIdStack().  What about the other pre-existing fields that also have initializers?
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94612579
      public SpecT catalogItemId(String val) {
    Should we deprecate this one? When is this one used vs nestCatalogItemId?
    I'd think (before looking at the code in details) that this shouldn't be called at all, we should only be "nesting" catalog items.
    - deprecated
    
    https://github.com/apache/brooklyn-server/pull/338/files#r94615424
    Don't see this used, do you think we should keep it?
    - replaced it with protected SpecT catalogItemIdStack(Collection<String> catalogItemIdStack),
    used in AbstractBrooklynObjectSpec#copyFrom().
    
    https://github.com/apache/brooklyn-server/pull/338/files#r94609346
    missing word
    - fixed
    
    https://github.com/apache/brooklyn-server/pull/338/files#r94613348
    It's not a mere reference but R3 extending R2, etc.
    - fixed
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94618943
    public SpecT catalogItemIdIfNotNull(String val) {
    I'd deprecate it, even if marked as @Beta.
    - done
    
    https://github.com/apache/brooklyn-server/pull/338/files#r94616318
    I don't associate "nest" with anything in this context, perhaps stackCatalogItemId would be more appropriate?
    - changed to "stackCatalogItemId".
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94616812
    public final String getCatalogItemId() {
    Suggest deprecating this one and creating getOuterCatalogItemId, getInnerCatalogItemId.
    - created getOuterCatalogItemId; getInner not needed as there is getCatalogItemHierarchy
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94753362
    As a fallback return catalogItemId.
    - Seems preferable not to retain catalogItemId if we can get away without it, see
    comment on https://github.com/apache/brooklyn-server/pull/338#discussion_r94752687
    above.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94617757
    Can you add as a clarification
    - Added.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94618204
    "Super" (here and same name in other classes) could be misinterpreted
    - changed name to getCatalogItemHierarchy

commit 1e5ca519224b5cac32abc2d7dcf76d33289c752f
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-21T09:37:01Z

    Updates for the following review comments.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94619869
    This is just for persistence backwards compatibility, right? If so mark it as deprecated.
    - done
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94620517
    Unused.
    - done
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94620662
    Unused, plus Strings, XmlUtil.
    - done
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94753587
    At the very least could log at higher level - code at AbstractManagementContext used to log at error.
    - changed to warn.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94756363
    Use and return getCatalogItemSuperIds instead.
    - updated

commit 68b94ced5af0a18be08277e9bdb5aff4696a4e80
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-21T10:17:42Z

    Fall through only if loader fails with the available catalog items.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94751531

commit d3a64d985b0ba792bf6bcd079a4f40f8a787ec85
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-21T10:55:00Z

    Address the following review comments.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94756103
    Remove/deprecate this method and use getCatalogItemSuperIds instead in callers.
    - done; also renames "SuperIds" to "Hierarchy" everywhere.

commit 9369a42fb9cf016cd5c118014c23e09e6085271b
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-21T12:08:13Z

    Review comment. Remove confusing default value.
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94762563

commit 584efcc4e5845c372d8519f3d073c938b9516ebe
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-02-22T16:43:30Z

    Delete original change from 0ab9b37b55fce9eaf3eef319ea2fc77e41e7ba8e
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94621436
    
    The change was done during the early investigation of the issue.
    The nested-item tests work without it.

commit 3257c846dd21d1b1dada9c480ef7f6e68f3bd03c
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-03-08T12:17:57Z

    Use newClassLoadingContextForCatalogItems where possible.
    
    https://github.com/apache/brooklyn-server/pull/338/files#r94623208
    
    Use in
    
    org.apache.brooklyn.util.core.ClassLoaderUtils#load
    org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore#getCustomClassLoaderForBrooklynObject
    org.apache.brooklyn.core.catalog.internal.JavaCatalogToSpecTransformer#createCatalogSpec
    
    Not doing XmlMementoSerializer as it is calling
      newClassLoadingContext(ManagementContext mgmt, RegisteredType item)
    rather than
      newClassLoadingContext(ManagementContext mgmt, CatalogItem<?, ?> item),
    and the hierarchy is not available on RegisteredType.

commit b61f972e9f4197c64ebe37a69f1631db9febb220
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-03-08T15:41:56Z

    Return a generic context from newClassLoadingContextForCatalogItems
    
    https://github.com/apache/brooklyn-server/pull/338#discussion_r94751965

commit 81815f9424ba1987dbba5c3ee206deec4400babf
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-03-10T17:10:33Z

    Changes to move to catalogItemId + search path.
    
    Restore catalogItemId; change getCatalogItemIdHierarchy to getCatalogItemIdSearchPath.
    Update "stackCatalogItemId" to work with catalogItemId + search path.
    Use catalogItemIdAndSearchPath when merging wrapper parent to child.
    Rebind changes for  catalogItemId + search path.
    Update AbstractBrooklynObject[Spec] for catalogItemId + searchPath
    Do catalogItemIdAndSearchPath only if non-null
    Update "catalogItemIdHierarchy" -> "searchPath" in persistence

commit 51b0b754e0640a6403b11359ecb4467d052c505a
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Date:   2017-03-18T20:04:43Z

    Correct testRebindWithCatalogAndAppRebindCatalogItemIds

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] brooklyn-server issue #646: Cleanup search paths

Posted by geomacy <gi...@git.apache.org>.
Github user geomacy commented on the issue:

    https://github.com/apache/brooklyn-server/pull/646
  
    Those changes all look good @ahgittin, especially the update to set the search path in the `AbstractBrooklynObject` constructor.  Good point also about the synchronization of search path modifications!  


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] brooklyn-server issue #646: Cleanup search paths

Posted by ahgittin <gi...@git.apache.org>.
Github user ahgittin commented on the issue:

    https://github.com/apache/brooklyn-server/pull/646
  
    build failure because `ubuntu-us1` offline -- forcing recheck


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] brooklyn-server pull request #646: Cleanup search paths

Posted by ahgittin <gi...@git.apache.org>.
Github user ahgittin commented on a diff in the pull request:

    https://github.com/apache/brooklyn-server/pull/646#discussion_r112790013
  
    --- Diff: camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java ---
    @@ -50,15 +48,6 @@
     
     
     public class CatalogYamlEntityTest extends AbstractYamlTest {
    -    
    -    private static final String SIMPLE_ENTITY_TYPE = OsgiTestResources.BROOKLYN_TEST_OSGI_ENTITIES_SIMPLE_ENTITY;
    -    private static final String MORE_ENTITIES_POM_PROPERTIES_PATH =
    -        "META-INF/maven/org.apache.brooklyn.test.resources.osgi/brooklyn-test-osgi-more-entities/pom.properties";
    -
    -    @Override
    -    protected boolean disableOsgi() {
    -        return false;
    --- End diff --
    
    @geomacy This appears to be unnecessary, and it slows down testing dramatically, and causes a lot more GC messages. It might be the reason for the testing failures in #338 (possibly compounded by not de-duping the search paths, or possibly not).
    
    cc @aledsage @neykov As we do more with OSGi we should be aware that starting tests that use OSGi each take almost 1s.  Also we're using the "fake" OSGi I think (felix not karaf); maybe it makes sense for some modules to launch in OSGi when they run their tests, and/or maybe there are some other optimizations?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] brooklyn-server issue #646: Cleanup search paths

Posted by ahgittin <gi...@git.apache.org>.
Github user ahgittin commented on the issue:

    https://github.com/apache/brooklyn-server/pull/646
  
    @geomacy Worth your casting an eye over my changes just to be sure but they're tiny compared to your good work in #338 so merging this now to have them all.  Mainly the deduping search path is what I've added, plus using some minor utility methods I think are cleaner.  BTW I really like the `setCatalogItemIdAndSearchPath` -- it wasn't obvious how right that was until I reviewed it more, but good shout there.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] brooklyn-server pull request #646: Cleanup search paths

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/brooklyn-server/pull/646


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] brooklyn-server issue #646: Cleanup search paths

Posted by geomacy <gi...@git.apache.org>.
Github user geomacy commented on the issue:

    https://github.com/apache/brooklyn-server/pull/646
  
    Thanks @ahgittin will certainly look at your changes, thanks for that!  
    
    Maybe soon we can make some time to discuss the changes needed as you suggested in #573 for ConfigParametersYamlTest. testManuallyAddWithParentFromCatalog and friends.  
    
    I made a start on this in #604 but found that the changes altered the behaviour of DSL's 'scopeRoot', which effectively relies on the catalogItemId of children being copied from that of their parents, as noted here: https://github.com/apache/brooklyn-server/pull/604/commits/a5cdc192816244e30e6b2b2163fd4160c9f3b252


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---