go to post Danny Wijnschenk · Nov 13, 2017 Since 2014.1 we have 'unified' Triggers in Caché : if you use 'Foreach = row/object' in your trigger, it will be called from SQL and Object operations, a lot easier to write common code : Trigger T1 [Event = INSERT, Foreach = row/object { //your code } See also in the docs : http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...
go to post Danny Wijnschenk · Jul 18, 2017 Make sure you don't assign more memory than the available physical memory : your OS will swap to the hard disk which will cancel the benenefits of global buffers.
go to post Danny Wijnschenk · Jul 12, 2017 Global memory works with blocks and not with nodes :When a global node is accessed, the block where this global node is stored will be put into memory.Any routine that needs to access the nodes that are in this block will be served from memory.So, in your example, if the nodes (1), (1,2) and (1,7) are all stored in the same block, these will all be served from memory after the initial access by routineA.Blocks are nowadays 8Kb (used to be 2Kb).
go to post Danny Wijnschenk · Apr 29, 2017 And you can even use the Output window in Studio to execute commands (but don't do Halt !)
go to post Danny Wijnschenk · Apr 28, 2017 If the restore succeeded on a Caché 2015 installation, it might be easier to copy the cache.dat's from that version to your 2016 installation! (what was the version of the original backup).Without detailed info it is hard to find the exact cause (cache.cpf, cconsole.log), connect me directly or mail support@intersystems.com if you cannot find a work around.
go to post Danny Wijnschenk · Apr 27, 2017 Can you look in the directory r:\data\blabla :there should be a CACHE.DAT, and it should not be locked by another Caché instance.You can verify who locked the CACHE.DAT file by looking at the cache.lck file in the same directory, this file contains the mgr directory of the Caché instance who mounted the CACHE.DAT database :If Caché is not running, there should not be a cache.lck file.If Caché is running, the cache.lck should contain the mgr directory and server name of the Cache instance.You can stop Caché and delete the cache.lck file if any of the previous conditions are false. After startup and mount, the cache.lck file should automatically be created with the proper mgr directory name. (mount will occur by accessing the database or namespace using the database).
go to post Danny Wijnschenk · Apr 5, 2017 I don't know of anything out-of-the box, but you can look at following post where the same question was raised regarding support for REST service cataloging : https://community.intersystems.com/post/rest-services-cataloging.
go to post Danny Wijnschenk · Apr 1, 2017 You can put some code in the OnHandleCorsRequest to debug or monitor the CORS handling :/// This is the CORS request handler. User should override this method in their subclass/// if they don't want the default behaviorClassMethod OnHandleCorsRequest(pUrl As %String) As %Status{ #; The default implementation is simply to dispatch to the #; default handler Set tOrigin=$Get(%request.CgiEnvs("HTTP_ORIGIN")) Set ip = $Get(%request.CgiEnvs("REMOTE_ADDR")) Set method = $Get(%request.CgiEnvs("REQUEST_METHOD")) set ^debug($i(^debug))=$lb($ZD($H,8),$ZT($P($H,",",2)),pUrl,tOrigin,ip,method) Quit ..HandleDefaultCorsRequest(pUrl)}