We have been storing raw messages in a MySQL database for DR and ad hoc purposes. We are thinking of using an Ensemble instance as our data lake instead. We could segregate the source data by namespace or by global. But either way we'll want a custom global to index the data for data retrieval performance purposes.

Anyone else taking this approach? Any feedback?

Last answer 29 March 2019 Last comment 29 March 2019
0   0 2
61

views

0

rating

InterSystems is delighted to announce the support of Docker container technology as a platform from the moment 2016.1 will be released.


Docker is a disruptive system technology that has many benefits and offers many advantages for those investing in infrastructure-as-code or immutable-infrastructure provisioning & deployment scenarios.
Like any new technology that appears, there is a learning curve, and many considerations need to occur when using it. However, Docker container technology has already proven to be successful by a huge follow-up with many companies already using it in production. Furthermore & FYI, all public cloud providers already support it.


InterSystems validates and supports its technologies on Docker container engine from v1.8 and above with CentOS, Ubuntu, RedHat and SUSE based containers from the official Docker Hub repository or their respective projects and sites.

Have fun with it

Last comment 29 March 2019
+ 5   0 9
1829

views

+ 5

rating

I want to upload several files using the html tag

< input multiple="multiple" name="BulkFileUpload" type="file">

. The upload.csp page in the SAMPLE namespace only shows how to extract a single file from the MimeData on the %request object. I cannot fathom how to extract multiple files from the MimeData in the %request object in cache. Can some kind soul explain to me how to do that?

Last answer 29 March 2019 Last comment 29 March 2019
0   0 2
48

views

0

rating

Hope someone can help me,  so i was developing a script and during the tests I was using the csession to execute a method. Also i thought i had to stop the instance i was using, so I used the ccontrol stop [instanceName] to stop the instance, but when i restarted the instance i got this error trying to start my production, I have an idea of what's the problem but i don't know how to fix it.

ERRO <Ens>ErrException: <FILEFULL>zStartProduction+62^Ens.Director.1 ^Ens.Runtime("Name"),/hs-connect-hom/db/BPINTEGRADEV-GLB/ -- - registrado no log como '-' número - @' Set ^Ens.Runtime("Name")=pProductionName'
Last answer 29 March 2019 Last comment 29 March 2019
0   0 3
56

views

0

rating

ObjectScript has at least three ways of handling errors (status codes, exceptions, SQLCODE, etc.). Most of the system code uses statuses but exceptions are easier to handle for a number of reasons. Working with legacy code you spend some time translating between the different techniques. I use these snippets a lot for reference. Hopefully they're useful to others as well.

Last comment 29 March 2019
+ 11   7 3
200

views

+ 11

rating

First time post, also a new Cache developer, hence the <Beginner> tag.

If our data has Predefined terms in a dictionary, and a user can add terms on their own, can the terms exist in different tables?

Lets call the tables "Terms" and the user data in "UserTerms".

If a third class definition has a property of "Term" can it not be either Terms or UserTerms?

I'm leaning towards using a Subclass strategy where the pseudo "Parent" (forgive me) is  Dictionary.Term and the child is along the lines of Dictionary.Term.User

Dictionary.Term.User can inherit from Dictionary.Term and this is stated in the Docs "If class B inherits from class A, you can use an instance of class B in any location where you can use an instance of class A."

This applies to properties of a class correct? Not just methods

Last answer 26 March 2019 Last comment 28 March 2019
0   0 3
76

views

0

rating

Hi Everyone!

Please meet InterSystems at hub.berlin - Europe's interactive business festival for digital movers and makers on 10 - 11 April 2019 in Berlin.

We look forward to two-day inspirational lectures and intensive technical discussions and invite you and your colleagues to our InterSystems booth for a personal conversation. In addition, we'll also present a keynote presentation and host a masterclass session.

 

See the details below.

0   0 1
0

comments

77

views

0

rating

InterSystems Caché globals provide very convenient features for developers. But why are globals so fast and efficient?

Theory

Basically, the Caché database is a catalog having the same name as the database and containing the CACHE.DAT file. On Unix systems, the database can also be an ordinary disk partition

Last comment 27 March 2019
+ 8   3 9
2399

views

+ 8

rating

Hi Community!

Please welcome a new video on Developer Community YouTube Channel:

Getting Sharded with InterSystems IRIS

 

0   0 1
0

comments

37

views

0

rating

Hi, 

We recently moved our cache instance from windows 2012 to windows 2016 and when i try to now import % routines  i'm getting the following error  "Unable to obtain a write lock on this routine because either another user has the routine open for editing or you do not have write access to the database the routine is stored in. This item will be skipped."

 

This is a fresh installation of cache and I've moved the cache.dat and csp pages across. It seems to work fine but can't import % routines which I need. 

Has anyone experienced this and can help? 

Thanks

Last answer 26 March 2019 Last comment 27 March 2019
0   0 2
41

views

0

rating

Hi dev community,

I am currently working on a project to send documents to a RESTful based API that supports bearer 
Token Authorization.

When we try to fire a JSON request from our EnsLib.Rest.Operation towards the 3rd party API with a 
valid Token we keep receiving Authorization Error codes HTTP 401 back.

If we use the same request and same Token from a test utility such as Postman the request is 
successful and we are able to move past the authorization stage.

We are inputting the Token in the header of the HTTP request as specified by the 3rd party API 
specification. We therefore are using the following code from the operation side, being tHttpRequest%Net.HttpRequest  object

Last answer 21 February 2019 Last comment 27 March 2019
0   2 3
196

views

0

rating

Hello,

We have defined four BPL Business Processes. One gets occasionally errors when pool size is two. No errors happen with pool size one. The error happens on calling %Save() on a large objects with many references to other objects.

Error #5803: Failed to acquire exclusive lock on instance of 'classname'.

Error #5002: Cache error: <ROLLFAIL> %TRollBack+10^%occTransaction

The error happens on a particular large object.

Our FileService gets the same Errors #5803 and #5002 with class 'EnsLib.EDI.X12.Document'

Another BPL gets the same errors #5803 and #5002 with lock on instance of 'EDIGW.BPL.ST837.Context

Any explanation or suggestion are welcome.

Last answer 30 January 2019 Last comment 27 March 2019
0   0 2
128

views

0

rating

Let's say we have a class 

AbcRequest extends Ens.Request, PropertiesBaseAbstractClass(has all my properties common to all request)

Prop1

Prop2 and so on

 

Now in my Business Operation 

I want to make a json dynamically from this request.

Yes obviously I can do is

 

Set requestDefinition = ##class(%Library.CompiledClass).%OpenId("MyCreateRequest")
Set JsonObject    = ##class(%DynamicObject).%New()        

        for i=1:1:requestDefinition.Properties.Count() {  
            Set key            = requestDefinition.Properties.GetAt(i).Name
            Set value        = $property(pRequest,requestDefinition.Properties.GetAt(i).Name)
            Set JsonObject.key = value
          
        }
        Set requestString        = JsonObject.%ToJSON()

This makes a json {"key":""}

 

 

 

 

Last answer 26 March 2019 Last comment 26 March 2019
0   0 3
52

views

0

rating

Good morning

I'm probably overlooking something very basic, but I'm running on Win2016 with Cache  2016.2 - All the work I am doing is in INT routines, but I'm making some calls to the Host File system using $ZF(-1).

I have a few mapped Network drives that are mapped in Windows, typically these are locations where I want to back up some files.

My process is quite simple:

1. Read data

2. Zip data files using RAR

3. Create folder on Network drive

4. Move RAR files to new network share.

I've tried a few different commands:

S LOC="G:\RAN\Backup1\",CMD="MD "_LOC,X=$ZF(-1,CMD)

S LOC="\\data1\data\RAN\Backup1\",CMD="MD "_LOC,X=$ZF(-1,CMD)

I'm unsure if its a limitation of Cache to do this sort of thing, or if I should created a BAT file and then kick off a Windows call to run the BAT file

Last answer 26 March 2019 Last comment 26 March 2019
+ 1   1 4
83

views

+ 1

rating

 

We're moving an Ensemble production from Ensemble 2010 to Ensemble 2017 and in it we have a ebXML SOAP Service.  It extends EnsLib.ebXML.Service.SOAPService and just contains one method with a method keyword of SoapAction = ebXML.

We're receiving a SOAP message with a SOAP action = urn:nhs:names:services:pdsquery/QUPA_IN000011UK02 and this is getting rejected with the error message ERROR #6207: Unexpected SOAPACTION value: urn:nhs:names:services:pdsquery/QUPA_IN000011UK0

0   0 1
0

answers

0

comments

24

views

0

rating

Hi Community

I have created a simple package that allows the use of Cache with the Laravel Framework.

From my initial testing everything seems to be operating smoothly but I would like to appeal to the PHP users in the community to help me improve this package.

For those of you out there who have time and would be interested in this, please visit the repo at https://github.com/jeandormehl/laracache

Thanks in advance

Last comment 25 March 2019
+ 4   2 3
183

views

+ 4

rating

I have an application using examples from the lottery example in samples name space how do I create a dynamically link based on the data displayed to add a record id to the link

the idea is to loop over the records displays fields and link to edit the shown data at the end of the record in a table format

Last answer 25 March 2019
0   0 2
0

comments

49

views

0

rating

Hi Community!

Please welcome a new video on Developer Community YouTube Channel:

Fast Provisioning in Any Cloud

 

0   0 1
0

comments

42

views

0

rating

Hi

We have just completed a migration of a test environment from Ensemble 2012 to Ensemble 2017 on a new server. This is the last in a series of migrations but the first to encounter this particular issue. All web clients making SOAP requests to a particular external web service are receiving a fault that states:

The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://<expected target service action follows here>'.

Further investigation using ^ISCSOAP and a comparison with other working environments reveals that the SOAP request is completely missing the <SOAP-ENV:Header> element.

This absence of a SOAP header occurs for multiple Operations in more than one Namespace for this newly migrated server, yet it is present in every other environment, all of which use the same source code.

So, is there a single installation-wide setting that could be causing this behaviour

Last answer 22 March 2019
0   0 1
0

comments

41

views

0

rating

We would like to know if there are any ramifications swapping out our code database while an Ensemble production is running. We are trying to minimize down time as much as possible and even though stopping and starting the production ideally would be pretty quick, is it possible that we could just restart the business hosts that had the code change?

So this is our setup:
Ensemble 2016.1

global cache.dat
code1 cache.dat
code2 cache.dat

Namespace that we switch to point to either code1 or code2 and is mapped to the globals.

Has anyone done this? We are hesitant to do this and we also know we could try this out in our non prod environments but any user feedback would be very helpful.

Last answer 21 March 2019
0   0 3
0

comments

61

views

0

rating

I've seen a few password change posts, but I wasn't 100% sure it was the same process, so I am asking here. We periodically have to change the passwords for a few Cache user accounts across several servers. Is there a process/script to change these passwords without having to go into the web portal on each server?  Thanks so much, and I apologize if this was covered in some of the other articles that I've run across. Just looking for the best method.

Last answer 20 March 2019 Last comment 21 March 2019
0   0 2
75

views

0

rating

I am having an intermittent issue that when I make a call to MSSQL from a BPL that the response does not come back in the amount of time required. Since the call from the BPL is synchronous I tried changing the timeout to 60 but it has not helped (see below). Is there anyway to guarantee that the call waits long enough for a response before continuing on?

 

Thanks

Scott Roth

Last answer 20 March 2019 Last comment 21 March 2019
0   0 3
62

views

0

rating