Pete Greskoff · Apr 24, 2017 go to post

You can also do this via ^SECURITY

%SYS>d ^SECURITY
 
1) User setup
2) Role setup
3) Service setup
4) Resource setup
5) Application setup
6) Auditing setup
7) Domain setup
8) SSL configuration setup
9) Mobile phone service provider setup
10) OpenAM Identity Services setup
11) Encryption key setup
12) System parameter setup
13) X509 User setup
14) Exit
 
Option? 12
 
1) Edit system options
2) Edit authentication options

Pete Greskoff · Apr 21, 2017 go to post

You can run the List query in the %SYS.Journal.Record class, using the 'Match' parameter to match for specific global names (based on your table). It is documented (with some examples) here

Pete Greskoff · Apr 13, 2017 go to post

I should also note that the data in the CACHE database is not completely ignored at startup (if it is there), as is the case for CACHETEMP. No matter what is in CACHETEMP when Caché starts up, Caché treats it as if it is empty. 

Pete Greskoff · Apr 11, 2017 go to post

csession for Windows was added in 2017.1, so that explains why you do not have it.

Pete Greskoff · Mar 30, 2017 go to post

There is one extra piece to this that you might want to look at, and that is the GetReason() classmethod of %SYS.Journal.File. It will tell you "by backup" if the file was switched by ExternalFreeze. The following code will search back from the current file and print out the file name of the journal file that was switched to for the most recent ExternalFreeze or Caché online backup (there is no error checking, so it could fail if you don't have any files created that way):

file = ##class(%SYS.Journal.System).GetCurrentFile()
reason = ""
{
reason = file.GetReason(file.Name)
q:reason="by backup"
##class(%SYS.Journal.File).GetPrev(file.Name,.name)
file = ##class(%SYS.Journal.File).%OpenId(name)
}
file.Name
Pete Greskoff · Mar 29, 2017 go to post

Yes, after you've already set up SSL for each member, you can enable it as you suggested. The primary will force the other members to disconnect, and, assuming the SSL setups are correct, those members will rejoin using SSL.

Pete Greskoff · Mar 29, 2017 go to post

Again, I suggest opening a WRC issue to address this. The first step will likely be to enable REDEBUG (do ^REDEBUG in %SYS and set the new value to FFFFFFFF). Then you will disconnect from the mirror (^MIRROR -> Mirror Management -> Disconnect), then connect again. Then set REDEBUG back to FF and collect the cconsole.log for the WRC as well as the cconsole.log on the primary. I must ask again if you added the async as an authorized async on the primary, as that is required to connect if using SSL. 

Pete Greskoff · Mar 24, 2017 go to post

That would work, but I'd suggest creating different ones so you can distinguish between the members.

Pete Greskoff · Mar 23, 2017 go to post

It could be related but maybe not. I definitely suggest contacting the WRC about this.

Pete Greskoff · Mar 23, 2017 go to post

Also, even if  SSL is set up correctly, you still need to accept the async's connection from the primary server. Did you do that?

Pete Greskoff · Mar 23, 2017 go to post

If Bob's suggestion doesn't fix your problem, I recommend opening up a WRC issue about this. In addition to the encryption keys, you could have an issue with the SSL setup (SSL is required for mirrors if you're using journal encryption).  For what it's worth, you could take a look at my article about creating an SSL-enabled mirror with keys/certificates generated using the Public Key Infrastructure to see if that helps.

Pete Greskoff · Mar 22, 2017 go to post

Larry, you probably want to open up a WRC issue to address this. The first step will be to try to figure out if the problem is with Caché or with the operation specifically. To do so, you'll want to try to make this connection in a terminal. If any of these statuses are not successful, you should 'd $system.OBJ.DisplayError(<variable>)' and collect the local file you set up with the trace mask:

set ssh=##class(%Net.SSH.Session).%New()
do ssh.SetTraceMask(511,<newlocalfile>)
st1 = ssh.Connect("<SFTP HOST>","22")
st2 = ssh.AuthenticateWithUsername("<UserName>","<Password>")
st3 = ssh.OpenSFTP(.sftp)
st4 = sftp.Put("<local path and filename","<remote path and filename>")
Pete Greskoff · Mar 6, 2017 go to post

The CA server does not have to be one of the mirror members. The example you suggest is valid. 

Pete Greskoff · Feb 2, 2017 go to post

Why do you need to do this? I don't believe it's possible to define global node types. If your application is parsing this data, you could just use '+^a("1.0011")' if you know it is going to be stored as a number. EX:

%SYS>s x = ""
%SYS>w +x
0

Pete Greskoff · Jan 19, 2017 go to post

Yes, you can, you just need to run another installation. It will automatically use different ports, as it is aware of other instances on the system.

Pete Greskoff · Jan 19, 2017 go to post

Do you have a local instance installed that you want to connect to? If so, the IP would be 127.0.0.1 (or localhost). You shouldn't need to configure the others unless this is a specialized instance setup. If you simply installed a development instance and are using that version of Studio, there is nothing you need to actually setup. As for the docs, maybe this section will be better. It also may be useful for you to start with the Using Caché Studio book.

Pete Greskoff · Jan 19, 2017 go to post

You don't create new servers/namespaces in Studio. You can add connections to remote servers by going to the icon, and instead of choosing Studio, choosing 'Preferred Server' -> 'Add/edit'. If you're just trying to create a new namespace that you can access in Studio, you should use this documentation. Studio is to work with code on pre-existing servers/namespaces. If you just want to access the SAMPLES namespace, you can get to it from File -> Change Namespace (or F4).

Pete Greskoff · Jan 9, 2017 go to post

Dmitry makes some good suggestions above. I would suggest collecting a 24-hour pButtons report on this server (you can also collect a 30 minute one simultaneously so you have some data more quickly) and opening a WRC issue with that data. It will contain the mgstat data reference, along with performance metrics at the OS level, among other things. Performance issues are not generally quick to solve, and take a bit of time reviewing a lot of data before conclusions can be made. 

I will also say that, if this is happening frequently, it's likely your disk is simply too slow for the amount of work the write daemon needs to do.

Pete Greskoff · Jan 6, 2017 go to post

You could use the 'List' queries in Config.MapGlobals, Config.MapPackages, and Config.MapRoutines, match those to the database that you are copying from, then change those specific mappings to the new database. Here is an example that will change mappings for routines in the USER namespace from the USER database to the TEST database:

s startdb = "USER"
s enddb = "TEST"
s ns = "USER"
s rs=##class(%ResultSet).%New()
s rs.ClassName="Config.MapRoutines"
s rs.QueryName="List"
s sc=rs.Execute(ns) 
If 'sc Do DisplayError^%apiOBJ(sc) Quit
  while rs.%Next() {
   if (rs.GetDataByName("Database")=startdb) {
   s Properties("Database")=enddb
   d ##class(Config.MapRoutines).Modify(ns,rs.GetDataByName("Routine"),.Properties)
   } 
}
  d rs.%Close()
  q
Pete Greskoff · Jan 6, 2017 go to post

Thanks Evgeny. I unchecked the digest mode, and checked 'On comments'. For what it's worth, I had neither 'On updates' nor 'On comments' checked before, yet I would get e-mails with both (I do want them for comments). Maybe the problem was having digest mode.

Pete Greskoff · Jan 6, 2017 go to post

I have the same as John. This is what my 'Overview' tab looks like in the 'Settings' section. These are the only things I have checked off.

Pete Greskoff · Jan 5, 2017 go to post

This is not a trivial process. There are quite a few places in the registry where things are stored. I'd suggest opening a WRC issue to go into this in more detail. In the meantime, you should be able to just install a new instance in a separate directory to get things working.

Pete Greskoff · Jan 5, 2017 go to post

As John said, the new keys are up as of 1/4. I'm just putting this in an answer so it doesn't show up on the 'unanswered' list.

Pete Greskoff · Jan 4, 2017 go to post

It's possible that your connection has closed out from under the SFTP adapter. Do you have the StayConnected setting set at -1? If so, try changing this to 0, which will cause the adapter to only keep the connection open until it completes its operation.

Pete Greskoff · Dec 16, 2016 go to post

If it even got far enough to start an install, there would be a file in C:\Windows\ with a file name starting with CacheInstall