cancel
Showing results for 
Search instead for 
Did you mean: 

Custom Snap Pack versioning is broken?

rpatrick00
Contributor

I have a custom snappack (version = 1, sl_build = 42) deployed in my organization’s shared folder that is in used by multiple projects. I have developed a completely rewritten version of the snappack (version = 2, sl_build = 1) that I have deployed in my personal project (projects/Robert Patrick).

I created a brand new pipeline (also in my personal project space) after deploying the new version of the snappack. Unfortunately, the pipeline is using the version 1 snap instead of the version 2 snap. What am I doing wrong? How do I build a pipeline that uses the version 2 snap?

22 REPLIES 22

rpatrick00
Contributor

@ptaylor I am not sure what to say but I am seeing a problem.

In my release 1 branch (the one deployed in the global shared folder), line 78 of OdysseyApiAccount looks like this:

        if (String.class.isAssignableFrom(valueObj.getClass())) {

In version 2 of the OdysseyApiAccount, line 78 looks like this:

    private static final String PASSWORD_LABEL = "Password";

When I create the pipeline in my projects/Robert Patrick folder (where V2 of the snap is deployed), I am getting the following NullPointerException.

SnapLogic

Pretty sure this proves that Version 1 of the Account class is being used…

Yes, that’s pretty convincing. Very odd. Have you tried restarting the jcc?

rpatrick00
Contributor

@ptaylor here is what I have found:

  1. I restarted by two groundplex servers and verified that no versions of the snaps are downloaded to either server.
  2. I have version 1_47 deployed at the global shared level and 2_5 deployed at projects/Robert Patrick
  3. I created a new pipeline in projects/Robert Patrick
  4. I added a custom snap to the pipeline.
  5. I created an account in projects/Robert Patrick and validated it
  6. I configured the rest of the snap and added a JSONGenerator and Mapper
  7. I still get the NullPointerException at line 78 in OdysseyApiAccount
  8. When I look at the groundplexes, I see both 1_47 and 2_5 have been downloaded even though I am pretty sure that I am the only one using it right now…

Ok, this sounds like a conflict between the two different versions deployed at different levels of the project. Let me see if I can reproduce that.

rpatrick00
Contributor

@ptaylor thanks.

The other clue that I can give you is that if I change the new version numbers from 2 back to 1 and redeploy like this, everything works fine. I know the new version is picking up the new Account version because I have extra data in the new account version that the snaps depend on for “suggestions” and the suggestions are working in this configuration.

If I clear out everything and switch the version numbers back to 2, it doesn’t work.