had the same problem for 22 :/ I'm not aware of any big-num library for Iris. Probably because it's not really language used for numerical stuff.
day 18 takes quite long: https://github.com/kazamatzuri/AoC/blob/master/aoc-cos-container/src/cls...
Especially part1, part2 finishes quicker since it's 4 much smaller mazes. I'm still trying to improve it a bit (you have to adjust your memory settings to even work at all, otherwise you're getting errors all over the place)

Interesting, that also blows up. different error though:

docker container run -it -p 51773:51773 -p 52773:52773 -p 5001:5001 -p 5000:5000  --name rcc2 --rm store/intersystems/iris-community:2019.3.0.309.0
[WARNING] No init process detected!  This container may accumulate zombie processes if run for a long time.  Consider using "docker create --init ..." or equivalent.
[INFO] Starting InterSystems IRIS instance IRIS...
[INFO] Starting Control Process
Automatically configuring buffers
Allocated 956MB shared memory: 744MB global buffers, 35MB routine buffers
WIJ directory locked - System not started
Starting IRIS
Startup aborted.
Startup error. See messages.log for more information.
Call InterSystems Technical Support if you need assistance.

[ERROR] sh: echo: I/O error
sh: echo: I/O error

[ERROR] Command "iris start IRIS quietly" exited with status 256
12/01/19-19:24:12:522 (367) 0 [Generic.Event] Automatically configuring buffers
[ERROR] Possible causes:
[ERROR]  - InterSystems IRIS was not installed successfully
[ERROR]  - Invalid InterSystems IRIS instance name
[ERROR]  - Insufficient privilege to start InterSystems IRIS (proc not in InterSystems IRIS group?)
[FATAL] Error starting InterSystems IRIS

The datamodel in COS is such that you have multi-modal access to your data in different ways. Having the ability to access your data via objects (class definitions), SQL (tables), and raw globals is what makes it so powerful. Ultimately the data is always stored in globals. The mapping for the other modes of access are done via class definitions. Class definitions are also transparently mapped to SQL tables. So any time you create a class, a corresponding table is being created and vice-versa. The SQL-concept of "views" is separate from all of this and sits on top. @Robert already pointed out the documentation for storage mapping which actually allows you to customize the relationship between the global structure and a class(/table). This is usually not recommended unless you have legacy data you need to access. The default storage strategy does a very good job to store data effectively.
Note: Just creating a class will not create the global structure just yet, it will only be created once you start putting data in.
Note2: Indices are just additional globals that get added to your class storage.
Note3: If you are having trouble with your indices, it might be a good start to open a WRC issue. They have very good people to help you sort through any issues quickly.

Hi,

please make sure to never pass unchecked client supplied parameters to a query, that is a huge security risk.
For general documentation on how to use filters with tablepane, have a look at : https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

If you have an instance with the SAMPLES namespace, have a look at ZENTest.TableTest.cls for an example on how to do filtering.

Best,
Fabian

There are quite a few different possible causes for this. A 500 error generally indicates a problem of IIS getting any data from the backend. This could be a permissions issue, or a network issue (among others). Without more information it's hard to tell. If you want to debug yourself, you should start by looking at the CSP Gateway logs (CSP.log), possibly increase the gateway log level (in the gateway management page). This will tell you where to go next.

Of you need a quicker solution it would probably help to contact the WRC (https://www.intersystems.com/support-learning/support/), they debug this kind of thing all the time and will be able to sort you out quickly.

Hi Thomas,

sorry for the long wait here, I just noticed this. From what I am reading about the OData specification, it is just a standard further clarifying on how to further structure your REST api beyond the general REST guidelines. (https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=odata)

As such your starting point to implement this would be the Creating REST Services.

While it has been discussed a couple of times, I'm not aware of anyone having done this already.

Best,
Fab