go to post Dmitry Maslennikov · Dec 16, 2018 well, error 126 is the dependency error. for such errors, I used Dependency Walker, very useful tool, for such cases.As you said you managed to connect to this dll with less code, so, in added lines you use some external library, which can't be loaded. Just place missed dll's close to your, and it should work.
go to post Dmitry Maslennikov · Dec 16, 2018 when you get the error <DYNAMIC LIBRARY LOAD>, you should look at cconsole.log (or messages.log for IRIS), where you may find code of error.It is possible that you build it for 32bit, but uses in 64bit instance. In this case, you will get the error with code 139. if you got other code, you can google it.
go to post Dmitry Maslennikov · Dec 11, 2018 You can also look at my project (https://github.com/daimor/CacheBlocksExplorer), I use WebSockets in the real project.
go to post Dmitry Maslennikov · Dec 10, 2018 My repo the same for previous years. https://github.com/daimor/AdventOfCode
go to post Dmitry Maslennikov · Dec 8, 2018 Go to private leaderboard, and use this code 130669-ab1f69bf to join.
go to post Dmitry Maslennikov · Nov 27, 2018 I'm sure it is quite difficult to write such a universal solution, every time it depends on your code. Years ago I wrote such a tool for an application which textual interface, and I had to convert parse code for pseudographics there and convert it too. So, I would say you need such specific too, just for your case.
go to post Dmitry Maslennikov · Nov 26, 2018 STORE error means, your reached limit of memory per process. Since 2012.2 we have 256Mb per process by default and you can increase it up to 2Tb. You can increase it, but I would recommend playing with different ways how to collect SQL Data, or on optimization in this SQL query. Or you can split such many rows by portions with less number of rows.
go to post Dmitry Maslennikov · Nov 24, 2018 Said the one who has the highest number of points. I think it should not be too much expensive, and it will be a good goal for some participants.
go to post Dmitry Maslennikov · Nov 23, 2018 Or something based on x86. While InterSystems does not work on ARM.
go to post Dmitry Maslennikov · Nov 21, 2018 Interesting looks like such error expectable for RedHat. But don't have any RedHat subscription, and I managed to build an image with RedHat, but with centos repo. And in my case, it works without any errors. Maybe you can contact me directly and send your image, so I can check on it?My differences from your Dockerfile RUN /bin/echo -e '[centos]' \ '\nname=CentOS $releasever - $basearch' \ '\nbaseurl=http://ftp.heanet.ie/pub/centos/7/os/$basearch/' \ '\nenabled=1' \ '\ngpgcheck=0' > /etc/yum.repos.d/centos.repo \ && cat /etc/yum.repos.d/centos.repo \ && yum -y --nogpgcheck update \ && yum -y --nogpgcheck install which tar hostname net-tools wget \ && yum -y clean all \ && ln -sf /etc/locatime /usr/share/zoneinfo/Australia/Brisbane and I used the latest version of ccontainermain from releases, maybe with this version will be better for you as well. curl -L https://github.com/daimor/ccontainermain/releases/download/0.7/ccontainermain -o /ccontainermain
go to post Dmitry Maslennikov · Nov 20, 2018 look at $zf function in the documentation, it gives a possibility to execute a command in OS.so, the same Legacy task and your code should be set res=$zf(-2, "c:\path\to\your\shutdown_ensemble.bat")
go to post Dmitry Maslennikov · Nov 20, 2018 batch file means, that you want to do it outside of Ensemble. In this case you should use ccontrol command or iris if you use IRIS. ccontrol stop <ensemble> quietly ccontrol start <ensemble> where you should replace <ensemble> with your instance name. if you work on windows, you can find ccontrol tool in bin directory of installed Ensemble. you can find more details about using ccontrol in the documentation
go to post Dmitry Maslennikov · Nov 20, 2018 2018.2 version which Preview already released recently, works well with overlay now.
go to post Dmitry Maslennikov · Nov 20, 2018 Fixed, and also changed from DO to JOB, if we do not want to manually restore this task after every run.
go to post Dmitry Maslennikov · Nov 20, 2018 Better to use command JOB INT^SHUTDOWN instead of DO. When you use DO, the task will not be finished and will be marked as suspended, and you will have to resume it manually.
go to post Dmitry Maslennikov · Nov 19, 2018 At this time, it is supported only with Studio. I can easily add support to VSCode, not sure how it will be possible for Eclipse Atelier.
go to post Dmitry Maslennikov · Nov 19, 2018 Just curious is anybody already uses such feature in their work or looking to use?
go to post Dmitry Maslennikov · Nov 19, 2018 I found it many years ago. And last versions contains even much more than just a colorer. The complete parser also available there, but hidden. It would be good if InterSystems will open it to use for everybody. What would be great if InterSystems will make LanguageServer based on this parser?
go to post Dmitry Maslennikov · Nov 16, 2018 The example in the documentation to %XML.Reader, does not work for you? #include %occStatus // Create a new XML Reader class Set reader = ##class(%XML.Reader).%New() // Begin processing of the XML input Set sc=reader.OpenFile(filename) If $$$ISERR(sc) Do $system.OBJ.DisplayError(sc) Quit // Associate a class name with the XML element name Do reader.Correlate("Person","Sample.Person") // read Sample.Person objects from xml file Set Count=0 While reader.Next(.person,.sc) { Write person.Name_" imported.",! Set Count=Count+1 Set sc=person.%Save() If $$$ISERR(sc) Do $system.OBJ.DisplayError(sc) Quit } If $$$ISERR(sc) Do $system.OBJ.DisplayError(sc) Quit Write Count_" Sample.Person instances found."
go to post Dmitry Maslennikov · Nov 16, 2018 ROLLBACK should revert any changes in data which was done in a transaction, with some exceptions like $increment on Global.You can look at this example. Class User.Test Extends %Persistent { Property Name As %String; Property CalcName As %String [ Calculated, SqlComputeCode = { set {*} = {Name} }, SqlComputed, SqlComputeOnChange = Name ]; Index ByName On CalcName; Storage Default { <Data name="TestDefaultData"> <Value name="1"> <Value>%%CLASSNAME</Value> </Value> <Value name="2"> <Value>Name</Value> </Value> </Data> <DataLocation>^User.TestD</DataLocation> <DefaultData>TestDefaultData</DefaultData> <IdLocation>^User.TestD</IdLocation> <IndexLocation>^User.TestI</IndexLocation> <StreamLocation>^User.TestS</StreamLocation> <Type>%Storage.Persistent</Type> } } Let's create first object USER>s o=##class(Test).%New() USER>set o.Name="testname" USER>w o.%Save() 1 check saved in globals USER>zw ^User.TestD,^User.TestI ^User.TestD=1 ^User.TestD(1)=$lb("","testname") ^User.TestI("ByName"," TESTNAME",1)="" and now open transaction, and do some changes. USER>k USER>TSTART TL1:USER>set o=##class(Test).%OpenId(1) TL1:USER>s o.Name="testname2" TL1:USER>w o.%Save() 1 TL1:USER>zw ^User.TestD,^User.TestI ^User.TestD=1 ^User.TestD(1)=$lb("","testname2") ^User.TestI("ByName"," TESTNAME2",1)="" So, changes there, let's do rollback, and check data again. TL1:USER>TROLLBACK USER>zw ^User.TestD,^User.TestI ^User.TestD=1 ^User.TestD(1)=$lb("","testname") ^User.TestI("ByName"," TESTNAME",1)=""