BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Nigel_Pain
Lapis Lazuli | Level 10

SAS 9.4M5/VA 7.4 non-distributed on Windows 2012 R2.

I'm trying to work out how to get Reload-On-Start working in a particular circumstance. We have the out-of-the-box Visual Analytics Public LASR and Visual Analytics Public Data Provider libraries, associated with the Public LASR Analytic Server. If the LASR server is stopped for whatever reason (eg. server reboot), it currently has to be restarted manually from VA Administrator, and this kicks off Reload-On-Start. I created a scheduled task to start the LASR server, but when it runs, Reload-On-Start doesn't work.

The LASR library's data provide library is set to the correct data provider library and the following extended attributes are set:

VA.ReloadOnStart.Enabled Yes

VA.ReloadOnStart.Method All

VA.ReloadOnStart.TableDefault Yes

 

The scheduled task that I created runs SAS code which I took from the Last Action Log for the LASR server in VA Administrator. It does start the LASR server but the tables are never reloaded into the LASR library.

1 ACCEPTED SOLUTION

Accepted Solutions
AnandVyas
Ammonite | Level 13
I have faced this similar scenario and what @alexal has mentioned its correct. It won't trigger cause the non distributed server process goes on wait until it receives a kill signal.

You can either write a SAS Code to spawn independently based on LASR port validation to perform the reload on start.

Usually what I have observed is when you start the LASR from VAAdmin page, it spawns another SAS Session to reload these tables. You will have to replicate that to achieve it in automated way.

Hope this helps!

View solution in original post

8 REPLIES 8
JuanS_OCS
Amethyst | Level 16
Hello Nigel,
The Reload-On-Start has basically two steps: a) the automatic reflection in the storage of the imported data. b) if a LASR server stops, when you start it, it will reload all of that data.
I noticed you described in your test only the second step. Did you have the chance that the first step works for you?
Here is what I would do:

1. Ensure all steps are done
2. Restart LASR, then import data and check if data is moved to storage as well. If OK, go to the next step, if not, first troubleshoot this one
3. Then restart LASR again and start LASR from the LASR servers tab (as the documentation says). Does it work?
If you want to achieve the scheduling of starting LASR and automatic load of data, then you will need to create an AutoLoad folder, or script the load by yourself. In addition to the Reload-on-start, of course, as you still want imported data to go to the Autoload folder.
Official documentation:
http://support.sas.com/documentation/cdl/en/vaag/69958/HTML/default/viewer.htm#n1s2hnpd892n7fn1dp18x...
http://support.sas.com/documentation/cdl/en/vaag/69958/HTML/default/viewer.htm#n0nm6qjzfz4eban1237qq...
An easy step-by-step guide created by Selerity:
https://support.selerity.com.au/hc/en-us/articles/223346068-How-To-Loading-Data-in-SAS-Visual-Analyt...
Best regards,
Juan
Nigel_Pain
Lapis Lazuli | Level 10

Hi Juan, thanks for replying.

The tables exist in the data provider library so, from my understanding of Load-On-Start, I thought they should be loaded when the LASR server starts? This is what happens when I manually start it from VA Administrator. It just doesn't when the scheduled job runs.

Regards,

Nigel

alexal
SAS Employee

@Nigel_Pain ,

The scheduled task that I created runs SAS code which I took from the Last Action Log for the LASR server in VA Administrator.

I assume you just invoking PROC LASR?

Nigel_Pain
Lapis Lazuli | Level 10

@alexal 

No, the code does various things:

1. creates a PID file

2. Starts the LASR server process (host name and signer domain redacted):

libname ml sasiola startserver=
 (
PATH="E:\SAS\config\Lev1\AppData\SASVisualAnalytics\VisualAnalyticsAdministrator\sigfiles" )
host="xxxxxxxx" port=10031 signer="https://xxxxxxxxx:443/SASLASRAuthorization" ;


3. Runs PROC VASMP:

proc vasmp;
   serverwait port=10031;
quit;

This is the basis of it, although it's all wrapped in macro code. As I say it comes from the Last Action Log for the LASR server in VA Administrator.

 

alexal
SAS Employee

@Nigel_Pain ,

 

Thanks, that code will neven trigger reload-on-start. Do not use reload-on-start as a general-purpose way of keeping data available. Autoload is the recommended general-purpose way of keeping data available.

Nigel_Pain
Lapis Lazuli | Level 10

Thanks. Why won't it trigger reload-on-start? I thought that was the point of it? These are static tables (they are actually the sample ones) so I didn't think Autoload would be necessary. We use Autoload for users' live data, and that works well for data which is potentially changing.

TBH, I'm inclined just to stick with the manual start of the Public LASR server. It only hosts the sample data and reports so isn't business-critical.

AnandVyas
Ammonite | Level 13
I have faced this similar scenario and what @alexal has mentioned its correct. It won't trigger cause the non distributed server process goes on wait until it receives a kill signal.

You can either write a SAS Code to spawn independently based on LASR port validation to perform the reload on start.

Usually what I have observed is when you start the LASR from VAAdmin page, it spawns another SAS Session to reload these tables. You will have to replicate that to achieve it in automated way.

Hope this helps!
Nigel_Pain
Lapis Lazuli | Level 10

Thanks @AnandVyas. It's a pity but, hey ho!

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

Tips for filtering data sources in SAS Visual Analytics

See how to use one filter for multiple data sources by mapping your data from SAS’ Alexandria McCall.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 8 replies
  • 1910 views
  • 1 like
  • 4 in conversation